File size: 837 Bytes
87b3b3a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
describe("Engine", function() {
	var RESULT = 0;
	var E = null;
	var A50 = {getSpeed: function() { return 50; }, act: function() { RESULT++; } };
	var A70 = {getSpeed: function() { return 70; }, act: function() { RESULT++; E.addActor(A100); } };
	var A100 = {getSpeed: function() { return 100; }, act: function() { E.lock(); } };

	beforeEach(function() {
		RESULT = 0;
		E = new ROT.Engine();
	});

	it("should stop when locked", function() {
		E.addActor(A50);
		E.addActor(A100);

		E.start();
		expect(RESULT).toEqual(0);
	});

	it("should run until locked", function() {
		E.addActor(A50);
		E.addActor(A70);
		E.start();
		expect(RESULT).toEqual(2);
	});

	it("should run only when unlocked", function() {
		E.addActor(A70);
		E.lock();
		E.start();
		expect(RESULT).toEqual(0);
		E.start();
		expect(RESULT).toEqual(1);
	});

});