[Common UI] Complete remaining specs
Complete remaining specs to achieve full test coverage for common user interface bundles being transitioned as part of WTD-574.
This commit is contained in:
@@ -5,10 +5,53 @@
|
|||||||
*/
|
*/
|
||||||
define(
|
define(
|
||||||
["../../src/navigation/NavigationService"],
|
["../../src/navigation/NavigationService"],
|
||||||
function (NavigateAction) {
|
function (NavigationService) {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
describe("The navigation service", function () {
|
describe("The navigation service", function () {
|
||||||
|
var navigationService;
|
||||||
|
|
||||||
|
beforeEach(function () {
|
||||||
|
navigationService = new NavigationService();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("stores navigation state", function () {
|
||||||
|
var testObject = { someKey: 42 },
|
||||||
|
otherObject = { someKey: "some value" };
|
||||||
|
expect(navigationService.getNavigation())
|
||||||
|
.toBeUndefined();
|
||||||
|
navigationService.setNavigation(testObject);
|
||||||
|
expect(navigationService.getNavigation())
|
||||||
|
.toBe(testObject);
|
||||||
|
expect(navigationService.getNavigation())
|
||||||
|
.toBe(testObject);
|
||||||
|
navigationService.setNavigation(otherObject);
|
||||||
|
expect(navigationService.getNavigation())
|
||||||
|
.toBe(otherObject);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("notifies listeners on change", function () {
|
||||||
|
var testObject = { someKey: 42 },
|
||||||
|
callback = jasmine.createSpy("callback");
|
||||||
|
|
||||||
|
navigationService.addListener(callback);
|
||||||
|
expect(callback).not.toHaveBeenCalled();
|
||||||
|
|
||||||
|
navigationService.setNavigation(testObject);
|
||||||
|
expect(callback).toHaveBeenCalledWith(testObject);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("stops notifying listeners after removal", function () {
|
||||||
|
var testObject = { someKey: 42 },
|
||||||
|
callback = jasmine.createSpy("callback");
|
||||||
|
|
||||||
|
navigationService.addListener(callback);
|
||||||
|
navigationService.removeListener(callback);
|
||||||
|
|
||||||
|
|
||||||
|
navigationService.setNavigation(testObject);
|
||||||
|
expect(callback).not.toHaveBeenCalled();
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/*global define,Promise,describe,it,expect,beforeEach,waitsFor,jasmine*/
|
/*global define,Promise,describe,it,expect,beforeEach,waitsFor,jasmine,afterEach,screenfull*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* MCTRepresentationSpec. Created by vwoeltje on 11/6/14.
|
* MCTRepresentationSpec. Created by vwoeltje on 11/6/14.
|
||||||
@@ -9,6 +9,31 @@ define(
|
|||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
describe("The fullscreen action", function () {
|
describe("The fullscreen action", function () {
|
||||||
|
var action,
|
||||||
|
oldToggle;
|
||||||
|
|
||||||
|
beforeEach(function () {
|
||||||
|
// Screenfull is not shimmed or injected, so
|
||||||
|
// we need to spy on it in the global scope.
|
||||||
|
oldToggle = screenfull.toggle;
|
||||||
|
|
||||||
|
screenfull.toggle = jasmine.createSpy("toggle");
|
||||||
|
|
||||||
|
action = new FullscreenAction({});
|
||||||
|
});
|
||||||
|
|
||||||
|
afterEach(function () {
|
||||||
|
screenfull.toggle = oldToggle;
|
||||||
|
});
|
||||||
|
|
||||||
|
it("toggles fullscreen mode when performed", function () {
|
||||||
|
action.perform();
|
||||||
|
expect(screenfull.toggle).toHaveBeenCalled();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("provides displayable metadata", function () {
|
||||||
|
expect(action.getMetadata().glyph).toBeDefined();
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user