mirror of
https://github.com/nasa/openmct.git
synced 2025-05-20 17:33:33 +00:00
Fixed more failing tests
This commit is contained in:
parent
4312857fd4
commit
2f90a89065
@ -96,12 +96,15 @@ define(
|
|||||||
delete modelClone.model.composition;
|
delete modelClone.model.composition;
|
||||||
delete modelClone.model.location;
|
delete modelClone.model.location;
|
||||||
return $q.when(originalObject.useCapability('composition')).then(function(composees){
|
return $q.when(originalObject.useCapability('composition')).then(function(composees){
|
||||||
|
console.log("composees: " + composees);
|
||||||
return (composees || []).reduce(function(promise, composee){
|
return (composees || []).reduce(function(promise, composee){
|
||||||
|
console.log("inside reduce");
|
||||||
//If the object is composed of other
|
//If the object is composed of other
|
||||||
// objects, chain a promise..
|
// objects, chain a promise..
|
||||||
return promise.then(function(){
|
return promise.then(function(){
|
||||||
// ...to recursively copy it (and its children)
|
// ...to recursively copy it (and its children)
|
||||||
return copy(composee, originalObject).then(function(composeeClone){
|
return copy(composee, originalObject).then(function(composeeClone){
|
||||||
|
console.log("Composing clone");
|
||||||
//Once copied, associate each cloned
|
//Once copied, associate each cloned
|
||||||
// composee with its parent clone
|
// composee with its parent clone
|
||||||
composeeClone.model.location = modelClone.id;
|
composeeClone.model.location = modelClone.id;
|
||||||
@ -110,6 +113,7 @@ define(
|
|||||||
});
|
});
|
||||||
});}, $q.when(undefined)
|
});}, $q.when(undefined)
|
||||||
).then(function (){
|
).then(function (){
|
||||||
|
console.log("Adding clone to list");
|
||||||
//Add the clone to the list of clones that will
|
//Add the clone to the list of clones that will
|
||||||
//be returned by this function
|
//be returned by this function
|
||||||
clones.push(modelClone);
|
clones.push(modelClone);
|
||||||
@ -118,6 +122,7 @@ define(
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
return copy(domainObject, parent).then(function(){
|
return copy(domainObject, parent).then(function(){
|
||||||
|
console.log("Done cloning, returning");
|
||||||
return clones;
|
return clones;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -135,6 +140,7 @@ define(
|
|||||||
var persisted = 0,
|
var persisted = 0,
|
||||||
self = this;
|
self = this;
|
||||||
return function(objectClones) {
|
return function(objectClones) {
|
||||||
|
console.log("Persisting " + objectClones.length + " clones");
|
||||||
return self.$q.all(objectClones.map(function(clone, index){
|
return self.$q.all(objectClones.map(function(clone, index){
|
||||||
return self.persistenceService.createObject(clone.persistenceSpace, clone.id, clone.model)
|
return self.persistenceService.createObject(clone.persistenceSpace, clone.id, clone.model)
|
||||||
.then(function(){
|
.then(function(){
|
||||||
|
@ -134,7 +134,8 @@ define(
|
|||||||
newParent,
|
newParent,
|
||||||
copyResult,
|
copyResult,
|
||||||
copyFinished,
|
copyFinished,
|
||||||
persistObjectPromise;
|
persistObjectPromise,
|
||||||
|
persistenceCapability;
|
||||||
|
|
||||||
beforeEach(function () {
|
beforeEach(function () {
|
||||||
creationService = jasmine.createSpyObj(
|
creationService = jasmine.createSpyObj(
|
||||||
@ -152,6 +153,15 @@ define(
|
|||||||
persistObjectPromise = synchronousPromise(undefined);
|
persistObjectPromise = synchronousPromise(undefined);
|
||||||
mockPersistenceService.createObject.andReturn(persistObjectPromise);
|
mockPersistenceService.createObject.andReturn(persistObjectPromise);
|
||||||
mockPersistenceService.updateObject.andReturn(persistObjectPromise);
|
mockPersistenceService.updateObject.andReturn(persistObjectPromise);
|
||||||
|
|
||||||
|
persistenceCapability = jasmine.createSpyObj(
|
||||||
|
"persistence",
|
||||||
|
[ "persist", "getSpace" ]
|
||||||
|
);
|
||||||
|
|
||||||
|
persistenceCapability.persist.andReturn(persistObjectPromise);
|
||||||
|
persistenceCapability.getSpace.andReturn("testSpace");
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("on domain object without composition", function () {
|
describe("on domain object without composition", function () {
|
||||||
@ -168,11 +178,13 @@ define(
|
|||||||
id: '456',
|
id: '456',
|
||||||
model: {
|
model: {
|
||||||
composition: []
|
composition: []
|
||||||
|
},
|
||||||
|
capabilities: {
|
||||||
|
persistence: persistenceCapability
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
mockQ = jasmine.createSpyObj('mockQ', ['when', 'all', 'reject']);
|
mockQ = jasmine.createSpyObj('mockQ', ['when', 'all', 'reject']);
|
||||||
mockQ.when.andCallFake(synchronousPromise);
|
mockQ.when.andCallFake(synchronousPromise);
|
||||||
//mockQ.all.andCallFake(synchronousPromise);
|
|
||||||
mockQ.all.andCallFake(function (promises) {
|
mockQ.all.andCallFake(function (promises) {
|
||||||
var result = {};
|
var result = {};
|
||||||
Object.keys(promises).forEach(function (k) {
|
Object.keys(promises).forEach(function (k) {
|
||||||
@ -180,7 +192,7 @@ define(
|
|||||||
});
|
});
|
||||||
return synchronousPromise(result);
|
return synchronousPromise(result);
|
||||||
});
|
});
|
||||||
|
|
||||||
copyService = new CopyService(mockQ, creationService, policyService, mockPersistenceService);
|
copyService = new CopyService(mockQ, creationService, policyService, mockPersistenceService);
|
||||||
copyResult = copyService.perform(object, newParent);
|
copyResult = copyService.perform(object, newParent);
|
||||||
copyFinished = jasmine.createSpy('copyFinished');
|
copyFinished = jasmine.createSpy('copyFinished');
|
||||||
@ -198,6 +210,14 @@ define(
|
|||||||
.toHaveBeenCalledWith(jasmine.any(Function));
|
.toHaveBeenCalledWith(jasmine.any(Function));
|
||||||
});*/
|
});*/
|
||||||
|
|
||||||
|
it("uses persistence service", function () {
|
||||||
|
expect(mockPersistenceService.createObject)
|
||||||
|
.toHaveBeenCalledWith(persistenceCapability, jasmine.any(String), object.getModel());
|
||||||
|
|
||||||
|
expect(persistObjectPromise.then)
|
||||||
|
.toHaveBeenCalledWith(jasmine.any(Function));
|
||||||
|
});
|
||||||
|
|
||||||
it("deep clones object model", function () {
|
it("deep clones object model", function () {
|
||||||
//var newModel = creationService
|
//var newModel = creationService
|
||||||
var newModel = mockPersistenceService
|
var newModel = mockPersistenceService
|
||||||
@ -223,7 +243,7 @@ define(
|
|||||||
|
|
||||||
beforeEach(function () {
|
beforeEach(function () {
|
||||||
mockQ = jasmine.createSpyObj('mockQ', ['when', 'all', 'reject']);
|
mockQ = jasmine.createSpyObj('mockQ', ['when', 'all', 'reject']);
|
||||||
mockQ.when.andCallFake(synchronousPromise);
|
//mockQ.when.andCallFake(synchronousPromise);
|
||||||
mockQ.all.andCallFake(function (promises) {
|
mockQ.all.andCallFake(function (promises) {
|
||||||
var result = {};
|
var result = {};
|
||||||
Object.keys(promises).forEach(function (k) {
|
Object.keys(promises).forEach(function (k) {
|
||||||
@ -248,7 +268,7 @@ define(
|
|||||||
['then']
|
['then']
|
||||||
);
|
);
|
||||||
|
|
||||||
compositionPromise.then.andCallFake(synchronousPromise);
|
//compositionPromise.then.andCallFake(synchronousPromise);
|
||||||
|
|
||||||
compositionCapability
|
compositionCapability
|
||||||
.invoke
|
.invoke
|
||||||
@ -287,8 +307,12 @@ define(
|
|||||||
createObjectPromise = synchronousPromise(newObject);
|
createObjectPromise = synchronousPromise(newObject);
|
||||||
creationService.createObject.andReturn(createObjectPromise);
|
creationService.createObject.andReturn(createObjectPromise);
|
||||||
copyService = new CopyService(mockQ, creationService, policyService);
|
copyService = new CopyService(mockQ, creationService, policyService);
|
||||||
|
console.log("Before perform");
|
||||||
|
compositionPromise.then.andReturn(synchronousPromise([childObject]));
|
||||||
|
mockQ.when.andReturn(compositionPromise);
|
||||||
copyResult = copyService.perform(object, newParent);
|
copyResult = copyService.perform(object, newParent);
|
||||||
compositionPromise.then.mostRecentCall.args[0]([childObject]);
|
console.log("After perform");
|
||||||
|
//compositionPromise.then.mostRecentCall.args[0]([childObject]);
|
||||||
copyFinished = jasmine.createSpy('copyFinished');
|
copyFinished = jasmine.createSpy('copyFinished');
|
||||||
copyResult.then(copyFinished);
|
copyResult.then(copyFinished);
|
||||||
});
|
});
|
||||||
@ -307,7 +331,7 @@ define(
|
|||||||
|
|
||||||
it("uses persistence service", function () {
|
it("uses persistence service", function () {
|
||||||
expect(mockPersistenceService.createObject)
|
expect(mockPersistenceService.createObject)
|
||||||
.toHaveBeenCalledWith(jasmine.any(Object), jasmine.any(String), newParent);
|
.toHaveBeenCalledWith(persistenceCapability, jasmine.any(String), newParent);
|
||||||
|
|
||||||
expect(createObjectPromise.then)
|
expect(createObjectPromise.then)
|
||||||
.toHaveBeenCalledWith(jasmine.any(Function));
|
.toHaveBeenCalledWith(jasmine.any(Function));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user