detox 19.9.2 → 19.10.0
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.
- package/Detox-android/com/wix/detox/{19.9.2/detox-19.9.2-javadoc.jar → 19.10.0/detox-19.10.0-javadoc.jar} +0 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.md5 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.sha1 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.sha256 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.sha512 +1 -0
- package/Detox-android/com/wix/detox/{19.9.2/detox-19.9.2-sources.jar → 19.10.0/detox-19.10.0-sources.jar} +0 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.md5 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.sha1 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.sha256 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.sha512 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar +0 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.md5 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.sha1 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.sha256 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.sha512 +1 -0
- package/Detox-android/com/wix/detox/{19.9.2/detox-19.9.2.pom → 19.10.0/detox-19.10.0.pom} +1 -1
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.md5 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.sha1 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.sha256 +1 -0
- package/Detox-android/com/wix/detox/19.10.0/detox-19.10.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 +4 -0
- package/android/detox/src/full/java/com/wix/detox/DetoxCrashHandler.kt +1 -1
- package/android/detox/src/full/java/com/wix/detox/TestEngineFacade.kt +1 -1
- package/package.json +2 -2
- package/src/client/Client.js +18 -1
- package/src/devices/common/drivers/android/tools/MonitoredInstrumentation.js +1 -1
- package/src/devices/runtime/drivers/android/AndroidDriver.js +9 -1
- package/src/utils/errorUtils.js +4 -3
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.md5 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.sha1 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.sha256 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.sha512 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.md5 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.sha1 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.sha256 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.sha512 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar +0 -0
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.md5 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.sha1 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.sha256 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.sha512 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.md5 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.sha1 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.sha256 +0 -1
- package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.sha512 +0 -1
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
246e031bb8a10b4897c2f60868e38a1e
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
d6c2ec03684c08bf5d408feac4b3860de5a44d4b
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
55d164318e5c579b960d8db06251807668ea5efa1d51c8bf233d1caa6bd46239
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0b02e740c3e40a3235be505b9dcb4918f26ede99694cbaf320d7234373918b418a22437232b39b78206a813593f725f5536471640401016e35fdb76b67ebac70
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
e52a3f44d369bd3f21cb7bb83d99dc33
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
9928c16835043133616631d4f76aad949aad2218
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0b350d5a918515b94a07cb7ff736e3613e6ca5debfac16c60c7eb41d4625f26d
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
767e6cfec265b747dc3787d820abd9cf5713b40ce64420479348621faabb2f0f02f2cc83bf073d98ed5bc090e1abf9cabf86469b2bb3413fc413fe3764c90ffb
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
af4e914eb67e1dd955cc5acd07d02340
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
e16c929ebd269ce9e0e9c4d0e06e46601ecfa6a1
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1fede18c4a72541d428f69b6dab9c6a414f8b1a3b8a7f525b62b184cf75000ad
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
f8103e2667ffe0c25f91afb1d2c12fc95b608247922488688ab78326806c2b60c1d5c602419e9c1218730cb1f563f60eaee07eddb1492b02e47f0b73a18cd92c
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<modelVersion>4.0.0</modelVersion>
|
|
4
4
|
<groupId>com.wix</groupId>
|
|
5
5
|
<artifactId>detox</artifactId>
|
|
6
|
-
<version>19.
|
|
6
|
+
<version>19.10.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
|
+
f3c3be39af0c3904f8578ef066b1fa6b
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
75451bd4392a3307643bd3f92effb6c1ed1736de
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
e0a84ddf21ad608af9fd47b42b50e9e1c816e06bfe210225b4255ab365b6d202
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1b14fb1d91dbe7b4c2be24285dc3840d8f7631f86d4c79056fd4cf74975c33ec8e19266da364dc7b57ca486cd6dd7eb472235801f1daa250ecf37421af3d79fd
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
<groupId>com.wix</groupId>
|
|
4
4
|
<artifactId>detox</artifactId>
|
|
5
5
|
<versioning>
|
|
6
|
-
<latest>19.
|
|
7
|
-
<release>19.
|
|
6
|
+
<latest>19.10.0</latest>
|
|
7
|
+
<release>19.10.0</release>
|
|
8
8
|
<versions>
|
|
9
|
-
<version>19.
|
|
9
|
+
<version>19.10.0</version>
|
|
10
10
|
</versions>
|
|
11
|
-
<lastUpdated>
|
|
11
|
+
<lastUpdated>20220818130424</lastUpdated>
|
|
12
12
|
</versioning>
|
|
13
13
|
</metadata>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
38d31df24edd01e6923c2e3670359d6e
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
b4a03bfc096cae92a22fabe9ae811709c09c4b92
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
504204669f5f3377f1c42725d55e8dcf742dc0c38318209978991dfe96abf831
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
a36b581589d46796551b3fccad8a460b3ef5e5ee40ba374a45b7b7801520d28d2fd14308233cd33ba93943cf1600f7f7f81d032166b1ada5bdd0b4450a139ec1
|
package/Detox-ios-src.tbz
CHANGED
|
Binary file
|
package/Detox-ios.tbz
CHANGED
|
Binary file
|
|
@@ -6,6 +6,10 @@
|
|
|
6
6
|
-keep class com.facebook.react.ReactNativeHost { *; }
|
|
7
7
|
-keep class com.facebook.react.ReactInstanceManager { *; }
|
|
8
8
|
-keep class com.facebook.react.ReactInstanceManager** { *; }
|
|
9
|
+
-keep class com.facebook.react.ReactInstanceEventListener { *; }
|
|
10
|
+
|
|
11
|
+
-keep class com.facebook.react.views.slider.ReactSlider { *; }
|
|
12
|
+
-keep class com.reactnativecommunity.slider.ReactSlider { *; }
|
|
9
13
|
-keep class com.reactnativecommunity.asyncstorage.** { *; }
|
|
10
14
|
|
|
11
15
|
-keep class kotlin.jvm.** { *; }
|
|
@@ -6,7 +6,7 @@ import com.wix.detox.adapters.server.OutboundServerAdapter
|
|
|
6
6
|
class DetoxCrashHandler(private val outboundServerAdapter: OutboundServerAdapter) {
|
|
7
7
|
fun attach() {
|
|
8
8
|
Thread.setDefaultUncaughtExceptionHandler { thread, exception ->
|
|
9
|
-
Log.e(LOG_TAG, "Crash detected!!! thread=${thread.name} (${thread.id})")
|
|
9
|
+
Log.e(LOG_TAG, "Crash detected!!! thread=${thread.name} (${thread.id})", exception)
|
|
10
10
|
|
|
11
11
|
val crashInfo = mapOf("errorDetails" to "@Thread ${thread.name}(${thread.id}):\n${Log.getStackTraceString(exception)}\nCheck device logs for full details!")
|
|
12
12
|
outboundServerAdapter.sendMessage(ACTION_NAME, crashInfo, MESSAGE_ID)
|
|
@@ -10,7 +10,7 @@ import com.wix.detox.reactnative.ReactNativeExtension
|
|
|
10
10
|
|
|
11
11
|
class TestEngineFacade {
|
|
12
12
|
fun awaitIdle(): Unit? = Espresso.onIdle() {
|
|
13
|
-
Log.i(LOG_TAG, "Wait is over:
|
|
13
|
+
Log.i(LOG_TAG, "Wait is over: App is now idle!")
|
|
14
14
|
null
|
|
15
15
|
}
|
|
16
16
|
fun syncIdle() = UiAutomatorHelper.espressoSync() // TODO Check whether this can be replaced with #awaitIdle()
|
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": "19.
|
|
4
|
+
"version": "19.10.0",
|
|
5
5
|
"bin": {
|
|
6
6
|
"detox": "local-cli/cli.js"
|
|
7
7
|
},
|
|
@@ -177,5 +177,5 @@
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
},
|
|
180
|
-
"gitHead": "
|
|
180
|
+
"gitHead": "6468b38c68bcac4c283ef005e9817f1d7ba8161b"
|
|
181
181
|
}
|
package/src/client/Client.js
CHANGED
|
@@ -34,6 +34,7 @@ class Client {
|
|
|
34
34
|
this._slowInvocationStatusHandle = null;
|
|
35
35
|
this._whenAppIsConnected = this._invalidState('before connecting to the app');
|
|
36
36
|
this._whenAppIsReady = this._whenAppIsConnected;
|
|
37
|
+
this._whenAppDisconnected = Deferred.resolved();
|
|
37
38
|
this._isCleaningUp = false;
|
|
38
39
|
this._pendingAppCrash = null;
|
|
39
40
|
this._appTerminationHandle = null;
|
|
@@ -201,6 +202,11 @@ class Client {
|
|
|
201
202
|
}
|
|
202
203
|
}
|
|
203
204
|
|
|
205
|
+
/** @async */
|
|
206
|
+
waitUntilDisconnected() {
|
|
207
|
+
return this._whenAppDisconnected.promise;
|
|
208
|
+
}
|
|
209
|
+
|
|
204
210
|
async waitForBackground() {
|
|
205
211
|
await this.sendAction(new actions.WaitForBackground());
|
|
206
212
|
}
|
|
@@ -301,6 +307,8 @@ class Client {
|
|
|
301
307
|
} else {
|
|
302
308
|
this._whenAppIsConnected = Deferred.resolved();
|
|
303
309
|
}
|
|
310
|
+
|
|
311
|
+
this._whenAppDisconnected = new Deferred();
|
|
304
312
|
}
|
|
305
313
|
|
|
306
314
|
_onAppReady() {
|
|
@@ -320,6 +328,10 @@ class Client {
|
|
|
320
328
|
}
|
|
321
329
|
|
|
322
330
|
_onBeforeAppCrash({ params }) {
|
|
331
|
+
if (this._pendingAppCrash) {
|
|
332
|
+
return;
|
|
333
|
+
}
|
|
334
|
+
|
|
323
335
|
this._pendingAppCrash = new DetoxRuntimeError({
|
|
324
336
|
message: 'The app has crashed, see the details below:',
|
|
325
337
|
debugInfo: params.errorDetails,
|
|
@@ -338,10 +350,15 @@ class Client {
|
|
|
338
350
|
this._whenAppIsReady = this._whenAppIsConnected;
|
|
339
351
|
|
|
340
352
|
if (this._pendingAppCrash) {
|
|
353
|
+
this._whenAppDisconnected.reject(this._pendingAppCrash);
|
|
341
354
|
this._asyncWebSocket.rejectAll(this._pendingAppCrash);
|
|
342
355
|
this._pendingAppCrash = null;
|
|
343
356
|
} else if (this._asyncWebSocket.hasPendingActions()) {
|
|
344
|
-
|
|
357
|
+
const error = new DetoxRuntimeError('The app has unexpectedly disconnected from Detox server.');
|
|
358
|
+
this._asyncWebSocket.rejectAll(error);
|
|
359
|
+
this._whenAppDisconnected.resolve();
|
|
360
|
+
} else {
|
|
361
|
+
this._whenAppDisconnected.resolve();
|
|
345
362
|
}
|
|
346
363
|
}
|
|
347
364
|
|
|
@@ -77,7 +77,7 @@ class MonitoredInstrumentation {
|
|
|
77
77
|
'while it was waiting for "ready" message (over WebSocket) ' +
|
|
78
78
|
'from the instrumentation process.',
|
|
79
79
|
debugInfo: this.instrumentationStackTrace
|
|
80
|
-
? `Native stacktrace dump
|
|
80
|
+
? `Native stacktrace dump:\n${this.instrumentationStackTrace}`
|
|
81
81
|
: '',
|
|
82
82
|
});
|
|
83
83
|
}
|
|
@@ -148,7 +148,15 @@ class AndroidDriver extends DeviceDriverBase {
|
|
|
148
148
|
|
|
149
149
|
async waitUntilReady() {
|
|
150
150
|
try {
|
|
151
|
-
await Promise.race([
|
|
151
|
+
await Promise.race([
|
|
152
|
+
super.waitUntilReady(),
|
|
153
|
+
this.instrumentation.waitForCrash()
|
|
154
|
+
]);
|
|
155
|
+
} catch (e) {
|
|
156
|
+
console.warn('An error occurred while waiting for the app to become ready. Waiting for disconnection... Error:\n', e);
|
|
157
|
+
await this.client.waitUntilDisconnected();
|
|
158
|
+
console.warn('...app disconnected.');
|
|
159
|
+
throw e;
|
|
152
160
|
} finally {
|
|
153
161
|
this.instrumentation.abortWaitForCrash();
|
|
154
162
|
}
|
package/src/utils/errorUtils.js
CHANGED
|
@@ -16,11 +16,12 @@ function filterErrorStack(error, predicate) {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
function replaceErrorStack(source, target) {
|
|
19
|
-
const sourceStack = source.stack ||
|
|
20
|
-
const targetStack = target.stack || target.message;
|
|
19
|
+
const sourceStack = (source.stack || '');
|
|
21
20
|
const sourceMessage = sourceStack.replace(CLEAN_AT, '');
|
|
22
|
-
const targetMessage = targetStack.replace(CLEAN_AT, '');
|
|
23
21
|
const actualSourceStack = sourceStack.slice(sourceMessage.length);
|
|
22
|
+
|
|
23
|
+
const targetMessage = target.message || target.stack.replace(CLEAN_AT, '');
|
|
24
|
+
|
|
24
25
|
target.stack = targetMessage + actualSourceStack;
|
|
25
26
|
return target;
|
|
26
27
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
445b3420c7150f8bea0a85311a33315d
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
42e5208f60f7384b0d367a11633d05e0c89bb02a
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1bb7381a2ffda512bb2f1d3704381cf59e323cd8f7c61de46270f1e419ad8357
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
10576a45ba33b66912fd02cb19337b47719c2ce7c0f2234f03fd8c9ce93f31ef8e5f684d3539677a39d6b8472c0cb027fa31db4ab2863aa89ee5d42f468078c4
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4cfde044c88da921818ab32db0493e6d
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
a8f1e5c74446f6e7571861d1987ab839c4829559
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
a25dcc79498abea1edfe6827b7ffd85b320318f47a1ec2310c56c3c9a0dcbd3c
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
823c23be31da691a931ee32d96845dc22eb7598366728c240b6457b88b541e03a0bfffc629a56906a8c12ee99d261fa761d519717b089c1b0c291800fd5bee63
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
f00a26db2932c0f5dd9e4ea695c5f55c
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
39dba13a0e694adb108fc6bb4d15b58b21a4eed5
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
c9897fd212cfefb379527e059f6f29a94f29c4681b3659e26f8f08b22e20d1ea
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
f12faacdbbcf214aba48971b1054310eca06c2a69d403404376b087d86beb76345e383bc6d452f6af8ec25b050895700bd930f8a33c9439153a972a179b3c763
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4349454740407bfe0a84123f722d4c50
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
54d373ae29b5c1c51a5c284026dcfea431c5c40b
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
f3d3d79f0ee51a1b60535c305ceaac120dcf8a3662b2731a760b3914c925e7a3
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
a4ed018382a78e1cd3b68380244b7610384f5ff9b0891cc992af2c43052012e6728004a6d629dd5e257005e03a15e54373549e0b9cb28d07d68e4669275f43f2
|