logs.js 4.1 KB

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