unit testing for events
This commit is contained in:
43
mindplot/src/test/javascript/EventsTestSuite.js
Normal file
43
mindplot/src/test/javascript/EventsTestSuite.js
Normal file
@@ -0,0 +1,43 @@
|
||||
var TestClass = new Class({
|
||||
Extends: mindplot.Events,
|
||||
|
||||
getEvents: function() {
|
||||
return this.$events;
|
||||
},
|
||||
|
||||
removeEvents: function() {
|
||||
this.$events = {};
|
||||
}
|
||||
});
|
||||
|
||||
// Test class and variables
|
||||
var expectedChangeFn1 = function () {return 'change1';};
|
||||
var expectedChangeFn2 = function () {return 'change2';};
|
||||
var expectedLoadFn = function() {return 'loaded';};
|
||||
var myTestClass = new TestClass();
|
||||
|
||||
|
||||
describe("Events class suite", function() {
|
||||
|
||||
afterEach(function() {
|
||||
myTestClass.removeEvents();
|
||||
});
|
||||
|
||||
it("addEventTest", function() {
|
||||
expect(myTestClass.getEvents()).toEqual({});
|
||||
myTestClass.addEvent('change', expectedChangeFn1);
|
||||
expect(myTestClass.getEvents()).toEqual({change: [expectedChangeFn1]});
|
||||
myTestClass.addEvent('change', expectedChangeFn2);
|
||||
expect(myTestClass.getEvents()).toEqual({change: [expectedChangeFn1, expectedChangeFn2]});
|
||||
myTestClass.addEvent('load', expectedLoadFn);
|
||||
expect(myTestClass.getEvents()).toEqual({change: [expectedChangeFn1, expectedChangeFn2], load: [expectedLoadFn]});
|
||||
});
|
||||
it("removeEventTest", function() {
|
||||
expect(myTestClass.getEvents()).toEqual({});
|
||||
myTestClass.addEvent('change', expectedChangeFn1);
|
||||
myTestClass.addEvent('change', expectedChangeFn2);
|
||||
expect(myTestClass.getEvents()).toEqual({change: [expectedChangeFn1, expectedChangeFn2]});
|
||||
myTestClass.removeEvent('change', expectedChangeFn1);
|
||||
expect(myTestClass.getEvents()).toEqual({change: [expectedChangeFn2]});
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user