logs.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  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. var logs = ["begin", "testStart", "testDone", "log", "moduleStart", "moduleDone", "done"];
  39. for (var i = 0; i < logs.length; i++) {
  40. (function() {
  41. var log = logs[i],
  42. logger = QUnit[log];
  43. QUnit[log] = function() {
  44. console.log(log, arguments);
  45. logger.apply(this, arguments);
  46. };
  47. })();
  48. }
  49. module("logs1");
  50. test("test1", 13, function() {
  51. equal(begin, 1);
  52. equal(moduleStart, 1);
  53. equal(testStart, 1);
  54. equal(testDone, 0);
  55. equal(moduleDone, 0);
  56. deepEqual(logContext, {
  57. result: true,
  58. message: undefined,
  59. actual: 0,
  60. expected: 0
  61. });
  62. equal("foo", "foo", "msg");
  63. deepEqual(logContext, {
  64. result: true,
  65. message: "msg",
  66. actual: "foo",
  67. expected: "foo"
  68. });
  69. strictEqual(testDoneContext, undefined);
  70. deepEqual(testContext, {
  71. name: "test1"
  72. });
  73. strictEqual(moduleDoneContext, undefined);
  74. deepEqual(moduleContext, {
  75. name: "logs1"
  76. });
  77. equal(log, 12);
  78. });
  79. test("test2", 10, function() {
  80. equal(begin, 1);
  81. equal(moduleStart, 1);
  82. equal(testStart, 2);
  83. equal(testDone, 1);
  84. equal(moduleDone, 0);
  85. deepEqual(testDoneContext, {
  86. name: "test1",
  87. failed: 0,
  88. passed: 13,
  89. total: 13
  90. });
  91. deepEqual(testContext, {
  92. name: "test2"
  93. });
  94. strictEqual(moduleDoneContext, undefined);
  95. deepEqual(moduleContext, {
  96. name: "logs1"
  97. });
  98. equal(log, 22);
  99. });
  100. module("logs2");
  101. test("test1", 9, function() {
  102. equal(begin, 1);
  103. equal(moduleStart, 2);
  104. equal(testStart, 3);
  105. equal(testDone, 2);
  106. equal(moduleDone, 1);
  107. deepEqual(testContext, {
  108. name: "test1"
  109. });
  110. deepEqual(moduleDoneContext, {
  111. name: "logs1",
  112. failed: 0,
  113. passed: 23,
  114. total: 23
  115. });
  116. deepEqual(moduleContext, {
  117. name: "logs2"
  118. });
  119. equal(log, 31);
  120. });
  121. test("test2", 8, function() {
  122. equal(begin, 1);
  123. equal(moduleStart, 2);
  124. equal(testStart, 4);
  125. equal(testDone, 3);
  126. equal(moduleDone, 1);
  127. deepEqual(testContext, {
  128. name: "test2"
  129. });
  130. deepEqual(moduleContext, {
  131. name: "logs2"
  132. });
  133. equal(log, 39);
  134. });