mirror of
https://github.com/nasa/openmct.git
synced 2025-06-16 06:08:11 +00:00
[Drag-Drop] Add test cases
Add test cases for avoiding redundant drop handling, WTD-1233.
This commit is contained in:
@ -253,6 +253,7 @@ define(
|
|||||||
if (e.isDefaultPrevented()) {
|
if (e.isDefaultPrevented()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
e.preventDefault();
|
||||||
// Store the position of this element.
|
// Store the position of this element.
|
||||||
addElement({
|
addElement({
|
||||||
type: "fixed.telemetry",
|
type: "fixed.telemetry",
|
||||||
|
@ -34,6 +34,7 @@ define(
|
|||||||
mockFormatter,
|
mockFormatter,
|
||||||
mockDomainObject,
|
mockDomainObject,
|
||||||
mockSubscription,
|
mockSubscription,
|
||||||
|
mockEvent,
|
||||||
testGrid,
|
testGrid,
|
||||||
testModel,
|
testModel,
|
||||||
testValues,
|
testValues,
|
||||||
@ -98,6 +99,10 @@ define(
|
|||||||
'subscription',
|
'subscription',
|
||||||
[ 'unsubscribe', 'getTelemetryObjects', 'getRangeValue' ]
|
[ 'unsubscribe', 'getTelemetryObjects', 'getRangeValue' ]
|
||||||
);
|
);
|
||||||
|
mockEvent = jasmine.createSpyObj(
|
||||||
|
'event',
|
||||||
|
[ 'preventDefault', 'isDefaultPrevented' ]
|
||||||
|
);
|
||||||
|
|
||||||
testGrid = [ 123, 456 ];
|
testGrid = [ 123, 456 ];
|
||||||
testModel = {
|
testModel = {
|
||||||
@ -302,7 +307,7 @@ define(
|
|||||||
// Notify that a drop occurred
|
// Notify that a drop occurred
|
||||||
testModel.composition.push('d');
|
testModel.composition.push('d');
|
||||||
findOn('mctDrop')(
|
findOn('mctDrop')(
|
||||||
{},
|
mockEvent,
|
||||||
'd',
|
'd',
|
||||||
{ x: 300, y: 100 }
|
{ x: 300, y: 100 }
|
||||||
);
|
);
|
||||||
@ -310,12 +315,31 @@ define(
|
|||||||
// Should have added an element
|
// Should have added an element
|
||||||
expect(testConfiguration.elements.length).toEqual(4);
|
expect(testConfiguration.elements.length).toEqual(4);
|
||||||
|
|
||||||
|
// ...and prevented default...
|
||||||
|
expect(mockEvent.preventDefault).toHaveBeenCalled();
|
||||||
|
|
||||||
// Should have triggered commit (provided by
|
// Should have triggered commit (provided by
|
||||||
// EditRepresenter) with some message.
|
// EditRepresenter) with some message.
|
||||||
expect(mockScope.commit)
|
expect(mockScope.commit)
|
||||||
.toHaveBeenCalledWith(jasmine.any(String));
|
.toHaveBeenCalledWith(jasmine.any(String));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("ignores drops when default has been prevented", function () {
|
||||||
|
// Avoids redundant drop-handling, WTD-1233
|
||||||
|
mockEvent.isDefaultPrevented.andReturn(true);
|
||||||
|
|
||||||
|
// Notify that a drop occurred
|
||||||
|
testModel.composition.push('d');
|
||||||
|
findOn('mctDrop')(
|
||||||
|
mockEvent,
|
||||||
|
'd',
|
||||||
|
{ x: 300, y: 100 }
|
||||||
|
);
|
||||||
|
|
||||||
|
// Should NOT have added an element
|
||||||
|
expect(testConfiguration.elements.length).toEqual(3);
|
||||||
|
});
|
||||||
|
|
||||||
it("unsubscribes when destroyed", function () {
|
it("unsubscribes when destroyed", function () {
|
||||||
// Make an object available
|
// Make an object available
|
||||||
findWatch('domainObject')(mockDomainObject);
|
findWatch('domainObject')(mockDomainObject);
|
||||||
|
@ -28,6 +28,7 @@ define(
|
|||||||
|
|
||||||
describe("The Layout controller", function () {
|
describe("The Layout controller", function () {
|
||||||
var mockScope,
|
var mockScope,
|
||||||
|
mockEvent,
|
||||||
testModel,
|
testModel,
|
||||||
testConfiguration,
|
testConfiguration,
|
||||||
controller;
|
controller;
|
||||||
@ -37,6 +38,10 @@ define(
|
|||||||
"$scope",
|
"$scope",
|
||||||
[ "$watch", "$on", "commit" ]
|
[ "$watch", "$on", "commit" ]
|
||||||
);
|
);
|
||||||
|
mockEvent = jasmine.createSpyObj(
|
||||||
|
'event',
|
||||||
|
[ 'preventDefault', 'isDefaultPrevented' ]
|
||||||
|
);
|
||||||
|
|
||||||
testModel = {
|
testModel = {
|
||||||
composition: [ "a", "b", "c" ]
|
composition: [ "a", "b", "c" ]
|
||||||
@ -144,17 +149,32 @@ define(
|
|||||||
// Notify that a drop occurred
|
// Notify that a drop occurred
|
||||||
testModel.composition.push('d');
|
testModel.composition.push('d');
|
||||||
mockScope.$on.mostRecentCall.args[1](
|
mockScope.$on.mostRecentCall.args[1](
|
||||||
{},
|
mockEvent,
|
||||||
'd',
|
'd',
|
||||||
{ x: 300, y: 100 }
|
{ x: 300, y: 100 }
|
||||||
);
|
);
|
||||||
expect(testConfiguration.panels.d).toBeDefined();
|
expect(testConfiguration.panels.d).toBeDefined();
|
||||||
|
expect(mockEvent.preventDefault).toHaveBeenCalled();
|
||||||
|
|
||||||
// Should have triggered commit (provided by
|
// Should have triggered commit (provided by
|
||||||
// EditRepresenter) with some message.
|
// EditRepresenter) with some message.
|
||||||
expect(mockScope.commit)
|
expect(mockScope.commit)
|
||||||
.toHaveBeenCalledWith(jasmine.any(String));
|
.toHaveBeenCalledWith(jasmine.any(String));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("ignores drops when default has been prevented", function () {
|
||||||
|
// Avoids redundant drop-handling, WTD-1233
|
||||||
|
mockEvent.isDefaultPrevented.andReturn(true);
|
||||||
|
|
||||||
|
// Notify that a drop occurred
|
||||||
|
testModel.composition.push('d');
|
||||||
|
mockScope.$on.mostRecentCall.args[1](
|
||||||
|
mockEvent,
|
||||||
|
'd',
|
||||||
|
{ x: 300, y: 100 }
|
||||||
|
);
|
||||||
|
expect(testConfiguration.panels.d).not.toBeDefined();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
);
|
);
|
Reference in New Issue
Block a user