Home page Forum Wiki Mail Jabber Devel NIX-FILES

AltLUG Git

Git-repositories of Altai Linux User Group

In autorun mode, moduleDone is called without matching moduleStart. Fix issue #184
[qunit.git] / test / logs.js
1 // TODO disable reordering for this suite!
2
3
4 var begin = 0,
5         moduleStart = 0,
6         moduleDone = 0,
7         testStart = 0,
8         testDone = 0,
9         log = 0,
10         moduleContext,
11         moduleDoneContext,
12         testContext,
13         testDoneContext,
14         logContext;
15
16 QUnit.begin(function() {
17         begin++;
18 });
19 QUnit.done(function() {
20 });
21 QUnit.moduleStart(function(context) {
22         moduleStart++;
23         moduleContext = context;
24 });
25 QUnit.moduleDone(function(context) {
26         moduleDone++;
27         moduleDoneContext = context;
28 });
29 QUnit.testStart(function(context) {
30         testStart++;
31         testContext = context;
32 });
33 QUnit.testDone(function(context) {
34         testDone++;
35         testDoneContext = context;
36 });
37 QUnit.log(function(context) {
38         log++;
39         logContext = context;
40 });
41
42 var logs = ["begin", "testStart", "testDone", "log", "moduleStart", "moduleDone", "done"];
43 for (var i = 0; i < logs.length; i++) {
44         (function() {
45                 var log = logs[i];
46                 QUnit[log](function() {
47                         console.log(log, arguments);
48                 });
49         })();
50 }
51
52 module("logs1");
53
54 test("test1", 13, function() {
55         equal(begin, 1);
56         equal(moduleStart, 1);
57         equal(testStart, 1);
58         equal(testDone, 0);
59         equal(moduleDone, 0);
60
61         deepEqual(logContext, {
62                 result: true,
63                 message: undefined,
64                 actual: 0,
65                 expected: 0
66         });
67         equal("foo", "foo", "msg");
68         deepEqual(logContext, {
69                 result: true,
70                 message: "msg",
71                 actual: "foo",
72                 expected: "foo"
73         });
74         strictEqual(testDoneContext, undefined);
75         deepEqual(testContext, {
76                 module: "logs1",
77                 name: "test1"
78         });
79         strictEqual(moduleDoneContext, undefined);
80         deepEqual(moduleContext, {
81                 name: "logs1"
82         });
83
84         equal(log, 12);
85 });
86 test("test2", 10, function() {
87         equal(begin, 1);
88         equal(moduleStart, 1);
89         equal(testStart, 2);
90         equal(testDone, 1);
91         equal(moduleDone, 0);
92
93         deepEqual(testDoneContext, {
94                 module: "logs1",
95                 name: "test1",
96                 failed: 0,
97                 passed: 13,
98                 total: 13
99         });
100         deepEqual(testContext, {
101                 module: "logs1",
102                 name: "test2"
103         });
104         strictEqual(moduleDoneContext, undefined);
105         deepEqual(moduleContext, {
106                 name: "logs1"
107         });
108
109         equal(log, 22);
110 });
111
112 module("logs2");
113
114 test("test1", 9, function() {
115         equal(begin, 1);
116         equal(moduleStart, 2);
117         equal(testStart, 3);
118         equal(testDone, 2);
119         equal(moduleDone, 1);
120
121         deepEqual(testContext, {
122                 module: "logs2",
123                 name: "test1"
124         });
125         deepEqual(moduleDoneContext, {
126                 name: "logs1",
127                 failed: 0,
128                 passed: 23,
129                 total: 23
130         });
131         deepEqual(moduleContext, {
132                 name: "logs2"
133         });
134
135         equal(log, 31);
136 });
137 test("test2", 8, function() {
138         equal(begin, 1);
139         equal(moduleStart, 2);
140         equal(testStart, 4);
141         equal(testDone, 3);
142         equal(moduleDone, 1);
143
144         deepEqual(testContext, {
145                 module: "logs2",
146                 name: "test2"
147         });
148         deepEqual(moduleContext, {
149                 name: "logs2"
150         });
151
152         equal(log, 39);
153 });
154
155 var testAutorun = true;
156
157 QUnit.done(function() {
158
159         if (!testAutorun) {
160                 return;
161         }
162
163         testAutorun = false;
164
165         module("autorun");
166
167         test("reset", function() {});
168
169         moduleStart = moduleDone = 0;
170
171         test("first", function(){
172                 equal(moduleStart, 1, "test started");
173                 equal(moduleDone, 0, "test in progress");
174         });
175
176         test("second", function(){
177                 equal(moduleStart, 2, "test started");
178                 equal(moduleDone, 1, "test in progress");
179         });
180 });

Hosting is provided AltSPAHow to use Git
Please direct any questions on jabber alex.wolf@jabber.ru

Valid HTML 4.0 Transitional Valid CSS!

Designer Alexander Wolf