@japa/runner 3.0.0-8 → 3.0.0-9

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 (74) hide show
  1. package/build/examples/dot.d.ts +1 -0
  2. package/build/examples/dot.js +11 -0
  3. package/build/examples/ndjson.d.ts +1 -0
  4. package/build/examples/ndjson.js +11 -0
  5. package/build/examples/spec.d.ts +1 -0
  6. package/build/examples/spec.js +11 -0
  7. package/build/factories/create_diverse_tests.d.ts +6 -0
  8. package/build/factories/create_diverse_tests.js +106 -0
  9. package/build/factories/main.d.ts +5 -42
  10. package/build/factories/main.js +24 -208
  11. package/build/factories/runner.d.ts +26 -0
  12. package/build/factories/runner.js +93 -0
  13. package/build/index.d.ts +9 -14
  14. package/build/index.js +202 -237
  15. package/build/modules/core/main.d.ts +63 -3
  16. package/build/modules/core/main.js +121 -21
  17. package/build/modules/core/reporters/base.d.ts +41 -0
  18. package/build/modules/core/reporters/base.js +183 -0
  19. package/build/modules/core/types.d.ts +5 -0
  20. package/build/modules/core/types.js +9 -0
  21. package/build/src/cli_parser.d.ts +14 -0
  22. package/build/src/cli_parser.js +75 -0
  23. package/build/src/config_manager.d.ts +18 -0
  24. package/build/src/config_manager.js +168 -0
  25. package/build/src/create_test.d.ts +21 -0
  26. package/build/src/create_test.js +53 -0
  27. package/build/src/debug.d.ts +3 -0
  28. package/build/src/debug.js +10 -0
  29. package/build/src/exceptions_manager.d.ts +19 -0
  30. package/build/src/exceptions_manager.js +85 -0
  31. package/build/src/files_manager.d.ts +18 -0
  32. package/build/src/files_manager.js +57 -0
  33. package/build/src/helpers.d.ts +15 -0
  34. package/build/src/helpers.js +34 -0
  35. package/build/src/hooks.d.ts +20 -0
  36. package/build/src/hooks.js +46 -0
  37. package/build/src/planner.d.ts +25 -0
  38. package/build/src/planner.js +98 -0
  39. package/build/src/plugins/retry.d.ts +20 -0
  40. package/build/src/plugins/retry.js +66 -0
  41. package/build/src/reporters/dot.d.ts +15 -0
  42. package/build/src/reporters/dot.js +41 -0
  43. package/build/src/reporters/main.d.ts +4 -9
  44. package/build/src/reporters/main.js +37 -11
  45. package/build/src/reporters/ndjson.d.ts +15 -0
  46. package/build/src/reporters/ndjson.js +86 -0
  47. package/build/src/reporters/spec.d.ts +13 -0
  48. package/build/src/reporters/spec.js +152 -0
  49. package/build/src/types.d.ts +19 -23
  50. package/build/src/types.js +9 -14
  51. package/build/src/validator.d.ts +30 -0
  52. package/build/src/validator.js +85 -0
  53. package/build/tests/base_reporter.spec.d.ts +1 -0
  54. package/build/tests/base_reporter.spec.js +111 -0
  55. package/build/tests/cli_parser.spec.d.ts +1 -0
  56. package/build/tests/cli_parser.spec.js +265 -0
  57. package/build/tests/config_manager.spec.d.ts +1 -0
  58. package/build/tests/config_manager.spec.js +741 -0
  59. package/build/tests/core.spec.d.ts +1 -0
  60. package/build/tests/core.spec.js +31 -0
  61. package/build/tests/files_manager.spec.d.ts +1 -0
  62. package/build/tests/files_manager.spec.js +153 -0
  63. package/build/tests/planner.spec.d.ts +1 -0
  64. package/build/tests/planner.spec.js +510 -0
  65. package/build/tests/runner.spec.d.ts +1 -0
  66. package/build/tests/runner.spec.js +442 -0
  67. package/build/tests_helpers/main.d.ts +7 -0
  68. package/build/tests_helpers/main.js +34 -0
  69. package/package.json +2 -17
  70. package/build/chunk-7THDHQFT.js +0 -283
  71. package/build/chunk-HN4AVHWN.js +0 -17
  72. package/build/chunk-MCOW34SG.js +0 -269
  73. package/build/chunk-W5IABAQU.js +0 -502
  74. package/build/main-63126780.d.ts +0 -109
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import { dot } from '../src/reporters/main.js';
2
+ import { createDiverseTests, runner } from '../factories/main.js';
3
+ await runner()
4
+ .configure({
5
+ files: [],
6
+ reporters: {
7
+ list: [dot()],
8
+ activated: ['dot'],
9
+ },
10
+ })
11
+ .runSuites(createDiverseTests);
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import { ndjson } from '../src/reporters/main.js';
2
+ import { createDiverseTests, runner } from '../factories/main.js';
3
+ await runner()
4
+ .configure({
5
+ files: [],
6
+ reporters: {
7
+ list: [ndjson()],
8
+ activated: ['ndjson'],
9
+ },
10
+ })
11
+ .runSuites(createDiverseTests);
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import { spec } from '../src/reporters/main.js';
2
+ import { createDiverseTests, runner } from '../factories/main.js';
3
+ await runner()
4
+ .configure({
5
+ files: [],
6
+ reporters: {
7
+ list: [spec()],
8
+ activated: ['spec'],
9
+ },
10
+ })
11
+ .runSuites(createDiverseTests);
@@ -0,0 +1,6 @@
1
+ import { Suite, Emitter, Refiner } from '../modules/core/main.js';
2
+ /**
3
+ * Returns an array of suites with dummy tests reproducting
4
+ * different test behavior
5
+ */
6
+ export declare function createDiverseTests(emitter: Emitter, refiner: Refiner, file?: string): Suite[];
@@ -0,0 +1,106 @@
1
+ import assert from 'node:assert';
2
+ import { Suite } from '../modules/core/main.js';
3
+ import { createTest, createTestGroup } from '../src/create_test.js';
4
+ /**
5
+ * Creates a unit tests suite with bunch of dummy tests
6
+ * reproducing different tests behavior
7
+ */
8
+ function createUnitTestsSuite(emitter, refiner, file) {
9
+ const suite = new Suite('unit', emitter, refiner);
10
+ const group = createTestGroup('Maths#add', emitter, refiner, {
11
+ suite,
12
+ file,
13
+ });
14
+ createTest('A top level test inside a suite', emitter, refiner, {
15
+ suite,
16
+ file,
17
+ }).run(() => { });
18
+ createTest('add two numbers', emitter, refiner, { group, file }).run(() => {
19
+ assert.equal(2 + 2, 4);
20
+ });
21
+ createTest('add three numbers', emitter, refiner, {
22
+ group,
23
+ file,
24
+ }).run(() => {
25
+ assert.equal(2 + 2 + 2, 6);
26
+ });
27
+ createTest('add group of numbers', emitter, refiner, { group, file });
28
+ createTest('use math.js lib', emitter, refiner, { group, file }).skip(true, 'Library work pending');
29
+ createTest('add multiple numbers', emitter, refiner, {
30
+ file,
31
+ group,
32
+ }).run(() => {
33
+ assert.equal(2 + 2 + 2 + 2, 6);
34
+ });
35
+ createTest('add floating numbers', emitter, refiner, { group, file })
36
+ .run(() => {
37
+ assert.equal(2 + 2.2 + 2.1, 6);
38
+ })
39
+ .fails('Have to add support for floating numbers');
40
+ createTest('A test with an error that is not an AssertionError', emitter, refiner, {
41
+ group,
42
+ file,
43
+ }).run(() => {
44
+ throw new Error('This is an error');
45
+ });
46
+ return suite;
47
+ }
48
+ /**
49
+ * Creates a unit functional suite with bunch of dummy tests
50
+ * reproducing different tests behavior
51
+ */
52
+ function createFunctionalTestsSuite(emitter, refiner, file) {
53
+ const suite = new Suite('functional', emitter, refiner);
54
+ const group = createTestGroup('Users/store', emitter, refiner, {
55
+ suite,
56
+ file: file,
57
+ });
58
+ createTest('Validate user data', emitter, refiner, {
59
+ group,
60
+ file: file,
61
+ }).run(() => { });
62
+ createTest('Disallow duplicate emails', emitter, refiner, {
63
+ group,
64
+ file: file,
65
+ }).run(() => { });
66
+ createTest('Disallow duplicate emails across tenants', emitter, refiner, {
67
+ group,
68
+ file: file,
69
+ }).run(() => {
70
+ const users = ['', ''];
71
+ assert.equal(users.length, 1);
72
+ });
73
+ createTest('Normalize email before persisting it', emitter, refiner, {
74
+ group,
75
+ file: file,
76
+ }).skip(true, 'Have to build a normalizer');
77
+ createTest('Send email verification mail', emitter, refiner, {
78
+ group,
79
+ file: file,
80
+ });
81
+ const usersListGroup = createTestGroup('Users/list', emitter, refiner, {
82
+ suite,
83
+ file: file,
84
+ });
85
+ usersListGroup.setup(() => {
86
+ throw new Error('Unable to cleanup database');
87
+ });
88
+ createTest('A test that will never because the group hooks fails', emitter, refiner, {
89
+ group: usersListGroup,
90
+ });
91
+ createTest('A top level test inside functional suite', emitter, refiner, {
92
+ suite,
93
+ file: file,
94
+ }).run(() => { });
95
+ return suite;
96
+ }
97
+ /**
98
+ * Returns an array of suites with dummy tests reproducting
99
+ * different test behavior
100
+ */
101
+ export function createDiverseTests(emitter, refiner, file) {
102
+ return [
103
+ createUnitTestsSuite(emitter, refiner, file),
104
+ createFunctionalTestsSuite(emitter, refiner, file),
105
+ ];
106
+ }
@@ -1,45 +1,8 @@
1
- import { T as TestContext, S as Suite } from '../main-63126780.js';
2
- import { TestExecutor, RunnerSummary, ReporterContract } from '@japa/core/types';
3
- import { Config } from '../src/types.js';
4
- import { Emitter, Refiner } from '@japa/core';
5
- import '@poppinss/hooks/types';
6
-
7
- /**
8
- * Runner factory exposes the API to run dummy suites, groups and tests.
9
- * You might want to use the factory for testing reporters and
10
- * plugins usage
11
- */
12
- declare class RunnerFactory {
13
- #private;
14
- /**
15
- * Configure runner
16
- */
17
- configure(config: Config, argv?: string[]): this;
18
- /**
19
- * Define a custom emitter instance to use
20
- */
21
- useEmitter(emitter: Emitter): this;
22
- /**
23
- * Run a test using the runner
24
- */
25
- runTest(title: string, callback: TestExecutor<TestContext, undefined>): Promise<RunnerSummary>;
26
- /**
27
- * Run dummy tests. You might use
28
- */
29
- runSuites(suites: (emitter: Emitter, refiner: Refiner, file?: string) => Suite[]): Promise<RunnerSummary>;
30
- }
31
-
32
- /**
33
- * Returns an array of suites with dummy tests reproducting
34
- * different test behavior
35
- */
36
- declare function createDiverseTests(emitter: Emitter, refiner: Refiner, file?: string): Suite[];
37
-
1
+ import { ReporterContract } from '../src/types.js';
2
+ import { RunnerFactory } from './runner.js';
38
3
  /**
39
4
  * Create an instance of the runner factory
40
5
  */
41
- declare const runner: () => RunnerFactory;
42
-
43
- declare const syncReporter: ReporterContract;
44
-
45
- export { createDiverseTests, runner, syncReporter };
6
+ export declare const runner: () => RunnerFactory;
7
+ export { createDiverseTests } from './create_diverse_tests.js';
8
+ export declare const syncReporter: ReporterContract;
@@ -1,209 +1,25 @@
1
- import {
2
- CliParser,
3
- ConfigManager,
4
- GlobalHooks,
5
- Planner,
6
- createTest,
7
- createTestGroup
8
- } from "../chunk-W5IABAQU.js";
9
- import "../chunk-7THDHQFT.js";
10
- import {
11
- Emitter,
12
- Runner,
13
- Suite
14
- } from "../chunk-MCOW34SG.js";
15
- import "../chunk-HN4AVHWN.js";
16
-
17
- // factories/runner.ts
18
- import { fileURLToPath } from "node:url";
19
- var RunnerFactory = class {
20
- #emitter = new Emitter();
21
- #config;
22
- #cliArgs;
23
- #file = fileURLToPath(import.meta.url);
24
- get #refiner() {
25
- return this.#config.refiner;
26
- }
27
- /**
28
- * Registers plugins
29
- */
30
- async #registerPlugins(runner2) {
31
- for (let plugin of this.#config.plugins) {
32
- await plugin({
33
- config: this.#config,
34
- runner: runner2,
35
- emitter: this.#emitter,
36
- cliArgs: this.#cliArgs
37
- });
38
- }
39
- }
40
- /**
41
- * Configure runner
42
- */
43
- configure(config, argv) {
44
- this.#cliArgs = new CliParser().parse(argv || []);
45
- this.#config = new ConfigManager(config, this.#cliArgs).hydrate();
46
- return this;
47
- }
48
- /**
49
- * Define a custom emitter instance to use
50
- */
51
- useEmitter(emitter) {
52
- this.#emitter = emitter;
53
- return this;
54
- }
55
- /**
56
- * Run a test using the runner
57
- */
58
- async runTest(title, callback) {
59
- return this.runSuites((emitter, refiner, file) => {
60
- const defaultSuite = new Suite("default", emitter, refiner);
61
- createTest(title, emitter, refiner, {
62
- suite: defaultSuite,
63
- file
64
- }).run(callback);
65
- return [defaultSuite];
66
- });
67
- }
68
- /**
69
- * Run dummy tests. You might use
70
- */
71
- async runSuites(suites) {
72
- const runner2 = new Runner(this.#emitter);
73
- await this.#registerPlugins(runner2);
74
- const { config, reporters, refinerFilters } = await new Planner(this.#config).plan();
75
- const globalHooks = new GlobalHooks();
76
- globalHooks.apply(config);
77
- reporters.forEach((reporter) => {
78
- runner2.registerReporter(reporter);
79
- });
80
- refinerFilters.forEach((filter) => {
81
- config.refiner.add(filter.layer, filter.filters);
82
- });
83
- suites(this.#emitter, this.#refiner, this.#file).forEach((suite) => runner2.add(suite));
84
- await globalHooks.setup(runner2);
85
- await runner2.start();
86
- await runner2.exec();
87
- await runner2.end();
88
- await globalHooks.teardown(null, runner2);
89
- return runner2.getSummary();
90
- }
91
- };
92
-
93
- // factories/create_diverse_tests.ts
94
- import assert from "node:assert";
95
- function createUnitTestsSuite(emitter, refiner, file) {
96
- const suite = new Suite("unit", emitter, refiner);
97
- const group = createTestGroup("Maths#add", emitter, refiner, {
98
- suite,
99
- file
100
- });
101
- createTest("A top level test inside a suite", emitter, refiner, {
102
- suite,
103
- file
104
- }).run(() => {
105
- });
106
- createTest("add two numbers", emitter, refiner, { group, file }).run(() => {
107
- assert.equal(2 + 2, 4);
108
- });
109
- createTest("add three numbers", emitter, refiner, {
110
- group,
111
- file
112
- }).run(() => {
113
- assert.equal(2 + 2 + 2, 6);
114
- });
115
- createTest("add group of numbers", emitter, refiner, { group, file });
116
- createTest("use math.js lib", emitter, refiner, { group, file }).skip(
117
- true,
118
- "Library work pending"
119
- );
120
- createTest("add multiple numbers", emitter, refiner, {
121
- file,
122
- group
123
- }).run(() => {
124
- assert.equal(2 + 2 + 2 + 2, 6);
125
- });
126
- createTest("add floating numbers", emitter, refiner, { group, file }).run(() => {
127
- assert.equal(2 + 2.2 + 2.1, 6);
128
- }).fails("Have to add support for floating numbers");
129
- createTest("A test with an error that is not an AssertionError", emitter, refiner, {
130
- group,
131
- file
132
- }).run(() => {
133
- throw new Error("This is an error");
134
- });
135
- return suite;
136
- }
137
- function createFunctionalTestsSuite(emitter, refiner, file) {
138
- const suite = new Suite("functional", emitter, refiner);
139
- const group = createTestGroup("Users/store", emitter, refiner, {
140
- suite,
141
- file
142
- });
143
- createTest("Validate user data", emitter, refiner, {
144
- group,
145
- file
146
- }).run(() => {
147
- });
148
- createTest("Disallow duplicate emails", emitter, refiner, {
149
- group,
150
- file
151
- }).run(() => {
152
- });
153
- createTest("Disallow duplicate emails across tenants", emitter, refiner, {
154
- group,
155
- file
156
- }).run(() => {
157
- const users = ["", ""];
158
- assert.equal(users.length, 1);
159
- });
160
- createTest("Normalize email before persisting it", emitter, refiner, {
161
- group,
162
- file
163
- }).skip(true, "Have to build a normalizer");
164
- createTest("Send email verification mail", emitter, refiner, {
165
- group,
166
- file
167
- });
168
- const usersListGroup = createTestGroup("Users/list", emitter, refiner, {
169
- suite,
170
- file
171
- });
172
- usersListGroup.setup(() => {
173
- throw new Error("Unable to cleanup database");
174
- });
175
- createTest("A test that will never because the group hooks fails", emitter, refiner, {
176
- group: usersListGroup
177
- });
178
- createTest("A top level test inside functional suite", emitter, refiner, {
179
- suite,
180
- file
181
- }).run(() => {
182
- });
183
- return suite;
184
- }
185
- function createDiverseTests(emitter, refiner, file) {
186
- return [
187
- createUnitTestsSuite(emitter, refiner, file),
188
- createFunctionalTestsSuite(emitter, refiner, file)
189
- ];
190
- }
191
-
192
- // factories/main.ts
193
- var runner = () => new RunnerFactory();
194
- var syncReporter = {
195
- name: "sync",
196
- handler(r, emitter) {
197
- emitter.on("runner:end", function() {
198
- const summary = r.getSummary();
199
- if (summary.hasError) {
200
- throw summary.failureTree[0].children[0].errors[0].error;
201
- }
202
- });
203
- }
204
- };
205
- export {
206
- createDiverseTests,
207
- runner,
208
- syncReporter
1
+ /*
2
+ * @japa/runner
3
+ *
4
+ * (c) Japa
5
+ *
6
+ * For the full copyright and license information, please view the LICENSE
7
+ * file that was distributed with this source code.
8
+ */
9
+ import { RunnerFactory } from './runner.js';
10
+ /**
11
+ * Create an instance of the runner factory
12
+ */
13
+ export const runner = () => new RunnerFactory();
14
+ export { createDiverseTests } from './create_diverse_tests.js';
15
+ export const syncReporter = {
16
+ name: 'sync',
17
+ handler(r, emitter) {
18
+ emitter.on('runner:end', function () {
19
+ const summary = r.getSummary();
20
+ if (summary.hasError) {
21
+ throw summary.failureTree[0].children[0].errors[0].error;
22
+ }
23
+ });
24
+ },
209
25
  };
@@ -0,0 +1,26 @@
1
+ import { Suite, Emitter, TestContext, Refiner } from '../modules/core/main.js';
2
+ import type { Config, TestExecutor, RunnerSummary } from '../src/types.js';
3
+ /**
4
+ * Runner factory exposes the API to run dummy suites, groups and tests.
5
+ * You might want to use the factory for testing reporters and
6
+ * plugins usage
7
+ */
8
+ export declare class RunnerFactory {
9
+ #private;
10
+ /**
11
+ * Configure runner
12
+ */
13
+ configure(config: Config, argv?: string[]): this;
14
+ /**
15
+ * Define a custom emitter instance to use
16
+ */
17
+ useEmitter(emitter: Emitter): this;
18
+ /**
19
+ * Run a test using the runner
20
+ */
21
+ runTest(title: string, callback: TestExecutor<TestContext, undefined>): Promise<RunnerSummary>;
22
+ /**
23
+ * Run dummy tests. You might use
24
+ */
25
+ runSuites(suites: (emitter: Emitter, refiner: Refiner, file?: string) => Suite[]): Promise<RunnerSummary>;
26
+ }
@@ -0,0 +1,93 @@
1
+ /*
2
+ * @japa/runner
3
+ *
4
+ * (c) Japa
5
+ *
6
+ * For the full copyright and license information, please view the LICENSE
7
+ * file that was distributed with this source code.
8
+ */
9
+ import { fileURLToPath } from 'node:url';
10
+ import { Planner } from '../src/planner.js';
11
+ import { GlobalHooks } from '../src/hooks.js';
12
+ import { CliParser } from '../src/cli_parser.js';
13
+ import { createTest } from '../src/create_test.js';
14
+ import { ConfigManager } from '../src/config_manager.js';
15
+ import { Suite, Runner, Emitter } from '../modules/core/main.js';
16
+ /**
17
+ * Runner factory exposes the API to run dummy suites, groups and tests.
18
+ * You might want to use the factory for testing reporters and
19
+ * plugins usage
20
+ */
21
+ export class RunnerFactory {
22
+ #emitter = new Emitter();
23
+ #config;
24
+ #cliArgs;
25
+ #file = fileURLToPath(import.meta.url);
26
+ get #refiner() {
27
+ return this.#config.refiner;
28
+ }
29
+ /**
30
+ * Registers plugins
31
+ */
32
+ async #registerPlugins(runner) {
33
+ for (let plugin of this.#config.plugins) {
34
+ await plugin({
35
+ config: this.#config,
36
+ runner,
37
+ emitter: this.#emitter,
38
+ cliArgs: this.#cliArgs,
39
+ });
40
+ }
41
+ }
42
+ /**
43
+ * Configure runner
44
+ */
45
+ configure(config, argv) {
46
+ this.#cliArgs = new CliParser().parse(argv || []);
47
+ this.#config = new ConfigManager(config, this.#cliArgs).hydrate();
48
+ return this;
49
+ }
50
+ /**
51
+ * Define a custom emitter instance to use
52
+ */
53
+ useEmitter(emitter) {
54
+ this.#emitter = emitter;
55
+ return this;
56
+ }
57
+ /**
58
+ * Run a test using the runner
59
+ */
60
+ async runTest(title, callback) {
61
+ return this.runSuites((emitter, refiner, file) => {
62
+ const defaultSuite = new Suite('default', emitter, refiner);
63
+ createTest(title, emitter, refiner, {
64
+ suite: defaultSuite,
65
+ file: file,
66
+ }).run(callback);
67
+ return [defaultSuite];
68
+ });
69
+ }
70
+ /**
71
+ * Run dummy tests. You might use
72
+ */
73
+ async runSuites(suites) {
74
+ const runner = new Runner(this.#emitter);
75
+ await this.#registerPlugins(runner);
76
+ const { config, reporters, refinerFilters } = await new Planner(this.#config).plan();
77
+ const globalHooks = new GlobalHooks();
78
+ globalHooks.apply(config);
79
+ reporters.forEach((reporter) => {
80
+ runner.registerReporter(reporter);
81
+ });
82
+ refinerFilters.forEach((filter) => {
83
+ config.refiner.add(filter.layer, filter.filters);
84
+ });
85
+ suites(this.#emitter, this.#refiner, this.#file).forEach((suite) => runner.add(suite));
86
+ await globalHooks.setup(runner);
87
+ await runner.start();
88
+ await runner.exec();
89
+ await runner.end();
90
+ await globalHooks.teardown(null, runner);
91
+ return runner.getSummary();
92
+ }
93
+ }
package/build/index.d.ts CHANGED
@@ -1,26 +1,23 @@
1
- import { TestExecutor } from '@japa/core/types';
2
- import { Config } from './src/types.js';
3
- import { T as TestContext, a as Test, G as Group } from './main-63126780.js';
4
- import '@poppinss/hooks/types';
5
- import '@japa/core';
6
-
1
+ import type { TestExecutor } from '@japa/core/types';
2
+ import type { Config } from './src/types.js';
3
+ import { Group, Test, TestContext } from './modules/core/main.js';
7
4
  /**
8
5
  * Create a Japa test. Defining a test without the callback
9
6
  * will create a todo test.
10
7
  */
11
- declare function test(title: string, callback?: TestExecutor<TestContext, undefined>): Test<undefined>;
12
- declare namespace test {
8
+ export declare function test(title: string, callback?: TestExecutor<TestContext, undefined>): Test<undefined>;
9
+ export declare namespace test {
13
10
  var group: (title: string, callback: (group: Group) => void) => void;
14
11
  }
15
12
  /**
16
13
  * Get the test of currently running test
17
14
  */
18
- declare function getActiveTest(): Test<any> | undefined;
15
+ export declare function getActiveTest(): Test<any> | undefined;
19
16
  /**
20
17
  * Make Japa process command line arguments. Later the parsed output
21
18
  * will be used by Japa to compute the configuration
22
19
  */
23
- declare function processCLIArgs(argv: string[]): void;
20
+ export declare function processCLIArgs(argv: string[]): void;
24
21
  /**
25
22
  * Configure the tests runner with inline configuration. You must
26
23
  * call configure method before the run method.
@@ -28,11 +25,9 @@ declare function processCLIArgs(argv: string[]): void;
28
25
  * Do note: The CLI flags will overwrite the options provided
29
26
  * to the configure method.
30
27
  */
31
- declare function configure(options: Config): void;
28
+ export declare function configure(options: Config): void;
32
29
  /**
33
30
  * Execute Japa tests. Calling this function will import the test
34
31
  * files behind the scenes
35
32
  */
36
- declare function run(): Promise<void>;
37
-
38
- export { configure, getActiveTest, processCLIArgs, run, test };
33
+ export declare function run(): Promise<void>;