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.
Files changed (52) hide show
  1. 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
  2. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.md5 +1 -0
  3. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.sha1 +1 -0
  4. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.sha256 +1 -0
  5. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-javadoc.jar.sha512 +1 -0
  6. 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
  7. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.md5 +1 -0
  8. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.sha1 +1 -0
  9. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.sha256 +1 -0
  10. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0-sources.jar.sha512 +1 -0
  11. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar +0 -0
  12. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.md5 +1 -0
  13. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.sha1 +1 -0
  14. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.sha256 +1 -0
  15. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.aar.sha512 +1 -0
  16. package/Detox-android/com/wix/detox/{19.9.2/detox-19.9.2.pom → 19.10.0/detox-19.10.0.pom} +1 -1
  17. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.md5 +1 -0
  18. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.sha1 +1 -0
  19. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.sha256 +1 -0
  20. package/Detox-android/com/wix/detox/19.10.0/detox-19.10.0.pom.sha512 +1 -0
  21. package/Detox-android/com/wix/detox/maven-metadata.xml +4 -4
  22. package/Detox-android/com/wix/detox/maven-metadata.xml.md5 +1 -1
  23. package/Detox-android/com/wix/detox/maven-metadata.xml.sha1 +1 -1
  24. package/Detox-android/com/wix/detox/maven-metadata.xml.sha256 +1 -1
  25. package/Detox-android/com/wix/detox/maven-metadata.xml.sha512 +1 -1
  26. package/Detox-ios-src.tbz +0 -0
  27. package/Detox-ios.tbz +0 -0
  28. package/android/detox/proguard-rules-app.pro +4 -0
  29. package/android/detox/src/full/java/com/wix/detox/DetoxCrashHandler.kt +1 -1
  30. package/android/detox/src/full/java/com/wix/detox/TestEngineFacade.kt +1 -1
  31. package/package.json +2 -2
  32. package/src/client/Client.js +18 -1
  33. package/src/devices/common/drivers/android/tools/MonitoredInstrumentation.js +1 -1
  34. package/src/devices/runtime/drivers/android/AndroidDriver.js +9 -1
  35. package/src/utils/errorUtils.js +4 -3
  36. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.md5 +0 -1
  37. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.sha1 +0 -1
  38. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.sha256 +0 -1
  39. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-javadoc.jar.sha512 +0 -1
  40. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.md5 +0 -1
  41. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.sha1 +0 -1
  42. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.sha256 +0 -1
  43. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2-sources.jar.sha512 +0 -1
  44. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar +0 -0
  45. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.md5 +0 -1
  46. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.sha1 +0 -1
  47. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.sha256 +0 -1
  48. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.aar.sha512 +0 -1
  49. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.md5 +0 -1
  50. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.sha1 +0 -1
  51. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.sha256 +0 -1
  52. package/Detox-android/com/wix/detox/19.9.2/detox-19.9.2.pom.sha512 +0 -1
@@ -0,0 +1 @@
1
+ 246e031bb8a10b4897c2f60868e38a1e
@@ -0,0 +1 @@
1
+ d6c2ec03684c08bf5d408feac4b3860de5a44d4b
@@ -0,0 +1 @@
1
+ 55d164318e5c579b960d8db06251807668ea5efa1d51c8bf233d1caa6bd46239
@@ -0,0 +1 @@
1
+ 0b02e740c3e40a3235be505b9dcb4918f26ede99694cbaf320d7234373918b418a22437232b39b78206a813593f725f5536471640401016e35fdb76b67ebac70
@@ -0,0 +1 @@
1
+ e52a3f44d369bd3f21cb7bb83d99dc33
@@ -0,0 +1 @@
1
+ 9928c16835043133616631d4f76aad949aad2218
@@ -0,0 +1 @@
1
+ 0b350d5a918515b94a07cb7ff736e3613e6ca5debfac16c60c7eb41d4625f26d
@@ -0,0 +1 @@
1
+ 767e6cfec265b747dc3787d820abd9cf5713b40ce64420479348621faabb2f0f02f2cc83bf073d98ed5bc090e1abf9cabf86469b2bb3413fc413fe3764c90ffb
@@ -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.9.2</version>
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.9.2</latest>
7
- <release>19.9.2</release>
6
+ <latest>19.10.0</latest>
7
+ <release>19.10.0</release>
8
8
  <versions>
9
- <version>19.9.2</version>
9
+ <version>19.10.0</version>
10
10
  </versions>
11
- <lastUpdated>20220814171948</lastUpdated>
11
+ <lastUpdated>20220818130424</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 599c8ee4cd5b6c0a76e4e6587929371c
1
+ 38d31df24edd01e6923c2e3670359d6e
@@ -1 +1 @@
1
- c933b6a10c3326641f2f4f67d105d6c25546092f
1
+ b4a03bfc096cae92a22fabe9ae811709c09c4b92
@@ -1 +1 @@
1
- 2ef5136da194e277ca17be542f43edcc8b6eb5a36cf6359dbb7fa2a669721cd6
1
+ 504204669f5f3377f1c42725d55e8dcf742dc0c38318209978991dfe96abf831
@@ -1 +1 @@
1
- 738f2da22dc48e931699662eb116096506ad79b14583a9323b61ff369a19dec46f07033a5752593b20eb6d1123e3fcf35c9201cc74c4c2f0d9207084f7db5f4f
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: app is now idle!")
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.9.2",
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": "4427cebefaee0119ec757e18238be088f6c8ed99"
180
+ "gitHead": "6468b38c68bcac4c283ef005e9817f1d7ba8161b"
181
181
  }
@@ -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
- this._asyncWebSocket.rejectAll(new DetoxRuntimeError('The app has unexpectedly disconnected from Detox server.'));
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: ${this.instrumentationStackTrace}`
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([super.waitUntilReady(), this.instrumentation.waitForCrash()]);
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
  }
@@ -16,11 +16,12 @@ function filterErrorStack(error, predicate) {
16
16
  }
17
17
 
18
18
  function replaceErrorStack(source, target) {
19
- const sourceStack = source.stack || source.message;
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
@@ -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