Update test specs to use Jasmine 3 (#2089)

* Updated Karma and Jasmine versions

* Added DOMObserver class. Supports promise-based testing of DOM changes

Update asynchronous test specs to use promises or done() instead of waitsFor/runs

* Modified ActionCapability to duplicate context object properties as own properties for better object equality comparisons

* Global find + replace to fix syntax issues

* Fixed various issues caused by non-deterministic runtime order of tests in Jasmine 3. Fixed issues caused by changes to determination of object equality

* Addressed review comments

* Resolved merge conflicts with master

* Fixed style errors

* Use spy.calls.count() instead of manually tracking
This commit is contained in:
Andrew Henry
2018-06-29 17:32:59 -07:00
committed by Pete Richards
parent 013eba744d
commit 433dee0314
305 changed files with 2866 additions and 3324 deletions

View File

@@ -44,15 +44,15 @@ define(
'getCapability',
'getId'
]);
mockParent.hasCapability.andReturn(true);
mockParent.getId.andReturn('someNamespace:someId');
mockParent.hasCapability.and.returnValue(true);
mockParent.getId.and.returnValue('someNamespace:someId');
mockChild = {};
mockEditorCapability = jasmine.createSpyObj('domainObject', [
'isEditContextRoot'
]);
mockParent.getCapability.andReturn(mockEditorCapability);
mockParent.getCapability.and.returnValue(mockEditorCapability);
objectAPI.getProvider.andReturn({
objectAPI.getProvider.and.returnValue({
save: function () {}
});
persistableCompositionPolicy = new PersistableCompositionPolicy(mockOpenMCT);
@@ -64,18 +64,18 @@ define(
// - openMct.objects.getProvider
it("Does not allow composition for objects that are not persistable", function () {
mockEditorCapability.isEditContextRoot.andReturn(false);
mockEditorCapability.isEditContextRoot.and.returnValue(false);
expect(persistableCompositionPolicy.allow(mockParent, mockChild)).toBe(true);
objectAPI.getProvider.andReturn({});
objectAPI.getProvider.and.returnValue({});
expect(persistableCompositionPolicy.allow(mockParent, mockChild)).toBe(false);
});
it("Always allows composition of objects in edit mode to support object creation", function () {
mockEditorCapability.isEditContextRoot.andReturn(true);
mockEditorCapability.isEditContextRoot.and.returnValue(true);
expect(persistableCompositionPolicy.allow(mockParent, mockChild)).toBe(true);
expect(objectAPI.getProvider).not.toHaveBeenCalled();
mockEditorCapability.isEditContextRoot.andReturn(false);
mockEditorCapability.isEditContextRoot.and.returnValue(false);
expect(persistableCompositionPolicy.allow(mockParent, mockChild)).toBe(true);
expect(objectAPI.getProvider).toHaveBeenCalled();
});