detox 20.0.13-prerelease.0 → 20.0.14-is-hittable-over-master.0
Sign up to get free protection for your applications and to get access to all the features.
- package/Detox-android/com/wix/detox/{20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar → 20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-javadoc.jar} +0 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-javadoc.jar.md5 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-javadoc.jar.sha1 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-javadoc.jar.sha256 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-javadoc.jar.sha512 +1 -0
- package/Detox-android/com/wix/detox/{20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar → 20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-sources.jar} +0 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-sources.jar.md5 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-sources.jar.sha1 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-sources.jar.sha256 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0-sources.jar.sha512 +1 -0
- package/Detox-android/com/wix/detox/{20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar → 20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.aar} +0 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.aar.md5 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.aar.sha1 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.aar.sha256 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.aar.sha512 +1 -0
- package/Detox-android/com/wix/detox/{20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom → 20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.pom} +1 -1
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.pom.md5 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.pom.sha1 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.pom.sha256 +1 -0
- package/Detox-android/com/wix/detox/20.0.14-is-hittable-over-master.0/detox-20.0.14-is-hittable-over-master.0.pom.sha512 +1 -0
- package/Detox-android/com/wix/detox/maven-metadata.xml +4 -4
- package/Detox-android/com/wix/detox/maven-metadata.xml.md5 +1 -1
- package/Detox-android/com/wix/detox/maven-metadata.xml.sha1 +1 -1
- package/Detox-android/com/wix/detox/maven-metadata.xml.sha256 +1 -1
- package/Detox-android/com/wix/detox/maven-metadata.xml.sha512 +1 -1
- package/Detox-ios-src.tbz +0 -0
- package/Detox-ios.tbz +0 -0
- package/android/detox/proguard-rules-app.pro +2 -4
- package/index.d.ts +4 -4
- package/internals.d.ts +12 -68
- package/local-cli/test.js +4 -4
- package/local-cli/test.test.js +24 -28
- package/local-cli/testCommand/TestRunnerCommand.js +27 -35
- package/local-cli/utils/jestInternals.js +1 -4
- package/package.json +3 -3
- package/runners/jest/reporters/DetoxReporter.js +1 -1
- package/src/DetoxWorker.js +6 -0
- package/src/artifacts/ArtifactsManager.js +18 -0
- package/src/configuration/composeLoggerConfig.js +2 -2
- package/src/configuration/composeRunnerConfig.js +3 -4
- package/src/ipc/SessionState.js +1 -1
- package/src/logger/DetoxLogger.js +6 -4
- package/src/realms/DetoxContext.js +6 -0
- package/src/symbols.js +12 -0
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar.md5 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar.sha1 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar.sha256 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar.sha512 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar.md5 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar.sha1 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar.sha256 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar.sha512 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.md5 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.sha1 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.sha256 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.sha512 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.md5 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.sha1 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.sha256 +0 -1
- package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.sha512 +0 -1
@@ -0,0 +1 @@
|
|
1
|
+
c1ca4220e13310197929f74b9592831b
|
@@ -0,0 +1 @@
|
|
1
|
+
86a688315cade83d4ce5d05c54cf4b0e5ea64afc
|
@@ -0,0 +1 @@
|
|
1
|
+
ab49827e3d43f2731c516d5160686c04262254fc44ef45d7889b6249e39fe2be
|
@@ -0,0 +1 @@
|
|
1
|
+
b6ad4c5187dc36a8e9ccfa339c45fa091a45e719050a604ba3f18a8b6a71b369d17d3ee13c6d6f5de9db09475047567221a6c7fdd7095edacb9316ea295d020b
|
@@ -0,0 +1 @@
|
|
1
|
+
5443bd2a15cfc87be78a060f0f874a38
|
@@ -0,0 +1 @@
|
|
1
|
+
7c4b32daccb31d1f3ae317999e5585dab21ec89a
|
@@ -0,0 +1 @@
|
|
1
|
+
47b831ebfddd79ea8ba2ccc299aa3b9866d1120c70faf2a60b80c4581163237a
|
@@ -0,0 +1 @@
|
|
1
|
+
bd6d43891de0ceb75ba13baaa43e8bef9c26544df29defc7a6387766cd3edd8b456eab6ecc88d28d3ef30e4652e5726ba9c322e54097605cdd09bd192c235474
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
c58bcf2c4a81d085044d69b52af78a5a
|
@@ -0,0 +1 @@
|
|
1
|
+
d04a40498c30936d34cb2e8a41fea10936344a2f
|
@@ -0,0 +1 @@
|
|
1
|
+
4bd349ffd3768c46cd1bc7ce021607e38c08e8e7187a21d27b08aaf53dd52873
|
@@ -0,0 +1 @@
|
|
1
|
+
c5c0556c23c72736ecd14d2227fdb65ddd100c1f47f460a6d1c02ae0a23a1a2774deb598ac56e2b7e6624aa028a3db00c312666233ea730b6bc7ed4863b6ebbf
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<modelVersion>4.0.0</modelVersion>
|
4
4
|
<groupId>com.wix</groupId>
|
5
5
|
<artifactId>detox</artifactId>
|
6
|
-
<version>20.0.
|
6
|
+
<version>20.0.14-is-hittable-over-master.0</version>
|
7
7
|
<packaging>aar</packaging>
|
8
8
|
<name>Detox</name>
|
9
9
|
<description>Gray box end-to-end testing and automation library for mobile apps</description>
|
@@ -0,0 +1 @@
|
|
1
|
+
60100a8ecab6c7d49602bcdb24689c36
|
@@ -0,0 +1 @@
|
|
1
|
+
a6fdadc123557d04d2803080fd3ec3f23b971454
|
@@ -0,0 +1 @@
|
|
1
|
+
7d1bfef3d23865e56b3eb0e9dc238c85b8ceffa879ec1f04d2d8de4c11e3bef2
|
@@ -0,0 +1 @@
|
|
1
|
+
0163b91d3755b0bb41bb9c3b72e105e91a8de0ab7fce975777d445ec9f56dc1bcd00c4dc63f7646dfe00ecbb1a109dc5e664770516a6f201b541773fd9a7bc24
|
@@ -3,11 +3,11 @@
|
|
3
3
|
<groupId>com.wix</groupId>
|
4
4
|
<artifactId>detox</artifactId>
|
5
5
|
<versioning>
|
6
|
-
<latest>20.0.
|
7
|
-
<release>20.0.
|
6
|
+
<latest>20.0.14-is-hittable-over-master.0</latest>
|
7
|
+
<release>20.0.14-is-hittable-over-master.0</release>
|
8
8
|
<versions>
|
9
|
-
<version>20.0.
|
9
|
+
<version>20.0.14-is-hittable-over-master.0</version>
|
10
10
|
</versions>
|
11
|
-
<lastUpdated>
|
11
|
+
<lastUpdated>20221106162428</lastUpdated>
|
12
12
|
</versioning>
|
13
13
|
</metadata>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
36f4a2be3d5428adbd7ef7d9d658caf2
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
e3d9c2e702cf221804d9e08ef5474c31acaa2a97
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
77786aeb086510b2a6cd1ad411cbf3ae648ddd7f66f2265ae53fb2e917e7eb6c
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
551879251459e011fb04bc7be88d05705f47603ee1495f16524386ea26f7b1c4462dbfe6c4b916f6da5499a2d1f6ea98f97714a65e713e8fa9b563e4bc17e075
|
package/Detox-ios-src.tbz
CHANGED
Binary file
|
package/Detox-ios.tbz
CHANGED
Binary file
|
@@ -1,5 +1,4 @@
|
|
1
1
|
-keepattributes InnerClasses, Exceptions
|
2
|
-
|
3
2
|
-keep class com.facebook.react.modules.** { *; }
|
4
3
|
-keep class com.facebook.react.uimanager.** { *; }
|
5
4
|
-keep class com.facebook.react.animated.** { *; }
|
@@ -9,9 +8,8 @@
|
|
9
8
|
-keep class com.facebook.react.ReactInstanceManager** { *; }
|
10
9
|
-keep class com.facebook.react.ReactInstanceEventListener { *; }
|
11
10
|
|
12
|
-
-keep class com.facebook.react.views.slider
|
13
|
-
-keep class com.
|
14
|
-
-keep class com.reactnativecommunity.slider.** { *; }
|
11
|
+
-keep class com.facebook.react.views.slider.ReactSlider { *; }
|
12
|
+
-keep class com.reactnativecommunity.slider.ReactSlider { *; }
|
15
13
|
-keep class com.reactnativecommunity.asyncstorage.** { *; }
|
16
14
|
|
17
15
|
-keep class kotlin.jvm.** { *; }
|
package/index.d.ts
CHANGED
@@ -105,9 +105,9 @@ declare global {
|
|
105
105
|
interface DetoxLoggerConfig {
|
106
106
|
level?: DetoxLogLevel;
|
107
107
|
/**
|
108
|
-
* @default
|
108
|
+
* @default 'sandbox'
|
109
109
|
*/
|
110
|
-
overrideConsole?:
|
110
|
+
overrideConsole?: 'all' | 'sandbox' | 'none';
|
111
111
|
options?: BunyanDebugStreamOptions | ((config: Partial<DetoxLoggerConfig>) => BunyanDebugStreamOptions);
|
112
112
|
}
|
113
113
|
|
@@ -170,9 +170,9 @@ declare global {
|
|
170
170
|
bail?: boolean;
|
171
171
|
/**
|
172
172
|
* Custom handler to process --inspect-brk CLI flag.
|
173
|
-
* Use it when you rely on another test runner than Jest
|
173
|
+
* Use it when you rely on another test runner than Jest.
|
174
174
|
*/
|
175
|
-
inspectBrk?: (config: DetoxTestRunnerConfig) => void;
|
175
|
+
inspectBrk?: boolean | ((config: DetoxTestRunnerConfig) => void);
|
176
176
|
/**
|
177
177
|
* Forward environment variables to the spawned test runner
|
178
178
|
* accordingly to the given CLI argument overrides.
|
package/internals.d.ts
CHANGED
@@ -40,71 +40,18 @@ declare global {
|
|
40
40
|
// endregion
|
41
41
|
|
42
42
|
// region Lifecycle
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
title: string;
|
56
|
-
/** Test name including the ancestor suite titles */
|
57
|
-
fullName: string;
|
58
|
-
/**
|
59
|
-
* N-th time this test is running, if there is a retry mechanism.
|
60
|
-
*
|
61
|
-
* @default 1
|
62
|
-
*/
|
63
|
-
invocations?: number;
|
64
|
-
status: 'running';
|
65
|
-
}): Promise<void>;
|
66
|
-
/**
|
67
|
-
* Reports about an error in the midst of `beforeAll`, `beforeEach`, `afterEach`, `afterAll` or any other hook.
|
68
|
-
*/
|
69
|
-
onHookFailure(event: {
|
70
|
-
error: Error | string;
|
71
|
-
/**
|
72
|
-
* @example 'beforeAll'
|
73
|
-
* @example 'afterEach'
|
74
|
-
*/
|
75
|
-
hook: string;
|
76
|
-
}): Promise<void>;
|
77
|
-
/**
|
78
|
-
* Reports about an error in the midst of a test function, `test` or `it`.
|
79
|
-
*/
|
80
|
-
onTestFnFailure(event: {
|
81
|
-
error: Error | string;
|
82
|
-
}): Promise<void>;
|
83
|
-
/**
|
84
|
-
* Reports the final status of the test, `passed` or `failed`.
|
85
|
-
*/
|
86
|
-
onTestDone(event: {
|
87
|
-
/** Test name */
|
88
|
-
title: string;
|
89
|
-
/** Test name including the ancestor suite titles */
|
90
|
-
fullName: string;
|
91
|
-
/**
|
92
|
-
* N-th time this test is running, if there is a retry mechanism.
|
93
|
-
*
|
94
|
-
* @default 1
|
95
|
-
*/
|
96
|
-
invocations?: number;
|
97
|
-
status: 'passed' | 'failed';
|
98
|
-
/** Whether a timeout was the reason for why the test failed. */
|
99
|
-
timedOut?: boolean;
|
100
|
-
}): Promise<void>;
|
101
|
-
/**
|
102
|
-
* Reports that the test runner has finished executing a test suite, e.g. all the `afterAll` hooks have been executed or the last test has finished running.
|
103
|
-
*/
|
104
|
-
onRunDescribeFinish(event: {
|
105
|
-
/** Test suite name */
|
106
|
-
name: string;
|
107
|
-
}): Promise<void>;
|
43
|
+
onRunStart(event: unknown): Promise<void>;
|
44
|
+
onRunDescribeStart(event: unknown): Promise<void>;
|
45
|
+
onTestStart(event: unknown): Promise<void>;
|
46
|
+
onHookStart(event: unknown): Promise<void>;
|
47
|
+
onHookFailure(event: unknown): Promise<void>;
|
48
|
+
onHookSuccess(event: unknown): Promise<void>;
|
49
|
+
onTestFnStart(event: unknown): Promise<void>;
|
50
|
+
onTestFnFailure(event: unknown): Promise<void>;
|
51
|
+
onTestFnSuccess(event: unknown): Promise<void>;
|
52
|
+
onTestDone(event: unknown): Promise<void>;
|
53
|
+
onRunDescribeFinish(event: unknown): Promise<void>;
|
54
|
+
onRunFinish(event: unknown): Promise<void>;
|
108
55
|
|
109
56
|
/**
|
110
57
|
* Reports to Detox CLI about passed and failed test files.
|
@@ -140,9 +87,6 @@ declare global {
|
|
140
87
|
|
141
88
|
type DetoxInitOptions = {
|
142
89
|
cwd: string;
|
143
|
-
/**
|
144
|
-
* @internal
|
145
|
-
*/
|
146
90
|
argv: Record<string, unknown>;
|
147
91
|
testRunnerArgv: Record<string, unknown>;
|
148
92
|
override: Partial<Detox.DetoxConfig>;
|
package/local-cli/test.js
CHANGED
@@ -16,14 +16,14 @@ module.exports.handler = async function test({ detoxArgs, runnerArgs }) {
|
|
16
16
|
};
|
17
17
|
|
18
18
|
const config = await detox.resolveConfig(opts);
|
19
|
-
if (!
|
19
|
+
if (!config.testRunner.inspectBrk) {
|
20
20
|
await detox.init(opts);
|
21
21
|
}
|
22
22
|
|
23
23
|
const runnerCommand = new TestRunnerCommand()
|
24
|
-
.setDeviceConfig(config.device)
|
25
|
-
.replicateCLIConfig(config.cli)
|
26
|
-
.setRunnerConfig(config.testRunner);
|
24
|
+
.setDeviceConfig(detox.config.device)
|
25
|
+
.replicateCLIConfig(detox.config.cli)
|
26
|
+
.setRunnerConfig(detox.config.testRunner);
|
27
27
|
|
28
28
|
await runnerCommand.execute();
|
29
29
|
} finally {
|
package/local-cli/test.test.js
CHANGED
@@ -52,7 +52,6 @@ describe('CLI', () => {
|
|
52
52
|
$0: os.platform() === 'win32' ? `node ${executable}` : executable,
|
53
53
|
config: 'e2e/config.json'
|
54
54
|
},
|
55
|
-
forwardEnv: true,
|
56
55
|
},
|
57
56
|
configurations: {
|
58
57
|
single: {
|
@@ -115,14 +114,11 @@ describe('CLI', () => {
|
|
115
114
|
});
|
116
115
|
|
117
116
|
test('should not override environment variables', () => {
|
118
|
-
expect(cliCall().env).toEqual({
|
119
|
-
DETOX_CONFIG_PATH: expect.any(String),
|
120
|
-
DETOX_CONFIG_SNAPSHOT_PATH: expect.any(String)
|
121
|
-
});
|
117
|
+
expect(cliCall().env).toEqual({ DETOX_CONFIG_SNAPSHOT_PATH: expect.any(String) });
|
122
118
|
});
|
123
119
|
|
124
120
|
test('should hint essential environment variables', () => {
|
125
|
-
expect(cliCall().fullCommand).toMatch(
|
121
|
+
expect(cliCall().fullCommand).toMatch(/^DETOX_CONFIG_PATH=.*\bexecutable/);
|
126
122
|
});
|
127
123
|
});
|
128
124
|
|
@@ -139,7 +135,7 @@ describe('CLI', () => {
|
|
139
135
|
|
140
136
|
test.each([['-l'], ['--loglevel']])('%s <value> should be passed as environment variable', async (__loglevel) => {
|
141
137
|
await run(__loglevel, 'trace');
|
142
|
-
expect(cliCall().env).toHaveProperty('DETOX_LOGLEVEL');
|
138
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_LOGLEVEL');
|
143
139
|
expect(cliCall().fullCommand).toMatch(/ DETOX_LOGLEVEL="trace" /);
|
144
140
|
});
|
145
141
|
|
@@ -196,8 +192,8 @@ describe('CLI', () => {
|
|
196
192
|
test.each([['-R'], ['--retries']])('%s <value> should not bail by default', async (__retries) => {
|
197
193
|
await run(__retries, 2).catch(_.noop);
|
198
194
|
|
195
|
+
expect(cliCall(0).env).not.toHaveProperty('DETOX_RERUN_INDEX');
|
199
196
|
expect(cliCall(0).argv).toEqual([expect.stringMatching(/executable$/), '--config', 'e2e/config.json']);
|
200
|
-
expect(cliCall(1).env).not.toHaveProperty('DETOX_RERUN_INDEX');
|
201
197
|
expect(cliCall(1).argv).toEqual([expect.stringMatching(/executable$/), '--config', 'e2e/config.json', 'e2e/failing1.test.js']);
|
202
198
|
// note that it does not take the permanently failed test
|
203
199
|
});
|
@@ -238,111 +234,111 @@ describe('CLI', () => {
|
|
238
234
|
|
239
235
|
test.each([['-r'], ['--reuse']])('%s <value> should be passed as environment variable', async (__reuse) => {
|
240
236
|
await run(__reuse);
|
241
|
-
expect(cliCall().env).toHaveProperty('DETOX_REUSE');
|
237
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_REUSE');
|
242
238
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_REUSE=true /);
|
243
239
|
});
|
244
240
|
|
245
241
|
test.each([['-u'], ['--cleanup']])('%s <value> should be passed as environment variable', async (__cleanup) => {
|
246
242
|
await run(__cleanup);
|
247
|
-
expect(cliCall().env).toHaveProperty('DETOX_CLEANUP');
|
243
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_CLEANUP');
|
248
244
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_CLEANUP=true /);
|
249
245
|
});
|
250
246
|
|
251
247
|
test.each([['-d'], ['--debug-synchronization']])('%s <value> should be passed as environment variable', async (__debug_synchronization) => {
|
252
248
|
await run(__debug_synchronization, 5000);
|
253
|
-
expect(cliCall().env).toHaveProperty('DETOX_DEBUG_SYNCHRONIZATION');
|
249
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_DEBUG_SYNCHRONIZATION');
|
254
250
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_DEBUG_SYNCHRONIZATION=5000 /);
|
255
251
|
});
|
256
252
|
|
257
253
|
test.each([['-d'], ['--debug-synchronization']])('%s <value> should be passed as 0 when given false', async (__debug_synchronization) => {
|
258
254
|
await run(__debug_synchronization, false);
|
259
|
-
expect(cliCall().env).toHaveProperty('DETOX_DEBUG_SYNCHRONIZATION');
|
255
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_DEBUG_SYNCHRONIZATION');
|
260
256
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_DEBUG_SYNCHRONIZATION=0 /);
|
261
257
|
});
|
262
258
|
|
263
259
|
test.each([['-d'], ['--debug-synchronization']])('%s <value> should have default value = 3000', async (__debug_synchronization) => {
|
264
260
|
await run(`${__debug_synchronization}`);
|
265
|
-
expect(cliCall().env).toHaveProperty('DETOX_DEBUG_SYNCHRONIZATION');
|
261
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_DEBUG_SYNCHRONIZATION');
|
266
262
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_DEBUG_SYNCHRONIZATION=3000 /);
|
267
263
|
});
|
268
264
|
|
269
265
|
test.each([['-a'], ['--artifacts-location']])('%s <value> should be passed as environment variable', async (__artifacts_location) => {
|
270
266
|
await run(__artifacts_location, '/tmp');
|
271
|
-
expect(cliCall().env).toHaveProperty('DETOX_ARTIFACTS_LOCATION');
|
267
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_ARTIFACTS_LOCATION');
|
272
268
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_ARTIFACTS_LOCATION="\/tmp" /);
|
273
269
|
});
|
274
270
|
|
275
271
|
test('--record-logs <value> should be passed as environment variable', async () => {
|
276
272
|
await run('--record-logs', 'all');
|
277
|
-
expect(cliCall().env).toHaveProperty('DETOX_RECORD_LOGS');
|
273
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_RECORD_LOGS');
|
278
274
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_RECORD_LOGS="all" /);
|
279
275
|
});
|
280
276
|
|
281
277
|
test('--take-screenshots <value> should be passed as environment variable', async () => {
|
282
278
|
await run('--take-screenshots', 'failing');
|
283
|
-
expect(cliCall().env).toHaveProperty('DETOX_TAKE_SCREENSHOTS');
|
279
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_TAKE_SCREENSHOTS');
|
284
280
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_TAKE_SCREENSHOTS="failing" /);
|
285
281
|
});
|
286
282
|
|
287
283
|
test('--record-videos <value> should be passed as environment variable', async () => {
|
288
284
|
await run('--record-videos', 'failing');
|
289
|
-
expect(cliCall().env).toHaveProperty('DETOX_RECORD_VIDEOS');
|
285
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_RECORD_VIDEOS');
|
290
286
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_RECORD_VIDEOS="failing" /);
|
291
287
|
});
|
292
288
|
|
293
289
|
test('--record-performance <value> should be passed as environment variable', async () => {
|
294
290
|
await run('--record-performance', 'all');
|
295
|
-
expect(cliCall().env).toHaveProperty('DETOX_RECORD_PERFORMANCE');
|
291
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_RECORD_PERFORMANCE');
|
296
292
|
expect(cliCall().fullCommand).toMatch(/\DETOX_RECORD_PERFORMANCE="all" /);
|
297
293
|
});
|
298
294
|
|
299
295
|
test('--capture-view-hierarchy <value> should be passed as environment variable', async () => {
|
300
296
|
await run('--capture-view-hierarchy', 'enabled');
|
301
|
-
expect(cliCall().env).toHaveProperty('DETOX_CAPTURE_VIEW_HIERARCHY');
|
297
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_CAPTURE_VIEW_HIERARCHY');
|
302
298
|
expect(cliCall().fullCommand).toMatch(/\DETOX_CAPTURE_VIEW_HIERARCHY="enabled" /);
|
303
299
|
});
|
304
300
|
|
305
301
|
test('--jest-report-specs, set explicitly, should be passed as an environment variable', async () => {
|
306
302
|
await run('--jest-report-specs');
|
307
|
-
expect(cliCall().env).toHaveProperty('DETOX_REPORT_SPECS');
|
303
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_REPORT_SPECS');
|
308
304
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_REPORT_SPECS=true /);
|
309
305
|
});
|
310
306
|
|
311
307
|
test.each([['-H'], ['--headless']])('%s <value> should be passed as environment variable', async (__headless) => {
|
312
308
|
await run(__headless);
|
313
|
-
expect(cliCall().env).toHaveProperty('DETOX_HEADLESS');
|
309
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_HEADLESS');
|
314
310
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_HEADLESS=true /);
|
315
311
|
});
|
316
312
|
|
317
313
|
test('--gpu <value> should be passed as environment variable', async () => {
|
318
314
|
await run('--gpu', 'angle_indirect');
|
319
|
-
expect(cliCall().env).toHaveProperty('DETOX_GPU');
|
315
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_GPU');
|
320
316
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_GPU="angle_indirect" /);
|
321
317
|
});
|
322
318
|
|
323
319
|
test('--device-boot-args should be passed as an environment variable (without deprecation warnings)', async () => {
|
324
320
|
await run('--device-boot-args="--verbose"');
|
325
|
-
expect(cliCall().env).toHaveProperty('DETOX_DEVICE_BOOT_ARGS');
|
321
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_DEVICE_BOOT_ARGS');
|
326
322
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_DEVICE_BOOT_ARGS="--verbose" /);
|
327
323
|
expect(logger().warn).not.toHaveBeenCalledWith(DEVICE_LAUNCH_ARGS_DEPRECATION);
|
328
324
|
});
|
329
325
|
|
330
326
|
test('--device-launch-args should serve as a deprecated alias to --device-boot-args', async () => {
|
331
327
|
await run(`--device-launch-args="--verbose"`);
|
332
|
-
expect(cliCall().env).toHaveProperty('DETOX_DEVICE_BOOT_ARGS');
|
328
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_DEVICE_BOOT_ARGS');
|
333
329
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_DEVICE_BOOT_ARGS="--verbose" /);
|
334
330
|
expect(logger().warn).toHaveBeenCalledWith(DEVICE_LAUNCH_ARGS_DEPRECATION);
|
335
331
|
});
|
336
332
|
|
337
333
|
test('--app-launch-args should be passed as an environment variable', async () => {
|
338
334
|
await run(`--app-launch-args="--debug yes"`);
|
339
|
-
expect(cliCall().env).toHaveProperty('DETOX_APP_LAUNCH_ARGS');
|
335
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_APP_LAUNCH_ARGS');
|
340
336
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_APP_LAUNCH_ARGS="--debug yes" /);
|
341
337
|
});
|
342
338
|
|
343
339
|
test('--use-custom-logger false should be prevent passing environment variable', async () => {
|
344
340
|
await run(`--use-custom-logger=false`);
|
345
|
-
expect(cliCall().env).toHaveProperty('DETOX_USE_CUSTOM_LOGGER');
|
341
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_USE_CUSTOM_LOGGER');
|
346
342
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_USE_CUSTOM_LOGGER=false /);
|
347
343
|
});
|
348
344
|
|
@@ -356,13 +352,13 @@ describe('CLI', () => {
|
|
356
352
|
test('--force-adb-install should be passed as environment variable', async () => {
|
357
353
|
singleConfig().device.type = 'android.emulator';
|
358
354
|
await run(`--force-adb-install`);
|
359
|
-
expect(cliCall().env).toHaveProperty('DETOX_FORCE_ADB_INSTALL');
|
355
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_FORCE_ADB_INSTALL');
|
360
356
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_FORCE_ADB_INSTALL=true /);
|
361
357
|
});
|
362
358
|
|
363
359
|
test.each([['-n'], ['--device-name']])('%s <value> should be passed as environment variable', async (__device_name) => {
|
364
360
|
await run(__device_name, 'TheDevice');
|
365
|
-
expect(cliCall().env).toHaveProperty('DETOX_DEVICE_NAME');
|
361
|
+
expect(cliCall().env).not.toHaveProperty('DETOX_DEVICE_NAME');
|
366
362
|
expect(cliCall().fullCommand).toMatch(/\bDETOX_DEVICE_NAME="TheDevice" /);
|
367
363
|
});
|
368
364
|
|
@@ -13,20 +13,43 @@ const { escapeSpaces } = require('../../src/utils/shellUtils');
|
|
13
13
|
class TestRunnerCommand {
|
14
14
|
constructor() {
|
15
15
|
this._argv = {};
|
16
|
-
this.
|
16
|
+
this._env = {};
|
17
17
|
this._envHint = {};
|
18
|
-
this._envFwd = {};
|
19
18
|
this._retries = 0;
|
20
19
|
/** @type {Detox.DetoxDeviceConfig} */
|
21
20
|
this._deviceConfig = null;
|
22
21
|
}
|
23
22
|
|
23
|
+
/**
|
24
|
+
* @param {Detox.DetoxDeviceConfig} config
|
25
|
+
* @returns {this}
|
26
|
+
*/
|
27
|
+
setDeviceConfig(config) {
|
28
|
+
this._deviceConfig = config;
|
29
|
+
|
30
|
+
return this;
|
31
|
+
}
|
32
|
+
|
33
|
+
/**
|
34
|
+
* @param {Detox.DetoxTestRunnerConfig} config
|
35
|
+
* @returns {this}
|
36
|
+
*/
|
37
|
+
setRunnerConfig(config) {
|
38
|
+
this._argv = config.args;
|
39
|
+
this._retries = config.inspectBrk ? 0 : config.retries;
|
40
|
+
if (config.inspectBrk || config.forwardEnv) {
|
41
|
+
this._env = this._envHint;
|
42
|
+
}
|
43
|
+
|
44
|
+
return this;
|
45
|
+
}
|
46
|
+
|
24
47
|
/**
|
25
48
|
* @param {Partial<Readonly<DetoxInternals.CLIConfig>>} cliConfig
|
26
49
|
* @returns {this}
|
27
50
|
*/
|
28
51
|
replicateCLIConfig(cliConfig) {
|
29
|
-
this.
|
52
|
+
this._envHint = _.omitBy({
|
30
53
|
DETOX_APP_LAUNCH_ARGS: cliConfig.appLaunchArgs,
|
31
54
|
DETOX_ARTIFACTS_LOCATION: cliConfig.artifactsLocation,
|
32
55
|
DETOX_CAPTURE_VIEW_HIERARCHY: cliConfig.captureViewHierarchy,
|
@@ -54,37 +77,6 @@ class TestRunnerCommand {
|
|
54
77
|
DETOX_USE_CUSTOM_LOGGER: cliConfig.useCustomLogger,
|
55
78
|
}, _.isUndefined);
|
56
79
|
|
57
|
-
this._envHint = _(process.env)
|
58
|
-
.mapKeys((_value, key) => key.toUpperCase())
|
59
|
-
.pickBy((_value, key) => key.startsWith('DETOX_'))
|
60
|
-
.omit(['DETOX_CONFIG_SNAPSHOT_PATH'])
|
61
|
-
.value();
|
62
|
-
|
63
|
-
return this;
|
64
|
-
}
|
65
|
-
|
66
|
-
/**
|
67
|
-
* @param {Detox.DetoxDeviceConfig} config
|
68
|
-
* @returns {this}
|
69
|
-
*/
|
70
|
-
setDeviceConfig(config) {
|
71
|
-
this._deviceConfig = config;
|
72
|
-
|
73
|
-
return this;
|
74
|
-
}
|
75
|
-
|
76
|
-
/**
|
77
|
-
* @param {Detox.DetoxTestRunnerConfig} config
|
78
|
-
* @returns {this}
|
79
|
-
*/
|
80
|
-
setRunnerConfig(config) {
|
81
|
-
this._argv = config.args;
|
82
|
-
this._retries = config.inspectBrk ? 0 : config.retries;
|
83
|
-
if (config.forwardEnv) {
|
84
|
-
this._envFwd = this._cli2env;
|
85
|
-
Object.assign(this._envHint, this._cli2env);
|
86
|
-
}
|
87
|
-
|
88
80
|
return this;
|
89
81
|
}
|
90
82
|
|
@@ -144,7 +136,7 @@ class TestRunnerCommand {
|
|
144
136
|
stdio: 'inherit',
|
145
137
|
env: _({})
|
146
138
|
.assign(process.env)
|
147
|
-
.assign(this.
|
139
|
+
.assign(this._env)
|
148
140
|
.omitBy(_.isUndefined)
|
149
141
|
.tap(prependNodeModulesBinToPATH)
|
150
142
|
.value()
|
@@ -4,7 +4,6 @@ const path = require('path');
|
|
4
4
|
|
5
5
|
const _ = require('lodash');
|
6
6
|
const resolveFrom = require('resolve-from');
|
7
|
-
const semver = require('semver');
|
8
7
|
|
9
8
|
const { DetoxRuntimeError } = require('../../src/errors');
|
10
9
|
|
@@ -51,9 +50,7 @@ function resolveJestCliArgs() {
|
|
51
50
|
|
52
51
|
try {
|
53
52
|
const jestCliManifest = resolveJestDependency(jestLocation, 'jest-cli/package.json');
|
54
|
-
const
|
55
|
-
const argsJsFilePath = semver.gt(jestCliVersion, '29.1.2') ? 'build/args.js' : 'build/cli/args.js';
|
56
|
-
const argsJsFile = path.join(path.dirname(jestCliManifest), argsJsFilePath);
|
53
|
+
const argsJsFile = path.join(path.dirname(jestCliManifest), 'build/cli/args.js');
|
57
54
|
|
58
55
|
return require(argsJsFile);
|
59
56
|
} catch (e) {
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "detox",
|
3
3
|
"description": "E2E tests and automation for mobile",
|
4
|
-
"version": "20.0.
|
4
|
+
"version": "20.0.14-is-hittable-over-master.0",
|
5
5
|
"bin": {
|
6
6
|
"detox": "local-cli/cli.js"
|
7
7
|
},
|
@@ -92,7 +92,7 @@
|
|
92
92
|
"yargs-unparser": "^2.0.0"
|
93
93
|
},
|
94
94
|
"peerDependencies": {
|
95
|
-
"jest": "
|
95
|
+
"jest": "28.x.x || ^27.2.5"
|
96
96
|
},
|
97
97
|
"peerDependenciesMeta": {
|
98
98
|
"jest": {
|
@@ -184,5 +184,5 @@
|
|
184
184
|
}
|
185
185
|
}
|
186
186
|
},
|
187
|
-
"gitHead": "
|
187
|
+
"gitHead": "90070ba2a879f7215a3d1d864791ac1d85a177d3"
|
188
188
|
}
|
@@ -17,7 +17,7 @@ class DetoxReporter extends JestVerboseReporter {
|
|
17
17
|
testExecError: testResult.testExecError,
|
18
18
|
isPermanentFailure: config.testRunner.jest.retryAfterCircusRetries
|
19
19
|
? false
|
20
|
-
: testResult.testResults.some(r => r.
|
20
|
+
: testResult.testResults.some(r => r.invocations > 1)
|
21
21
|
}]);
|
22
22
|
}
|
23
23
|
}
|
package/src/DetoxWorker.js
CHANGED
@@ -190,6 +190,7 @@ class DetoxWorker {
|
|
190
190
|
return this._context.log;
|
191
191
|
}
|
192
192
|
|
193
|
+
onRunStart = async (...args) => this._artifactsManager.onRunStart(...args);
|
193
194
|
onRunDescribeStart = async (...args) => this._artifactsManager.onRunDescribeStart(...args);
|
194
195
|
onTestStart = async (testSummary) => {
|
195
196
|
if (this._isCleaningUp) return;
|
@@ -204,8 +205,12 @@ class DetoxWorker {
|
|
204
205
|
if (this._isCleaningUp) return;
|
205
206
|
await this._artifactsManager.onTestStart(testSummary);
|
206
207
|
};
|
208
|
+
onHookStart = async (...args) => this._artifactsManager.onHookStart(...args);
|
207
209
|
onHookFailure = async (...args) => this._artifactsManager.onHookFailure(...args);
|
210
|
+
onHookSuccess = async (...args) => this._artifactsManager.onHookSuccess(...args);
|
211
|
+
onTestFnStart = async (...args) => this._artifactsManager.onTestFnStart(...args);
|
208
212
|
onTestFnFailure = async (...args) => this._artifactsManager.onTestFnFailure(...args);
|
213
|
+
onTestFnSuccess = async (...args) => this._artifactsManager.onTestFnSuccess(...args);
|
209
214
|
onTestDone = async (testSummary) => {
|
210
215
|
if (this._isCleaningUp) return;
|
211
216
|
this._validateTestSummary('afterEach', testSummary);
|
@@ -220,6 +225,7 @@ class DetoxWorker {
|
|
220
225
|
});
|
221
226
|
};
|
222
227
|
onRunDescribeFinish = async (...args) => this._artifactsManager.onRunDescribeFinish(...args);
|
228
|
+
onRunFinish = async (...args) => this._artifactsManager.onRunFinish(...args);
|
223
229
|
|
224
230
|
async _reinstallAppsOnDevice() {
|
225
231
|
const appNames = _(this._appsConfig)
|
@@ -32,13 +32,19 @@ class ArtifactsManager extends EventEmitter {
|
|
32
32
|
'onBootDevice',
|
33
33
|
'onCreateExternalArtifact',
|
34
34
|
'onHookFailure',
|
35
|
+
'onHookStart',
|
36
|
+
'onHookSuccess',
|
35
37
|
'onLaunchApp',
|
36
38
|
'onRunDescribeFinish',
|
37
39
|
'onRunDescribeStart',
|
40
|
+
'onRunFinish',
|
41
|
+
'onRunStart',
|
38
42
|
'onShutdownDevice',
|
39
43
|
'onTerminateApp',
|
40
44
|
'onTestDone',
|
41
45
|
'onTestFnFailure',
|
46
|
+
'onTestFnStart',
|
47
|
+
'onTestFnSuccess',
|
42
48
|
'onTestStart',
|
43
49
|
]);
|
44
50
|
}
|
@@ -179,6 +185,8 @@ class ArtifactsManager extends EventEmitter {
|
|
179
185
|
});
|
180
186
|
}
|
181
187
|
|
188
|
+
async onRunStart() {}
|
189
|
+
|
182
190
|
async onRunDescribeStart(suite) {
|
183
191
|
await this._callPlugins('ascending', 'onRunDescribeStart', suite);
|
184
192
|
}
|
@@ -187,14 +195,22 @@ class ArtifactsManager extends EventEmitter {
|
|
187
195
|
await this._callPlugins('ascending', 'onTestStart', testSummary);
|
188
196
|
}
|
189
197
|
|
198
|
+
async onHookStart() {}
|
199
|
+
|
190
200
|
async onHookFailure(testSummary) {
|
191
201
|
await this._callPlugins('plain', 'onHookFailure', testSummary);
|
192
202
|
}
|
193
203
|
|
204
|
+
async onHookSuccess() {}
|
205
|
+
|
206
|
+
async onTestFnStart() {}
|
207
|
+
|
194
208
|
async onTestFnFailure(testSummary) {
|
195
209
|
await this._callPlugins('plain', 'onTestFnFailure', testSummary);
|
196
210
|
}
|
197
211
|
|
212
|
+
async onTestFnSuccess() {}
|
213
|
+
|
198
214
|
async onTestDone(testSummary) {
|
199
215
|
await this._callPlugins('descending', 'onTestDone', testSummary);
|
200
216
|
}
|
@@ -203,6 +219,8 @@ class ArtifactsManager extends EventEmitter {
|
|
203
219
|
await this._callPlugins('descending', 'onRunDescribeFinish', suite);
|
204
220
|
}
|
205
221
|
|
222
|
+
async onRunFinish() {}
|
223
|
+
|
206
224
|
async onBeforeCleanup() {
|
207
225
|
await this._callPlugins('descending', 'onBeforeCleanup');
|
208
226
|
await this._idlePromise;
|
@@ -14,7 +14,7 @@ function composeLoggerConfig(opts) {
|
|
14
14
|
const items = [
|
15
15
|
{
|
16
16
|
level: 'info',
|
17
|
-
overrideConsole:
|
17
|
+
overrideConsole: 'sandbox',
|
18
18
|
options: defaultOptions,
|
19
19
|
},
|
20
20
|
globalConfig.logger,
|
@@ -46,7 +46,7 @@ function adaptCLI(cliConfig) {
|
|
46
46
|
}
|
47
47
|
|
48
48
|
if (cliConfig.useCustomLogger !== undefined) {
|
49
|
-
result.overrideConsole = cliConfig.useCustomLogger;
|
49
|
+
result.overrideConsole = cliConfig.useCustomLogger ? 'all' : 'none';
|
50
50
|
}
|
51
51
|
|
52
52
|
if (cliConfig.noColor) {
|
@@ -56,12 +56,11 @@ function composeRunnerConfig(opts) {
|
|
56
56
|
|
57
57
|
if (typeof merged.inspectBrk === 'function') {
|
58
58
|
if (cliConfig.inspectBrk) {
|
59
|
-
merged.retries = 0;
|
60
|
-
merged.forwardEnv = true;
|
61
59
|
merged.inspectBrk(merged);
|
60
|
+
merged.inspectBrk = true;
|
61
|
+
} else {
|
62
|
+
merged.inspectBrk = false;
|
62
63
|
}
|
63
|
-
|
64
|
-
delete merged.inspectBrk;
|
65
64
|
}
|
66
65
|
|
67
66
|
return merged;
|
package/src/ipc/SessionState.js
CHANGED
@@ -55,7 +55,7 @@ class DetoxLogger {
|
|
55
55
|
|
56
56
|
this._sharedConfig.userConfig = this._sharedConfig.userConfig || {
|
57
57
|
level: 'info',
|
58
|
-
overrideConsole:
|
58
|
+
overrideConsole: 'none',
|
59
59
|
options: {
|
60
60
|
showDate: false,
|
61
61
|
showLoggerName: false,
|
@@ -143,12 +143,14 @@ class DetoxLogger {
|
|
143
143
|
* @internal
|
144
144
|
*/
|
145
145
|
overrideConsole(sandbox) {
|
146
|
-
const
|
147
|
-
if (
|
146
|
+
const option = this.config.overrideConsole;
|
147
|
+
if (option === 'none') {
|
148
148
|
return;
|
149
149
|
}
|
150
150
|
|
151
|
-
|
151
|
+
if ((option === 'sandbox' && sandbox) || option === 'all') {
|
152
|
+
customConsoleLogger.overrideConsoleMethods((sandbox || global).console, this);
|
153
|
+
}
|
152
154
|
}
|
153
155
|
|
154
156
|
/**
|
@@ -80,12 +80,18 @@ class DetoxContext {
|
|
80
80
|
//#endregion
|
81
81
|
|
82
82
|
//#region Internal members
|
83
|
+
[symbols.onRunStart] = (...args) => this[symbols.worker].onRunStart(...args);
|
83
84
|
[symbols.onRunDescribeStart] = (...args) => this[symbols.worker].onRunDescribeStart(...args);
|
84
85
|
[symbols.onTestStart] = (...args) => this[symbols.worker].onTestStart(...args);
|
86
|
+
[symbols.onHookStart] = (...args) => this[symbols.worker].onHookStart(...args);
|
85
87
|
[symbols.onHookFailure] = (...args) => this[symbols.worker].onHookFailure(...args);
|
88
|
+
[symbols.onHookSuccess] = (...args) => this[symbols.worker].onHookSuccess(...args);
|
89
|
+
[symbols.onTestFnStart] = (...args) => this[symbols.worker].onTestFnStart(...args);
|
86
90
|
[symbols.onTestFnFailure] = (...args) => this[symbols.worker].onTestFnFailure(...args);
|
91
|
+
[symbols.onTestFnSuccess] = (...args) => this[symbols.worker].onTestFnSuccess(...args);
|
87
92
|
[symbols.onTestDone] = (...args) => this[symbols.worker].onTestDone(...args);
|
88
93
|
[symbols.onRunDescribeFinish] = (...args) => this[symbols.worker].onRunDescribeFinish(...args);
|
94
|
+
[symbols.onRunFinish] = (...args) => this[symbols.worker].onRunFinish(...args);
|
89
95
|
[symbols.config] = funpermaproxy(() => this[symbols.session].detoxConfig);
|
90
96
|
[symbols.session] = funpermaproxy(() => this[$sessionState]);
|
91
97
|
[symbols.tracing] = Object.freeze({
|
package/src/symbols.js
CHANGED
@@ -7,10 +7,16 @@
|
|
7
7
|
* readonly installWorker: unique symbol;
|
8
8
|
* readonly logger: unique symbol;
|
9
9
|
* readonly onHookFailure: unique symbol;
|
10
|
+
* readonly onHookStart: unique symbol;
|
11
|
+
* readonly onHookSuccess: unique symbol;
|
10
12
|
* readonly onRunDescribeFinish: unique symbol;
|
11
13
|
* readonly onRunDescribeStart: unique symbol;
|
14
|
+
* readonly onRunFinish: unique symbol;
|
15
|
+
* readonly onRunStart: unique symbol;
|
12
16
|
* readonly onTestDone: unique symbol;
|
13
17
|
* readonly onTestFnFailure: unique symbol;
|
18
|
+
* readonly onTestFnStart: unique symbol;
|
19
|
+
* readonly onTestFnSuccess: unique symbol;
|
14
20
|
* readonly onTestStart: unique symbol;
|
15
21
|
* readonly reportTestResults: unique symbol;
|
16
22
|
* readonly resolveConfig: unique symbol;
|
@@ -22,12 +28,18 @@
|
|
22
28
|
*/
|
23
29
|
module.exports = {
|
24
30
|
//#region Lifecycle
|
31
|
+
onRunStart: Symbol('run_start'),
|
25
32
|
onRunDescribeStart: Symbol('run_describe_start'),
|
26
33
|
onTestStart: Symbol('test_start'),
|
34
|
+
onHookStart: Symbol('hook_start'),
|
27
35
|
onHookFailure: Symbol('hook_failure'),
|
36
|
+
onHookSuccess: Symbol('hook_success'),
|
37
|
+
onTestFnStart: Symbol('test_fn_start'),
|
28
38
|
onTestFnFailure: Symbol('test_fn_failure'),
|
39
|
+
onTestFnSuccess: Symbol('test_fn_success'),
|
29
40
|
onTestDone: Symbol('test_done'),
|
30
41
|
onRunDescribeFinish: Symbol('run_describe_finish'),
|
42
|
+
onRunFinish: Symbol('run_finish'),
|
31
43
|
//#endregion
|
32
44
|
|
33
45
|
//#region IPC
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar.md5
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
43636e3328432ab0def8f704399cb9af
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-javadoc.jar.sha1
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
e87aec483ca0f1a8681dd604c172b1496be36552
|
@@ -1 +0,0 @@
|
|
1
|
-
4af74d1ca1aaeaa1d39e5d8911cbd10161b3114367691907d8e1618033d5b3e6
|
@@ -1 +0,0 @@
|
|
1
|
-
52171a50fce017136149bb98c6451148d77e4cf114b3026917dc51a603bd3e0f13aecdacf29a5f69731fa35767a0bd6947dfe4e7d48b16e277b73e5b5cc21619
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar.md5
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
e8e7e3be590ebb3e05a4f2e4c4bfee02
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0-sources.jar.sha1
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
58eb8e948d53b73075a1f5e97f7e1ef87335451d
|
@@ -1 +0,0 @@
|
|
1
|
-
4e2bc47c1bd786a7305e50cf174b2a44b76185b3510f43e6239783aa976f6ed7
|
@@ -1 +0,0 @@
|
|
1
|
-
88399f3c653950bc413629a0801211e0532b1fa8dcc012c37855deb27e5a048b2813c85079e21763f194c76ead892762d2e357b18869a1e3e0d465405f733aa2
|
@@ -1 +0,0 @@
|
|
1
|
-
3bdd1b42fa0f182255a47fcdda8f544c
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.sha1
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
457ae10d202b196ea92bade4a33ce2dbc2f8bb3f
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.sha256
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
52342d1b0d1fae681b2ea1e6f9ac6f6278299ed70d7867fd60b95d63eb7a9ec3
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.aar.sha512
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
5dfa73d84d647fd870a2e915d9943c9502c967abfd89a834ef7dee50a2a77d5a8b0be7b13407a34a6b97cbc10e9ed6f5e608fe7366d5a3041e462e3322d5b10d
|
@@ -1 +0,0 @@
|
|
1
|
-
af38d8520fe68b4005004b263bd44a99
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.sha1
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
4b05c8d532f93162c18be667feb8f603f8a07341
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.sha256
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
70d293de323b61f3f135b127ea949f8536f9a9693c13f4c496a68ceba31b2c2d
|
package/Detox-android/com/wix/detox/20.0.13-prerelease.0/detox-20.0.13-prerelease.0.pom.sha512
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
fba1065b23a33a85282fbc1a47b80a2725dea603c2ccc4285956d04f7220d3428948b7dba61fe5ffad0928812c03f87549c4395b31df33e785e8b88fa5d46aeb
|