xunit.ts 0.12.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/.editorconfig +24 -0
  2. package/README.md +27 -269
  3. package/SECURITY.md +11 -0
  4. package/cli.ts +2 -1
  5. package/dist/cli.js +2 -1
  6. package/dist/cli.js.map +1 -1
  7. package/dist/src/Assertions/Contains.d.ts +16 -1
  8. package/dist/src/Assertions/Contains.d.ts.map +1 -1
  9. package/dist/src/Assertions/Contains.js +15 -0
  10. package/dist/src/Assertions/Contains.js.map +1 -1
  11. package/dist/src/Assertions/Count.d.ts +16 -1
  12. package/dist/src/Assertions/Count.d.ts.map +1 -1
  13. package/dist/src/Assertions/Count.js +15 -0
  14. package/dist/src/Assertions/Count.js.map +1 -1
  15. package/dist/src/Assertions/Defined.d.ts +15 -1
  16. package/dist/src/Assertions/Defined.d.ts.map +1 -1
  17. package/dist/src/Assertions/Defined.js +17 -3
  18. package/dist/src/Assertions/Defined.js.map +1 -1
  19. package/dist/src/Assertions/DoesNotContain.d.ts +17 -0
  20. package/dist/src/Assertions/DoesNotContain.d.ts.map +1 -0
  21. package/dist/src/Assertions/DoesNotContain.js +30 -0
  22. package/dist/src/Assertions/DoesNotContain.js.map +1 -0
  23. package/dist/src/Assertions/DoesNotThrow.d.ts +14 -0
  24. package/dist/src/Assertions/DoesNotThrow.d.ts.map +1 -1
  25. package/dist/src/Assertions/DoesNotThrow.js +15 -0
  26. package/dist/src/Assertions/DoesNotThrow.js.map +1 -1
  27. package/dist/src/Assertions/Empty.d.ts +15 -1
  28. package/dist/src/Assertions/Empty.d.ts.map +1 -1
  29. package/dist/src/Assertions/Empty.js +17 -3
  30. package/dist/src/Assertions/Empty.js.map +1 -1
  31. package/dist/src/Assertions/Equal.d.ts +15 -0
  32. package/dist/src/Assertions/Equal.d.ts.map +1 -1
  33. package/dist/src/Assertions/Equal.js +16 -1
  34. package/dist/src/Assertions/Equal.js.map +1 -1
  35. package/dist/src/Assertions/False.d.ts +15 -1
  36. package/dist/src/Assertions/False.d.ts.map +1 -1
  37. package/dist/src/Assertions/False.js +17 -3
  38. package/dist/src/Assertions/False.js.map +1 -1
  39. package/dist/src/Assertions/InstanceOf.d.ts +16 -1
  40. package/dist/src/Assertions/InstanceOf.d.ts.map +1 -1
  41. package/dist/src/Assertions/InstanceOf.js +19 -4
  42. package/dist/src/Assertions/InstanceOf.js.map +1 -1
  43. package/dist/src/Assertions/NotEmpty.d.ts +15 -1
  44. package/dist/src/Assertions/NotEmpty.d.ts.map +1 -1
  45. package/dist/src/Assertions/NotEmpty.js +17 -3
  46. package/dist/src/Assertions/NotEmpty.js.map +1 -1
  47. package/dist/src/Assertions/NotEqual.d.ts +15 -0
  48. package/dist/src/Assertions/NotEqual.d.ts.map +1 -1
  49. package/dist/src/Assertions/NotEqual.js +20 -1
  50. package/dist/src/Assertions/NotEqual.js.map +1 -1
  51. package/dist/src/Assertions/NotNull.d.ts +15 -1
  52. package/dist/src/Assertions/NotNull.d.ts.map +1 -1
  53. package/dist/src/Assertions/NotNull.js +17 -3
  54. package/dist/src/Assertions/NotNull.js.map +1 -1
  55. package/dist/src/Assertions/Null.d.ts +15 -1
  56. package/dist/src/Assertions/Null.d.ts.map +1 -1
  57. package/dist/src/Assertions/Null.js +17 -3
  58. package/dist/src/Assertions/Null.js.map +1 -1
  59. package/dist/src/Assertions/StringContains.d.ts +15 -0
  60. package/dist/src/Assertions/StringContains.d.ts.map +1 -1
  61. package/dist/src/Assertions/StringContains.js +16 -1
  62. package/dist/src/Assertions/StringContains.js.map +1 -1
  63. package/dist/src/Assertions/StringDoesNotContain.d.ts +17 -0
  64. package/dist/src/Assertions/StringDoesNotContain.d.ts.map +1 -0
  65. package/dist/src/Assertions/StringDoesNotContain.js +30 -0
  66. package/dist/src/Assertions/StringDoesNotContain.js.map +1 -0
  67. package/dist/src/Assertions/StringDoesNotEndWith.d.ts +17 -0
  68. package/dist/src/Assertions/StringDoesNotEndWith.d.ts.map +1 -0
  69. package/dist/src/Assertions/StringDoesNotEndWith.js +32 -0
  70. package/dist/src/Assertions/StringDoesNotEndWith.js.map +1 -0
  71. package/dist/src/Assertions/StringDoesNotStartWith.d.ts +17 -0
  72. package/dist/src/Assertions/StringDoesNotStartWith.d.ts.map +1 -0
  73. package/dist/src/Assertions/StringDoesNotStartWith.js +30 -0
  74. package/dist/src/Assertions/StringDoesNotStartWith.js.map +1 -0
  75. package/dist/src/Assertions/StringEndsWith.d.ts +15 -0
  76. package/dist/src/Assertions/StringEndsWith.d.ts.map +1 -1
  77. package/dist/src/Assertions/StringEndsWith.js +18 -1
  78. package/dist/src/Assertions/StringEndsWith.js.map +1 -1
  79. package/dist/src/Assertions/StringStartsWith.d.ts +15 -0
  80. package/dist/src/Assertions/StringStartsWith.d.ts.map +1 -1
  81. package/dist/src/Assertions/StringStartsWith.js +15 -0
  82. package/dist/src/Assertions/StringStartsWith.js.map +1 -1
  83. package/dist/src/Assertions/Throws.d.ts +14 -0
  84. package/dist/src/Assertions/Throws.d.ts.map +1 -1
  85. package/dist/src/Assertions/Throws.js +14 -0
  86. package/dist/src/Assertions/Throws.js.map +1 -1
  87. package/dist/src/Assertions/True.d.ts +15 -1
  88. package/dist/src/Assertions/True.d.ts.map +1 -1
  89. package/dist/src/Assertions/True.js +17 -3
  90. package/dist/src/Assertions/True.js.map +1 -1
  91. package/dist/src/Assertions/Undefined.d.ts +15 -1
  92. package/dist/src/Assertions/Undefined.d.ts.map +1 -1
  93. package/dist/src/Assertions/Undefined.js +17 -3
  94. package/dist/src/Assertions/Undefined.js.map +1 -1
  95. package/dist/src/Assertions/index.d.ts +4 -4
  96. package/dist/src/Assertions/index.d.ts.map +1 -1
  97. package/dist/src/Assertions/index.js +8 -8
  98. package/dist/src/Assertions/index.js.map +1 -1
  99. package/dist/src/CLI.d.ts +4 -1
  100. package/dist/src/CLI.d.ts.map +1 -1
  101. package/dist/src/CLI.js +9 -7
  102. package/dist/src/CLI.js.map +1 -1
  103. package/dist/src/Factory.d.ts +3 -2
  104. package/dist/src/Factory.d.ts.map +1 -1
  105. package/dist/src/Factory.js +4 -4
  106. package/dist/src/Factory.js.map +1 -1
  107. package/dist/src/Framework/Test.d.ts +14 -0
  108. package/dist/src/Framework/Test.d.ts.map +1 -1
  109. package/dist/src/Framework/Test.js +14 -0
  110. package/dist/src/Framework/Test.js.map +1 -1
  111. package/dist/src/Framework/TestSuite.d.ts +13 -4
  112. package/dist/src/Framework/TestSuite.d.ts.map +1 -1
  113. package/dist/src/Framework/TestSuite.js +9 -0
  114. package/dist/src/Framework/TestSuite.js.map +1 -1
  115. package/dist/src/Reporters/JUnitReporter.js +1 -1
  116. package/dist/src/Reporters/JUnitReporter.js.map +1 -1
  117. package/dist/src/Reporters/SonarReporter.d.ts.map +1 -1
  118. package/dist/src/Reporters/SonarReporter.js +3 -2
  119. package/dist/src/Reporters/SonarReporter.js.map +1 -1
  120. package/dist/src/Runners/Runner.d.ts +1 -1
  121. package/dist/src/Runners/Runner.d.ts.map +1 -1
  122. package/dist/src/Runners/Runner.js.map +1 -1
  123. package/dist/src/Runners/TestRunner.d.ts +1 -1
  124. package/dist/src/Runners/TestRunner.d.ts.map +1 -1
  125. package/dist/src/Runners/TestRunner.js +6 -5
  126. package/dist/src/Runners/TestRunner.js.map +1 -1
  127. package/dist/src/Runners/TestSuiteRunner.d.ts +1 -1
  128. package/dist/src/Runners/TestSuiteRunner.d.ts.map +1 -1
  129. package/dist/src/Runners/TestSuiteRunner.js.map +1 -1
  130. package/icon.svg +83 -0
  131. package/logo.svg +154 -0
  132. package/package.json +15 -9
  133. package/sonar-project.properties +1 -1
  134. package/src/Assertions/Contains.ts +16 -1
  135. package/src/Assertions/Count.ts +16 -1
  136. package/src/Assertions/Defined.ts +17 -3
  137. package/src/Assertions/DoesNotContain.ts +28 -0
  138. package/src/Assertions/DoesNotThrow.ts +15 -0
  139. package/src/Assertions/Empty.ts +17 -3
  140. package/src/Assertions/Equal.ts +15 -0
  141. package/src/Assertions/False.ts +17 -3
  142. package/src/Assertions/InstanceOf.ts +19 -4
  143. package/src/Assertions/NotEmpty.ts +17 -3
  144. package/src/Assertions/NotEqual.ts +17 -1
  145. package/src/Assertions/NotNull.ts +17 -3
  146. package/src/Assertions/Null.ts +17 -3
  147. package/src/Assertions/StringContains.ts +17 -2
  148. package/src/Assertions/StringDoesNotContain.ts +28 -0
  149. package/src/Assertions/StringDoesNotEndWith.ts +30 -0
  150. package/src/Assertions/StringDoesNotStartWith.ts +28 -0
  151. package/src/Assertions/StringEndsWith.ts +19 -2
  152. package/src/Assertions/StringStartsWith.ts +15 -0
  153. package/src/Assertions/Throws.ts +14 -0
  154. package/src/Assertions/True.ts +17 -3
  155. package/src/Assertions/Undefined.ts +17 -3
  156. package/src/Assertions/index.ts +4 -4
  157. package/src/CLI.ts +6 -5
  158. package/src/Factory.ts +6 -6
  159. package/src/Framework/Test.ts +14 -0
  160. package/src/Framework/TestSuite.ts +9 -0
  161. package/src/Reporters/SonarReporter.ts +2 -1
  162. package/src/Runners/Runner.ts +1 -1
  163. package/src/Runners/TestRunner.ts +7 -6
  164. package/src/Runners/TestSuiteRunner.ts +1 -1
  165. package/tsconfig.json +4 -2
  166. package/dist/src/Assertions/NotContains.d.ts +0 -2
  167. package/dist/src/Assertions/NotContains.d.ts.map +0 -1
  168. package/dist/src/Assertions/NotContains.js +0 -15
  169. package/dist/src/Assertions/NotContains.js.map +0 -1
  170. package/dist/src/Assertions/StringNotContains.d.ts +0 -2
  171. package/dist/src/Assertions/StringNotContains.d.ts.map +0 -1
  172. package/dist/src/Assertions/StringNotContains.js +0 -15
  173. package/dist/src/Assertions/StringNotContains.js.map +0 -1
  174. package/dist/src/Assertions/StringNotEndsWith.d.ts +0 -2
  175. package/dist/src/Assertions/StringNotEndsWith.d.ts.map +0 -1
  176. package/dist/src/Assertions/StringNotEndsWith.js +0 -15
  177. package/dist/src/Assertions/StringNotEndsWith.js.map +0 -1
  178. package/dist/src/Assertions/StringNotStartsWith.d.ts +0 -2
  179. package/dist/src/Assertions/StringNotStartsWith.d.ts.map +0 -1
  180. package/dist/src/Assertions/StringNotStartsWith.js +0 -15
  181. package/dist/src/Assertions/StringNotStartsWith.js.map +0 -1
  182. package/src/Assertions/NotContains.ts +0 -13
  183. package/src/Assertions/StringNotContains.ts +0 -13
  184. package/src/Assertions/StringNotEndsWith.ts +0 -13
  185. package/src/Assertions/StringNotStartsWith.ts +0 -13
@@ -1,4 +1,18 @@
1
1
  import TestSuite from "./TestSuite";
2
2
  import TestInfo from "./TestInfo";
3
+ /**
4
+ * Annotates a test method within a {@link TestSuite}
5
+ *
6
+ * @remarks
7
+ * This instructs `xunit.ts` to run this method as part of its {@link TestSuite}
8
+ *
9
+ * @param test_name (optional) the test's display name; if not set, a sentence case version of the method name will be used
10
+ *
11
+ * @example
12
+ * ```
13
+ * @Test()
14
+ * async UnitTestName() { ... }
15
+ * ```
16
+ */
3
17
  export default function Test(test_name?: string): (suite: TestSuite, method_name: string, info: TestInfo) => void;
4
18
  //# sourceMappingURL=Test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Test.d.ts","sourceRoot":"","sources":["../../../src/Framework/Test.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,WACnB,SAAS,eAAe,MAAM,0BAGzD"}
1
+ {"version":3,"file":"Test.d.ts","sourceRoot":"","sources":["../../../src/Framework/Test.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,WACnB,SAAS,eAAe,MAAM,0BAGzD"}
@@ -4,6 +4,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const TestName_1 = __importDefault(require("./TestName"));
7
+ /**
8
+ * Annotates a test method within a {@link TestSuite}
9
+ *
10
+ * @remarks
11
+ * This instructs `xunit.ts` to run this method as part of its {@link TestSuite}
12
+ *
13
+ * @param test_name (optional) the test's display name; if not set, a sentence case version of the method name will be used
14
+ *
15
+ * @example
16
+ * ```
17
+ * @Test()
18
+ * async UnitTestName() { ... }
19
+ * ```
20
+ */
7
21
  function Test(test_name) {
8
22
  return function (suite, method_name, info) {
9
23
  suite.addTest(test_name || TestName_1.default.toSentenceCase(method_name), info);
@@ -1 +1 @@
1
- {"version":3,"file":"Test.js","sourceRoot":"","sources":["../../../src/Framework/Test.ts"],"names":[],"mappings":";;;;;AAEA,0DAAkC;AAElC,SAAwB,IAAI,CAAC,SAAkB;IAC3C,OAAO,UAAU,KAAgB,EAAE,WAAmB,EAAE,IAAc;QAClE,KAAK,CAAC,OAAO,CAAC,SAAS,IAAI,kBAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC,CAAA;AACL,CAAC;AAJD,uBAIC"}
1
+ {"version":3,"file":"Test.js","sourceRoot":"","sources":["../../../src/Framework/Test.ts"],"names":[],"mappings":";;;;;AAEA,0DAAkC;AAElC;;;;;;;;;;;;;GAaG;AACH,SAAwB,IAAI,CAAC,SAAkB;IAC3C,OAAO,UAAU,KAAgB,EAAE,WAAmB,EAAE,IAAc;QAClE,KAAK,CAAC,OAAO,CAAC,SAAS,IAAI,kBAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC,CAAA;AACL,CAAC;AAJD,uBAIC"}
@@ -1,4 +1,13 @@
1
1
  import TestInfo from './TestInfo';
2
+ /**
3
+ * Defines a container of tests
4
+ *
5
+ * @remarks
6
+ * Extend this class for `xunit.ts` load its tests
7
+ *
8
+ * @example
9
+ * export default class CustomClassTests extends TestSuite { ... }
10
+ */
2
11
  export default abstract class TestSuite {
3
12
  assert: {
4
13
  true: typeof import("../Assertions/True").default;
@@ -13,13 +22,13 @@ export default abstract class TestSuite {
13
22
  notEmpty: typeof import("../Assertions/NotEmpty").default;
14
23
  count: typeof import("../Assertions/Count").default;
15
24
  contains: typeof import("../Assertions/Contains").default;
16
- doesNotContain: typeof import("../Assertions/NotContains").default;
25
+ doesNotContain: typeof import("../Assertions/DoesNotContain").default;
17
26
  stringContains: typeof import("../Assertions/StringContains").default;
18
- stringDoesNotContain: typeof import("../Assertions/StringNotContains").default;
27
+ stringDoesNotContain: typeof import("../Assertions/StringDoesNotContain").default;
19
28
  stringStartsWith: typeof import("../Assertions/StringStartsWith").default;
20
- stringDoesNotStartWIth: typeof import("../Assertions/StringNotStartsWith").default;
29
+ stringDoesNotStartWIth: typeof import("../Assertions/StringDoesNotStartWith").default;
21
30
  stringEndsWith: typeof import("../Assertions/StringEndsWith").default;
22
- stringDoesNotEndWith: typeof import("../Assertions/StringNotEndsWith").default;
31
+ stringDoesNotEndWith: typeof import("../Assertions/StringDoesNotEndWith").default;
23
32
  instanceOf: typeof import("../Assertions/InstanceOf").default;
24
33
  throws: typeof import("../Assertions/Throws").default;
25
34
  doesNotThrow: typeof import("../Assertions/DoesNotThrow").default;
@@ -1 +1 @@
1
- {"version":3,"file":"TestSuite.d.ts","sourceRoot":"","sources":["../../../src/Framework/TestSuite.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,SAAS;IACnC,MAAM;;;;;;;;;;;;;;;;;;;;;;;MAAoB;IAE1B,OAAO,CAAC,KAAK,CAAgC;IAE7C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;IAOpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;IAIxC,QAAQ;CAGX"}
1
+ {"version":3,"file":"TestSuite.d.ts","sourceRoot":"","sources":["../../../src/Framework/TestSuite.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,SAAS;IACnC,MAAM;;;;;;;;;;;;;;;;;;;;;;;MAAoB;IAE1B,OAAO,CAAC,KAAK,CAAgC;IAE7C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;IAOpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;IAIxC,QAAQ;CAGX"}
@@ -4,6 +4,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Assertions_1 = __importDefault(require("../Assertions"));
7
+ /**
8
+ * Defines a container of tests
9
+ *
10
+ * @remarks
11
+ * Extend this class for `xunit.ts` load its tests
12
+ *
13
+ * @example
14
+ * export default class CustomClassTests extends TestSuite { ... }
15
+ */
7
16
  class TestSuite {
8
17
  constructor() {
9
18
  this.assert = Assertions_1.default;
@@ -1 +1 @@
1
- {"version":3,"file":"TestSuite.js","sourceRoot":"","sources":["../../../src/Framework/TestSuite.ts"],"names":[],"mappings":";;;;;AACA,+DAA6C;AAE7C,MAA8B,SAAS;IAAvC;QACI,WAAM,GAAG,oBAAgB,CAAC;QAElB,UAAK,GAA6B,EAAE,CAAC;IAgBjD,CAAC;IAdG,OAAO,CAAC,IAAY,EAAE,IAAc;QAChC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACjD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,QAAQ,CAAC,KAA+B;QACpC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;CACJ;AAnBD,4BAmBC"}
1
+ {"version":3,"file":"TestSuite.js","sourceRoot":"","sources":["../../../src/Framework/TestSuite.ts"],"names":[],"mappings":";;;;;AACA,+DAA6C;AAE7C;;;;;;;;GAQG;AACH,MAA8B,SAAS;IAAvC;QACI,WAAM,GAAG,oBAAgB,CAAC;QAElB,UAAK,GAA6B,EAAE,CAAC;IAgBjD,CAAC;IAdG,OAAO,CAAC,IAAY,EAAE,IAAc;QAChC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACjD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,QAAQ,CAAC,KAA+B;QACpC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;CACJ;AAnBD,4BAmBC"}
@@ -12,7 +12,7 @@ class JUnitReporter extends XMLReporter_1.default {
12
12
  const data = {
13
13
  testsuites: Object.values(results).map((result, index) => JUnitReporter.testSuite(result, index))
14
14
  };
15
- return xml_1.default(data, { indent: ' ' });
15
+ return (0, xml_1.default)(data, { indent: ' ' });
16
16
  }
17
17
  static testSuite(results, id) {
18
18
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"JUnitReporter.js","sourceRoot":"","sources":["../../../src/Reporters/JUnitReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JUnitReporter.js","sourceRoot":"","sources":["../../../src/Reporters/JUnitReporter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SonarReporter.d.ts","sourceRoot":"","sources":["../../../src/Reporters/SonarReporter.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAI7D,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IAClD,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAe;IAEtD,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM;IAetD,OAAO,CAAC,MAAM,CAAC,SAAS;IAcxB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAsBvB,OAAO,CAAC,MAAM,CAAC,OAAO;IAatB,OAAO,CAAC,MAAM,CAAC,OAAO;IAatB,OAAO,CAAC,MAAM,CAAC,KAAK;CAYvB"}
1
+ {"version":3,"file":"SonarReporter.d.ts","sourceRoot":"","sources":["../../../src/Reporters/SonarReporter.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAI7D,OAAO,WAAW,MAAM,eAAe,CAAC;AAGxC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IAClD,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAe;IAEtD,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM;IAetD,OAAO,CAAC,MAAM,CAAC,SAAS;IAcxB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAsBvB,OAAO,CAAC,MAAM,CAAC,OAAO;IAatB,OAAO,CAAC,MAAM,CAAC,OAAO;IAatB,OAAO,CAAC,MAAM,CAAC,KAAK;CAYvB"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const xml_1 = __importDefault(require("xml"));
7
7
  const ResultType_1 = require("../Framework/ResultType");
8
8
  const XMLReporter_1 = __importDefault(require("./XMLReporter"));
9
+ const path_1 = __importDefault(require("path"));
9
10
  class SonarReporter extends XMLReporter_1.default {
10
11
  xml(results) {
11
12
  const data = {
@@ -19,14 +20,14 @@ class SonarReporter extends XMLReporter_1.default {
19
20
  .map(file => SonarReporter.testSuite(results[file], file))
20
21
  ]
21
22
  };
22
- return xml_1.default(data, { indent: ' ' });
23
+ return (0, xml_1.default)(data, { indent: ' ' });
23
24
  }
24
25
  static testSuite(results, file) {
25
26
  return {
26
27
  file: [
27
28
  {
28
29
  _attr: {
29
- path: file.replace(/^dist\//, '').replace(/\.js$/, '.ts'),
30
+ path: file.substr(file.split(path_1.default.sep)[0].length + 1).replace(/\.js$/, '.ts'),
30
31
  }
31
32
  },
32
33
  ...Object.keys(results.results)
@@ -1 +1 @@
1
- {"version":3,"file":"SonarReporter.js","sourceRoot":"","sources":["../../../src/Reporters/SonarReporter.ts"],"names":[],"mappings":";;;;;AACA,8CAAsB;AACtB,wDAAmD;AAEnD,gEAAwC;AAExC,MAAqB,aAAc,SAAQ,qBAAW;IAGlD,GAAG,CAAC,OAAyC;QACzC,MAAM,IAAI,GAAG;YACT,cAAc,EAAE;gBACZ;oBACI,KAAK,EAAE;wBACH,OAAO,EAAE,CAAC;qBACb;iBACJ;gBACD,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;qBAClB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;aACjE;SACJ,CAAC;QACF,OAAO,aAAG,CAAC,IAAI,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;IACrC,CAAC;IAEO,MAAM,CAAC,SAAS,CAAC,OAAyB,EAAE,IAAY;QAC5D,OAAO;YACH,IAAI,EAAE;gBACF;oBACI,KAAK,EAAE;wBACH,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;qBAC5D;iBACJ;gBACD,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;qBAC1B,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;aACvF;SACJ,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,QAAQ,CAAC,SAAiB,EAAE,MAAkB;QACzD,MAAM,QAAQ,GAAa;YACvB;gBACI,KAAK,EAAE;oBACH,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;iBACxC;aACJ;SACJ,CAAC;QAEF,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE9C,IAAI,OAAO,KAAK,IAAI,EAAE;YAClB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC1B;QAGD,OAAO;YACH,QAAQ,EAAE,QAAQ;SACrB,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,OAAO,CAAC,MAAkB;QACrC,QAAO,MAAM,CAAC,IAAI,EAAE;YAChB,KAAK,uBAAU,CAAC,UAAU;gBACtB,OAAO,EAAC,OAAO,EAAE,EAAE,EAAC,CAAC;YACzB,KAAK,uBAAU,CAAC,MAAM;gBAClB,OAAO,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACzC,KAAK,uBAAU,CAAC,KAAK;gBACjB,OAAO,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACvC;gBACI,OAAO,IAAI,CAAC;SACnB;IACL,CAAC;IAEO,MAAM,CAAC,OAAO,CAAC,MAAkB;;QACrC,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,KAAK,EAAE;wBACH,OAAO,EAAE,MAAA,MAAM,CAAC,KAAK,0CAAE,OAAO;qBACjC;iBACJ;gBACD,MAAA,MAAM,CAAC,KAAK,0CAAE,KAAK;aACtB;SACJ,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,MAAkB;;QACnC,OAAO;YACH,KAAK,EAAE;gBACH;oBACI,KAAK,EAAE;wBACH,OAAO,EAAE,MAAA,MAAM,CAAC,KAAK,0CAAE,OAAO;qBACjC;iBACJ;gBACD,MAAA,MAAM,CAAC,KAAK,0CAAE,KAAK;aACtB;SACJ,CAAC;IACN,CAAC;;AA3FL,gCA4FC;AA3FmB,6BAAe,GAAW,WAAW,CAAC"}
1
+ {"version":3,"file":"SonarReporter.js","sourceRoot":"","sources":["../../../src/Reporters/SonarReporter.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export default class Runner {
6
6
  private readonly loader;
7
7
  private readonly runner;
8
8
  private readonly reporters;
9
- constructor(loader: TestSuiteLoader, runner: TestSuiteRunner, reporters: ResultReporter[]);
9
+ constructor(loader: TestSuiteLoader, runner: TestSuiteRunner, reporters: ReadonlyArray<ResultReporter>);
10
10
  runAll(dir: string): Promise<Record<string, TestSuiteResults>>;
11
11
  static allTestsPassed(results: Record<string, TestSuiteResults>): boolean;
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Runner.d.ts","sourceRoot":"","sources":["../../../src/Runners/Runner.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAG7D,MAAM,CAAC,OAAO,OAAO,MAAM;IAEX,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAmB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAmB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA7F,MAAM,EAAE,eAAe,EAAmB,MAAM,EAAE,eAAe,EAAmB,SAAS,EAAE,cAAc,EAAE;IAGtI,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAYpE,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,OAAO;CAK5E"}
1
+ {"version":3,"file":"Runner.d.ts","sourceRoot":"","sources":["../../../src/Runners/Runner.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAG7D,MAAM,CAAC,OAAO,OAAO,MAAM;IAEX,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAmB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAmB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA7F,MAAM,EAAE,eAAe,EAAmB,MAAM,EAAE,eAAe,EAAmB,SAAS,EAAE,aAAa,CAAC,cAAc,CAAC;IAGnJ,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAYpE,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,OAAO;CAK5E"}
@@ -1 +1 @@
1
- {"version":3,"file":"Runner.js","sourceRoot":"","sources":["../../../src/Runners/Runner.ts"],"names":[],"mappings":";;;;;;;;;;;AAIA,wDAAmD;AAEnD,MAAqB,MAAM;IAEvB,YAA6B,MAAuB,EAAmB,MAAuB,EAAmB,SAA2B;QAA/G,WAAM,GAAN,MAAM,CAAiB;QAAmB,WAAM,GAAN,MAAM,CAAiB;QAAmB,cAAS,GAAT,SAAS,CAAkB;IAC5I,CAAC;IAEK,MAAM,CAAC,GAAW;;YACpB,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAqC,EAAE,CAAC;YACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YACrD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aACrD;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACpE,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;IAED,MAAM,CAAC,cAAc,CAAC,OAAyC;QAC3D,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QACvF,OAAO,kBAAkB,CAAC,MAAM,GAAG,CAAC;eAC7B,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAU,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAC9G,CAAC;CACJ;AAtBD,yBAsBC"}
1
+ {"version":3,"file":"Runner.js","sourceRoot":"","sources":["../../../src/Runners/Runner.ts"],"names":[],"mappings":";;;;;;;;;;;AAIA,wDAAmD;AAEnD,MAAqB,MAAM;IAEvB,YAA6B,MAAuB,EAAmB,MAAuB,EAAmB,SAAwC;QAA5H,WAAM,GAAN,MAAM,CAAiB;QAAmB,WAAM,GAAN,MAAM,CAAiB;QAAmB,cAAS,GAAT,SAAS,CAA+B;IACzJ,CAAC;IAEK,MAAM,CAAC,GAAW;;YACpB,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAqC,EAAE,CAAC;YACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YACrD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aACrD;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACpE,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;IAED,MAAM,CAAC,cAAc,CAAC,OAAyC;QAC3D,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QACvF,OAAO,kBAAkB,CAAC,MAAM,GAAG,CAAC;eAC7B,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAU,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAC9G,CAAC;CACJ;AAtBD,yBAsBC"}
@@ -4,7 +4,7 @@ import ResultReporter from '../Reporters/ResultReporter';
4
4
  import TestResult from "../Framework/TestResult";
5
5
  export default class TestRunner {
6
6
  private readonly reporters;
7
- constructor(reporters: ResultReporter[]);
7
+ constructor(reporters: ReadonlyArray<ResultReporter>);
8
8
  runTest(name: string, info: TestInfo, suite: TestSuite): Promise<TestResult>;
9
9
  private static msSince;
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TestRunner.d.ts","sourceRoot":"","sources":["../../../src/Runners/TestRunner.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAGjD,MAAM,CAAC,OAAO,OAAO,UAAU;IAEf,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,cAAc,EAAE;IAElD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IA0BlF,OAAO,CAAC,MAAM,CAAC,OAAO;CAIzB"}
1
+ {"version":3,"file":"TestRunner.d.ts","sourceRoot":"","sources":["../../../src/Runners/TestRunner.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAGjD,MAAM,CAAC,OAAO,OAAO,UAAU;IAEf,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,aAAa,CAAC,cAAc,CAAC;IAE/D,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IA2BlF,OAAO,CAAC,MAAM,CAAC,OAAO;CAIzB"}
@@ -35,12 +35,13 @@ class TestRunner {
35
35
  }
36
36
  catch (error) {
37
37
  const duration = TestRunner.msSince(start);
38
- if (error instanceof assert_1.AssertionError) {
39
- yield Promise.all(this.reporters.map(r => r.testFailed(suite, name, error, duration)));
40
- return new TestResult_1.default(ResultType_1.ResultType.Failed, duration, error);
38
+ const typedError = error;
39
+ if (typedError instanceof assert_1.AssertionError) {
40
+ yield Promise.all(this.reporters.map(r => r.testFailed(suite, name, typedError, duration)));
41
+ return new TestResult_1.default(ResultType_1.ResultType.Failed, duration, typedError);
41
42
  }
42
- yield Promise.all(this.reporters.map(r => r.testErrored(suite, name, error, duration)));
43
- return new TestResult_1.default(ResultType_1.ResultType.Error, duration, error);
43
+ yield Promise.all(this.reporters.map(r => r.testErrored(suite, name, typedError, duration)));
44
+ return new TestResult_1.default(ResultType_1.ResultType.Error, duration, typedError);
44
45
  }
45
46
  });
46
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TestRunner.js","sourceRoot":"","sources":["../../../src/Runners/TestRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,wDAAqD;AAErD,yEAAiD;AACjD,mCAAsC;AAEtC,MAAqB,UAAU;IAE3B,YAA6B,SAA2B;QAA3B,cAAS,GAAT,SAAS,CAAkB;IAAI,CAAC;IAEvD,OAAO,CAAC,IAAY,EAAE,IAAc,EAAE,KAAgB;;YACxD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YACvE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC1B,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC1E,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;aACnD;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI;gBACA,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAChF,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;aAEtD;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAI,KAAK,YAAY,uBAAc,EAAE;oBACjC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACvF,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;iBAC7D;gBAED,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACxF,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC5D;QACL,CAAC;KAAA;IAEO,MAAM,CAAC,OAAO,CAAC,KAAuB;QAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAS,CAAC;IACzD,CAAC;CACJ;AAlCD,6BAkCC"}
1
+ {"version":3,"file":"TestRunner.js","sourceRoot":"","sources":["../../../src/Runners/TestRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,wDAAqD;AAErD,yEAAiD;AACjD,mCAAsC;AAEtC,MAAqB,UAAU;IAE3B,YAA6B,SAAwC;QAAxC,cAAS,GAAT,SAAS,CAA+B;IAAI,CAAC;IAEpE,OAAO,CAAC,IAAY,EAAE,IAAc,EAAE,KAAgB;;YACxD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YACvE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC1B,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC1E,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;aACnD;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI;gBACA,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7B,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAChF,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;aAEtD;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,UAAU,GAAG,KAAc,CAAC;gBAClC,IAAI,UAAU,YAAY,uBAAc,EAAE;oBACtC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC5F,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;iBAClE;gBAED,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC7F,OAAO,IAAI,oBAAU,CAAC,uBAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;aACjE;QACL,CAAC;KAAA;IAEO,MAAM,CAAC,OAAO,CAAC,KAAuB;QAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAS,CAAC;IACzD,CAAC;CACJ;AAnCD,6BAmCC"}
@@ -6,7 +6,7 @@ import TestRunner from './TestRunner';
6
6
  export default class TestSuiteRunner {
7
7
  private readonly runner;
8
8
  private readonly reporters;
9
- constructor(runner: TestRunner, reporters: ResultReporter[]);
9
+ constructor(runner: TestRunner, reporters: ReadonlyArray<ResultReporter>);
10
10
  runSuite(suite: TestSuite): Promise<TestSuiteResults>;
11
11
  runTests(suite: TestSuite, tests: Record<string, TestInfo>): Promise<TestSuiteResults>;
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TestSuiteRunner.d.ts","sourceRoot":"","sources":["../../../src/Runners/TestSuiteRunner.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,eAAe;IAEpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAc,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA9C,MAAM,EAAE,UAAU,EAAmB,SAAS,EAAE,cAAc,EAAE;IAEvF,QAAQ,CAAC,KAAK,EAAE,SAAS;IAQzB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;CAenE"}
1
+ {"version":3,"file":"TestSuiteRunner.d.ts","sourceRoot":"","sources":["../../../src/Runners/TestSuiteRunner.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,eAAe;IAEpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAc,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA9C,MAAM,EAAE,UAAU,EAAmB,SAAS,EAAE,aAAa,CAAC,cAAc,CAAC;IAEpG,QAAQ,CAAC,KAAK,EAAE,SAAS;IAQzB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;CAenE"}
@@ -1 +1 @@
1
- {"version":3,"file":"TestSuiteRunner.js","sourceRoot":"","sources":["../../../src/Runners/TestSuiteRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,qFAA6D;AAI7D,MAAqB,eAAe;IAEhC,YAA6B,MAAkB,EAAmB,SAA2B;QAAhE,WAAM,GAAN,MAAM,CAAY;QAAmB,cAAS,GAAT,SAAS,CAAkB;IAAI,CAAC;IAE5F,QAAQ,CAAC,KAAgB;;YAC3B,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClE,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAClD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7E,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;IAEK,QAAQ,CAAC,KAAgB,EAAE,KAA+B;;YAC5D,MAAM,OAAO,GAAG,IAAI,0BAAgB,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1E,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;gBACxF,OAAO,OAAO,CAAC;aAClB;YAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;gBAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACnC;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;CACJ;AA3BD,kCA2BC"}
1
+ {"version":3,"file":"TestSuiteRunner.js","sourceRoot":"","sources":["../../../src/Runners/TestSuiteRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,qFAA6D;AAI7D,MAAqB,eAAe;IAEhC,YAA6B,MAAkB,EAAmB,SAAwC;QAA7E,WAAM,GAAN,MAAM,CAAY;QAAmB,cAAS,GAAT,SAAS,CAA+B;IAAI,CAAC;IAEzG,QAAQ,CAAC,KAAgB;;YAC3B,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClE,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAClD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7E,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;IAEK,QAAQ,CAAC,KAAgB,EAAE,KAA+B;;YAC5D,MAAM,OAAO,GAAG,IAAI,0BAAgB,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1E,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;gBACxF,OAAO,OAAO,CAAC;aAClB;YAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;gBAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACnC;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;CACJ;AA3BD,kCA2BC"}
package/icon.svg ADDED
@@ -0,0 +1,83 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg
3
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
4
+ xmlns:cc="http://creativecommons.org/ns#"
5
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
+ xmlns:svg="http://www.w3.org/2000/svg"
7
+ xmlns="http://www.w3.org/2000/svg"
8
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
9
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
10
+ sodipodi:docname="icon.svg"
11
+ inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
12
+ inkscape:export-ydpi="96"
13
+ inkscape:export-xdpi="96"
14
+ inkscape:export-filename="X:\ecoAPM\xunit.ts\docs\assets\icon.png"
15
+ id="svg875"
16
+ version="1.1"
17
+ viewBox="0 0 128 128"
18
+ height="128"
19
+ width="128">
20
+ <defs
21
+ id="defs869" />
22
+ <sodipodi:namedview
23
+ inkscape:window-maximized="1"
24
+ inkscape:window-y="58"
25
+ inkscape:window-x="1912"
26
+ inkscape:window-height="987"
27
+ inkscape:window-width="1680"
28
+ width="128mm"
29
+ units="px"
30
+ showgrid="false"
31
+ inkscape:document-rotation="0"
32
+ inkscape:current-layer="layer1"
33
+ inkscape:document-units="px"
34
+ inkscape:cy="71.552618"
35
+ inkscape:cx="79.729008"
36
+ inkscape:zoom="3.959798"
37
+ inkscape:pageshadow="2"
38
+ inkscape:pageopacity="0.0"
39
+ borderopacity="1.0"
40
+ bordercolor="#666666"
41
+ pagecolor="#ffffff"
42
+ id="base" />
43
+ <metadata
44
+ id="metadata872">
45
+ <rdf:RDF>
46
+ <cc:Work
47
+ rdf:about="">
48
+ <dc:format>image/svg+xml</dc:format>
49
+ <dc:type
50
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
51
+ <dc:title></dc:title>
52
+ </cc:Work>
53
+ </rdf:RDF>
54
+ </metadata>
55
+ <g
56
+ id="layer1"
57
+ inkscape:groupmode="layer"
58
+ inkscape:label="Layer 1">
59
+ <g
60
+ transform="matrix(-3.7139957,0,0,3.7296926,884.38404,-159.89924)"
61
+ style="font-style:normal;font-weight:normal;font-size:50.8px;line-height:1.25;font-family:sans-serif;fill:#bfbfbf;fill-opacity:1;stroke:none;stroke-width:0.264583"
62
+ id="text2766-0"
63
+ aria-label="🗸">
64
+ <path
65
+ sodipodi:nodetypes="ccsccccc"
66
+ id="path2805"
67
+ style="font-size:50.8px;fill:#bfbfbf;fill-opacity:1;stroke-width:0.264583"
68
+ d="m 231.8494,43.408198 0.74414,1.289843 c -4.84518,3.423047 -9.33483,7.755599 -13.46894,12.997656 -4.13412,5.242057 -7.11895,10.376628 -8.9545,15.403711 l -1.0914,0.719336 c -0.94258,0.611849 -1.75287,1.223698 -2.43086,1.835547 -1.21639,-4.400349 7.20052,-16.248511 12.05508,-21.480859 4.15065,-4.415235 8.53281,-8.003646 13.14648,-10.765234 z" />
69
+ </g>
70
+ <text
71
+ transform="scale(0.99789345,1.002111)"
72
+ xml:space="preserve"
73
+ style="font-style:normal;font-weight:normal;font-size:189.069px;line-height:1.25;font-family:sans-serif;fill:#538d43;fill-opacity:1;stroke:none;stroke-width:0.984735"
74
+ x="-11.659032"
75
+ y="150.47607"
76
+ id="text2766"><tspan
77
+ sodipodi:role="line"
78
+ id="tspan2764"
79
+ x="-11.659032"
80
+ y="150.47607"
81
+ style="font-size:189.069px;fill:#538d43;fill-opacity:1;stroke-width:0.984735">🗸</tspan></text>
82
+ </g>
83
+ </svg>
package/logo.svg ADDED
@@ -0,0 +1,154 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg
3
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
4
+ xmlns:cc="http://creativecommons.org/ns#"
5
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
+ xmlns:svg="http://www.w3.org/2000/svg"
7
+ xmlns="http://www.w3.org/2000/svg"
8
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
9
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
10
+ inkscape:export-ydpi="96"
11
+ inkscape:export-xdpi="96"
12
+ inkscape:export-filename="X:\ecoAPM\xunit.ts\logo-black.png"
13
+ sodipodi:docname="logo.svg"
14
+ inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
15
+ id="svg8"
16
+ version="1.1"
17
+ viewBox="0 0 400 128"
18
+ height="128"
19
+ width="400">
20
+ <defs
21
+ id="defs2">
22
+ <rect
23
+ id="rect2858"
24
+ height="56"
25
+ width="61.5"
26
+ y="39"
27
+ x="127.5" />
28
+ <rect
29
+ id="rect2746"
30
+ height="38.364582"
31
+ width="5.0270834"
32
+ y="94.720833"
33
+ x="102.39375" />
34
+ </defs>
35
+ <sodipodi:namedview
36
+ inkscape:window-maximized="1"
37
+ inkscape:window-y="-8"
38
+ inkscape:window-x="-8"
39
+ inkscape:window-height="1137"
40
+ inkscape:window-width="1920"
41
+ inkscape:pagecheckerboard="false"
42
+ units="px"
43
+ showgrid="false"
44
+ inkscape:document-rotation="0"
45
+ inkscape:current-layer="layer1"
46
+ inkscape:document-units="px"
47
+ inkscape:cy="111.1524"
48
+ inkscape:cx="243.86486"
49
+ inkscape:zoom="2"
50
+ inkscape:pageshadow="2"
51
+ inkscape:pageopacity="0"
52
+ borderopacity="1.0"
53
+ bordercolor="#666666"
54
+ pagecolor="#000000"
55
+ id="base" />
56
+ <metadata
57
+ id="metadata5">
58
+ <rdf:RDF>
59
+ <cc:Work
60
+ rdf:about="">
61
+ <dc:format>image/svg+xml</dc:format>
62
+ <dc:type
63
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
64
+ <dc:title></dc:title>
65
+ </cc:Work>
66
+ </rdf:RDF>
67
+ </metadata>
68
+ <g
69
+ id="layer1"
70
+ inkscape:groupmode="layer"
71
+ inkscape:label="Layer 1">
72
+ <text
73
+ id="text2742"
74
+ y="168.27499"
75
+ x="-11.377083"
76
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:127px;line-height:1.25;font-family:'Noto Sans';-inkscape-font-specification:'Noto Sans';fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
77
+ xml:space="preserve"><tspan
78
+ sodipodi:role="line"
79
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:127px;font-family:'Noto Sans';-inkscape-font-specification:'Noto Sans';stroke-width:0.264583"
80
+ y="168.27499"
81
+ x="-11.377083"
82
+ id="tspan2740" /><tspan
83
+ id="tspan2754"
84
+ sodipodi:role="line"
85
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:127px;font-family:'Noto Sans';-inkscape-font-specification:'Noto Sans';stroke-width:0.264583"
86
+ y="327.02499"
87
+ x="-11.377083" /></text>
88
+ <text
89
+ style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2746);fill:#000000;fill-opacity:1;stroke:none;"
90
+ id="text2744"
91
+ xml:space="preserve" />
92
+ <text
93
+ id="text2752"
94
+ y="26.987499"
95
+ x="35.983334"
96
+ style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
97
+ xml:space="preserve"><tspan
98
+ style="stroke-width:0.264583"
99
+ y="26.987499"
100
+ x="35.983334"
101
+ id="tspan2750"
102
+ sodipodi:role="line" /></text>
103
+ <text
104
+ transform="scale(0.99994519,1.0000548)"
105
+ id="text2758"
106
+ y="98.652382"
107
+ x="112.43309"
108
+ style="font-style:normal;font-weight:normal;font-size:95.8669px;line-height:0;font-family:sans-serif;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.264216"
109
+ xml:space="preserve"><tspan
110
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:95.8669px;line-height:1;font-family:'Noto Sans';-inkscape-font-specification:'Noto Sans';fill:#000000;fill-opacity:1;stroke-width:0.264216"
111
+ y="98.652382"
112
+ x="112.43309"
113
+ id="tspan2756"
114
+ sodipodi:role="line"><tspan
115
+ id="tspan3014"
116
+ style="fill:#ffffff;fill-opacity:1">unit</tspan><tspan
117
+ id="tspan3000"
118
+ style="fill:#808080;fill-opacity:1">.</tspan><tspan
119
+ id="tspan3016"
120
+ style="fill:#ffffff;fill-opacity:1">ts</tspan></tspan></text>
121
+ <text
122
+ style="fill:black;fill-opacity:1;line-height:1.25;stroke:none;font-family:sans-serif;font-style:normal;font-weight:normal;font-size:40px;white-space:pre;shape-inside:url(#rect2858);"
123
+ id="text2856"
124
+ xml:space="preserve" />
125
+ </g>
126
+ <g
127
+ inkscape:label="Layer 2"
128
+ id="layer2"
129
+ inkscape:groupmode="layer">
130
+ <g
131
+ transform="matrix(-3.7140083,0,0,3.7296903,884.38712,-159.89914)"
132
+ style="font-style:normal;font-weight:normal;font-size:50.8px;line-height:1.25;font-family:sans-serif;fill:#bfbfbf;fill-opacity:1;stroke:none;stroke-width:0.264583"
133
+ id="text2766-0"
134
+ aria-label="🗸">
135
+ <path
136
+ sodipodi:nodetypes="ccsccccc"
137
+ id="path2805"
138
+ style="font-size:50.8px;fill:#bfbfbf;fill-opacity:1;stroke-width:0.264583"
139
+ d="m 231.8494,43.408198 0.74414,1.289843 c -4.84518,3.423047 -9.33483,7.755599 -13.46894,12.997656 -4.13412,5.242057 -7.11895,10.376628 -8.9545,15.403711 l -1.0914,0.719336 c -0.94258,0.611849 -1.75287,1.223698 -2.43086,1.835547 -1.21639,-4.400349 7.20052,-16.248511 12.05508,-21.480859 4.15065,-4.415235 8.53281,-8.003646 13.14648,-10.765234 z" />
140
+ </g>
141
+ <text
142
+ transform="scale(0.99789547,1.002109)"
143
+ xml:space="preserve"
144
+ style="font-style:normal;font-weight:normal;font-size:189.07px;line-height:1.25;font-family:sans-serif;fill:#538d43;fill-opacity:1;stroke:none;stroke-width:0.984736"
145
+ x="-11.659009"
146
+ y="150.47635"
147
+ id="text2766"><tspan
148
+ sodipodi:role="line"
149
+ id="tspan2764"
150
+ x="-11.659009"
151
+ y="150.47635"
152
+ style="font-size:189.07px;fill:#538d43;fill-opacity:1;stroke-width:0.984736">🗸</tspan></text>
153
+ </g>
154
+ </svg>
package/package.json CHANGED
@@ -1,30 +1,36 @@
1
1
  {
2
2
  "name": "xunit.ts",
3
- "version": "0.12.0",
3
+ "version": "1.0.1",
4
4
  "description": "A unit testing framework for TypeScript, following standard xUnit patterns",
5
5
  "main": "dist/xunit.js",
6
6
  "author": "ecoAPM LLC",
7
+ "homepage": "https://github.com/ecoAPM/xunit.ts",
8
+ "bugs": "https://github.com/ecoAPM/xunit.ts/issues",
7
9
  "license": "MIT",
8
10
  "dependencies": {
9
11
  "colors": "1.4.0",
10
12
  "command-line-args": "5.2.0",
11
13
  "command-line-usage": "6.1.1",
12
14
  "lodash.isequal": "4.5.0",
13
- "typescript": "4.3.5",
14
- "xml": "^1.0.1"
15
+ "typescript": "4.5.2",
16
+ "xml": "1.0.1"
15
17
  },
16
18
  "devDependencies": {
17
- "@types/command-line-args": "^5.0.1",
18
- "@types/command-line-usage": "^5.0.2",
19
+ "@microsoft/tsdoc": "0.13.2",
20
+ "@types/command-line-args": "5.2.0",
21
+ "@types/command-line-usage": "5.0.2",
19
22
  "@types/lodash.isequal": "4.5.5",
20
- "@types/node": "16.4.13",
21
- "@types/xml": "^1.0.6",
22
- "ts-mockito": "2.6.1"
23
+ "@types/node": "16.11.10",
24
+ "@types/xml": "1.0.6",
25
+ "notosans": "5.0.0",
26
+ "ts-mockito": "2.6.1",
27
+ "ts-node": "10.4.0"
23
28
  },
24
29
  "scripts": {
25
30
  "clean": "rm -rf dist",
26
31
  "build": "tsc",
27
- "test": "node dist/cli.js dist/tests"
32
+ "test": "node dist/cli.js dist/tests",
33
+ "tsdoc": "cp -r node_modules/notosans/* docs/assets && ts-node tsdoc.ts"
28
34
  },
29
35
  "bin": {
30
36
  "xunit": "dist/cli.js"
@@ -1,6 +1,6 @@
1
1
  sonar.organization=ecoapm
2
2
  sonar.projectKey=ecoAPM_xunit.ts
3
- sonar.sources=src
3
+ sonar.sources=src,TSDoc
4
4
  sonar.tests=tests
5
5
  sonar.testExecutionReportPaths=sonar.xml
6
6
  sonar.javascript.lcov.reportPaths=coverage/lcov.info
@@ -1,6 +1,21 @@
1
1
  import { AssertionError } from "assert";
2
2
 
3
- export default function Contains<T>(needle: T, haystack: T[], message?: string) {
3
+ /**
4
+ * Asserts that an array contains a given element
5
+ *
6
+ * @remarks
7
+ * Passes if array `haystack` contains an element with a value of `needle`
8
+ *
9
+ * Fails if array `haystack` does not contain an element with a value of `needle`
10
+ *
11
+ * @param needle the element to find
12
+ * @param haystack the array to search
13
+ * @param message (optional) message to display on failure
14
+ *
15
+ * @example
16
+ * this.assert.contains(needle, haystack);
17
+ */
18
+ export default function Contains<T>(needle: T, haystack: ReadonlyArray<T>, message?: string) {
4
19
  if(haystack.includes(needle)) {
5
20
  return;
6
21
  }
@@ -1,6 +1,21 @@
1
1
  import { AssertionError } from "assert";
2
2
 
3
- export default function Count(expected: number, array: any[], message?: string) {
3
+ /**
4
+ * Asserts that an array contains a certain number of elements
5
+ *
6
+ * @remarks
7
+ * Passes if `array` contains `expected` number of elements
8
+ *
9
+ * Fails if `array` does not contain `expected` number of elements
10
+ *
11
+ * @param expected the number of array elements expected
12
+ * @param array the array to check the length of
13
+ * @param message (optional) message to display on failure
14
+ *
15
+ * @example
16
+ * this.assert.count(expected, array);
17
+ */
18
+ export default function Count(expected: number, array: ReadonlyArray<any>, message?: string) {
4
19
  if(array.length === expected) {
5
20
  return;
6
21
  }