detox 20.0.0-breaking.new-global-lifecycle.0 → 21.0.0-breaking.new-global-lifecycle.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-javadoc.jar → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-javadoc.jar} +0 -0
  2. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-javadoc.jar.md5 +1 -0
  3. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-javadoc.jar.sha1 +1 -0
  4. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-javadoc.jar.sha256 +1 -0
  5. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-javadoc.jar.sha512 +1 -0
  6. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-sources.jar → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-sources.jar} +0 -0
  7. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-sources.jar.md5 +1 -0
  8. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-sources.jar.sha1 +1 -0
  9. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-sources.jar.sha256 +1 -0
  10. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0-sources.jar.sha512 +1 -0
  11. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.aar → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.aar} +0 -0
  12. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.aar.md5 → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.aar.md5} +0 -0
  13. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.aar.sha1 → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.aar.sha1} +0 -0
  14. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.aar.sha256 → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.aar.sha256} +0 -0
  15. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.aar.sha512 → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.aar.sha512} +0 -0
  16. package/Detox-android/com/wix/detox/{20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.pom → 21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.pom} +1 -1
  17. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.pom.md5 +1 -0
  18. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.pom.sha1 +1 -0
  19. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.0.pom.sha256 +1 -0
  20. package/Detox-android/com/wix/detox/21.0.0-breaking.new-global-lifecycle.0/detox-21.0.0-breaking.new-global-lifecycle.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/internals.d.ts +3 -8
  29. package/local-cli/testCommand/TestRunnerCommand.js +2 -1
  30. package/package.json +2 -2
  31. package/src/DetoxWorker.js +5 -0
  32. package/src/ipc/IPCServer.js +7 -1
  33. package/src/ipc/state.js +10 -1
  34. package/src/realms/DetoxContext.js +1 -1
  35. package/src/realms/DetoxPrimaryContext.js +3 -2
  36. package/src/realms/DetoxSecondaryContext.js +2 -1
  37. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-javadoc.jar.md5 +0 -1
  38. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-javadoc.jar.sha1 +0 -1
  39. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-javadoc.jar.sha256 +0 -1
  40. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-javadoc.jar.sha512 +0 -1
  41. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-sources.jar.md5 +0 -1
  42. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-sources.jar.sha1 +0 -1
  43. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-sources.jar.sha256 +0 -1
  44. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0-sources.jar.sha512 +0 -1
  45. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.pom.md5 +0 -1
  46. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.pom.sha1 +0 -1
  47. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.pom.sha256 +0 -1
  48. package/Detox-android/com/wix/detox/20.0.0-breaking.new-global-lifecycle.0/detox-20.0.0-breaking.new-global-lifecycle.0.pom.sha512 +0 -1
@@ -0,0 +1 @@
1
+ acc211b70fb65685f6bc4485877bbbb2eff3bc39c6c827eb2e3c7718a4483f3f
@@ -0,0 +1 @@
1
+ a04e99a05821a7eee3dd52681ad4f5f90f79db30148dc725c0857dc6816d3a2321e0325301956b42135eeafba91730cbf1ea3e9bb2c7fd8907b6b3622554e681
@@ -0,0 +1 @@
1
+ aea2cd38e84670f4c1247a91ed192dfb7aa8e7b6b8caf0ab9e4653e9d3d534f3
@@ -0,0 +1 @@
1
+ bde9ea969c3dc598bd83269cb194a45b2541a72cfb957cb73739e6bcc696db72f03083bd89d5487165259a6ec69290efddfe686456c37a26a5b756f48d2c16f3
@@ -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.0-breaking.new-global-lifecycle.0</version>
6
+ <version>21.0.0-breaking.new-global-lifecycle.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
+ a815eb45d190075410faa418d75636120436338083a8c56b48c0314bf2370afe
@@ -0,0 +1 @@
1
+ 9566b64dce8fc2983da565d015b787f1d13f1ea79c95f2062fcdb5ff06ef2c00c2fd96fc9680737d979c4f299570ef448ebac2489e5370f8efc94b08814e5f37
@@ -3,11 +3,11 @@
3
3
  <groupId>com.wix</groupId>
4
4
  <artifactId>detox</artifactId>
5
5
  <versioning>
6
- <latest>20.0.0-breaking.new-global-lifecycle.0</latest>
7
- <release>20.0.0-breaking.new-global-lifecycle.0</release>
6
+ <latest>21.0.0-breaking.new-global-lifecycle.0</latest>
7
+ <release>21.0.0-breaking.new-global-lifecycle.0</release>
8
8
  <versions>
9
- <version>20.0.0-breaking.new-global-lifecycle.0</version>
9
+ <version>21.0.0-breaking.new-global-lifecycle.0</version>
10
10
  </versions>
11
- <lastUpdated>20220719065707</lastUpdated>
11
+ <lastUpdated>20220809170413</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- d6bdfc52b842956498f8c9915246ef54
1
+ b76ff5977da986622d62d440bbd1e6cf
@@ -1 +1 @@
1
- 7d7b975015b7c6dc6804b63b99522ffaca9d09ff
1
+ 4fce99f994573866a02b424e66adcaca41e598c0
@@ -1 +1 @@
1
- e3b6dce4491bb1703968fd4b82d89bfdf8c25014eac1fda6a64c196b9a79cea2
1
+ e1e69da0a47bfaa02932aa46f65da8fd51ab7a0933e3465aaa8e2c84dcb11374
@@ -1 +1 @@
1
- 3167b1a219d343785c974586d46d5a19dbe6985dd444d70f5bd364b747272c3da434f60f743c5a40c809a4f9db5e3665403471e5ed2756c50439c841993856cf
1
+ 3e619f25a2a9b9a8e45948eec0d8080b3e510e87f0d7dd9ae03288001b6b1eecee7f1da7476bf33885281f9b522708ee85a69a7bff8a626f8b7970617bc612c3
package/Detox-ios-src.tbz CHANGED
Binary file
package/Detox-ios.tbz CHANGED
Binary file
package/internals.d.ts CHANGED
@@ -72,15 +72,10 @@ declare global {
72
72
  workerId: number;
73
73
  };
74
74
 
75
- type SessionState = Readonly<PrimarySessionState | SecondarySessionState>;
76
-
77
- type SecondarySessionState = {
78
- workersCount: number;
79
- };
80
-
81
- type PrimarySessionState = PrimarySessionState & {
75
+ type SessionState = Readonly<{
82
76
  failedTestFiles: string[];
83
- };
77
+ workersCount: number;
78
+ }>;
84
79
 
85
80
  type RuntimeConfig = Readonly<{
86
81
  configurationName: string;
@@ -99,6 +99,7 @@ class TestRunnerCommand {
99
99
  } catch (e) {
100
100
  launchError = e;
101
101
 
102
+ // @ts-ignore
102
103
  const { failedTestFiles } = detox.session;
103
104
  if (_.isEmpty(failedTestFiles)) {
104
105
  throw e;
@@ -106,7 +107,7 @@ class TestRunnerCommand {
106
107
 
107
108
  this._argv._ = failedTestFiles.slice();
108
109
  this._env.DETOX_RERUN_INDEX = 1 + (this._env.DETOX_RERUN_INDEX || 0);
109
- detox.session.failedTestFiles.splice(0, Infinity);
110
+ failedTestFiles.splice(0, Infinity);
110
111
  }
111
112
  } while (launchError && --runsLeft > 0);
112
113
 
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.0-breaking.new-global-lifecycle.0",
4
+ "version": "21.0.0-breaking.new-global-lifecycle.0",
5
5
  "bin": {
6
6
  "detox": "local-cli/cli.js"
7
7
  },
@@ -183,5 +183,5 @@
183
183
  }
184
184
  }
185
185
  },
186
- "gitHead": "e89c826fdbd09989dcb1cc82eb3cc7d821ffbf3e"
186
+ "gitHead": "5c9f55d001261c12376998bce4d3221540a52cc4"
187
187
  }
@@ -232,6 +232,11 @@ class DetoxWorker {
232
232
  if (this._isCleaningUp) return;
233
233
  await this.device.uninstallApp();
234
234
  if (this._isCleaningUp) return;
235
+ }
236
+
237
+ for (const appName of appNames) {
238
+ await this.device.selectApp(appName);
239
+ if (this._isCleaningUp) return;
235
240
  await this.device.installApp();
236
241
  if (this._isCleaningUp) return;
237
242
  }
@@ -55,7 +55,9 @@ class IPCServer {
55
55
  this._sessionState.logFiles.push(logFile);
56
56
  }
57
57
 
58
- this._ipc.server.emit(socket, 'registerContextDone', {});
58
+ this._ipc.server.emit(socket, 'registerContextDone', {
59
+ failedTestFiles: this._sessionState.failedTestFiles,
60
+ });
59
61
  }
60
62
 
61
63
  onRegisterWorker({ workerId }, socket) {
@@ -75,6 +77,10 @@ class IPCServer {
75
77
  if (socket) {
76
78
  this._ipc.server.emit(socket, 'failedTestsDone', {});
77
79
  }
80
+
81
+ this._ipc.server.broadcast('sessionStateUpdate', {
82
+ failedTestFiles: this._sessionState.failedTestFiles,
83
+ });
78
84
  }
79
85
  }
80
86
 
package/src/ipc/state.js CHANGED
@@ -38,13 +38,22 @@ class SessionState {
38
38
  }
39
39
 
40
40
  class SecondarySessionState extends SessionState {
41
- constructor({ id = uuid.UUID(), detoxConfigSnapshotPath = '', detoxConfig = null, detoxIPCServer = '', workerId = undefined, workersCount = 0 }) {
41
+ constructor({
42
+ id = uuid.UUID(),
43
+ detoxConfigSnapshotPath = '',
44
+ detoxConfig = null,
45
+ detoxIPCServer = '',
46
+ failedTestFiles = [],
47
+ workerId = undefined,
48
+ workersCount = 0
49
+ }) {
42
50
  super();
43
51
 
44
52
  this.id = id;
45
53
  this.detoxConfigSnapshotPath = detoxConfigSnapshotPath;
46
54
  this.detoxConfig = detoxConfig;
47
55
  this.detoxIPCServer = detoxIPCServer;
56
+ this.failedTestFiles = failedTestFiles;
48
57
  this.workerId = workerId;
49
58
  this.workersCount = workersCount;
50
59
  }
@@ -19,7 +19,7 @@ class DetoxContext {
19
19
  constructor() {
20
20
  this[symbols.globalSetup] = this[symbols.globalSetup].bind(this);
21
21
  this[symbols.globalTeardown] = this[symbols.globalTeardown].bind(this);
22
- this[symbols.reportFailedTests] = this[symbols.globalTeardown].bind(this);
22
+ this[symbols.reportFailedTests] = this[symbols.reportFailedTests].bind(this);
23
23
  this[symbols.resolveConfig] = this[symbols.resolveConfig].bind(this);
24
24
  this[symbols.setup] = this[symbols.setup].bind(this);
25
25
  this[symbols.teardown] = this[symbols.teardown].bind(this);
@@ -120,8 +120,9 @@ class DetoxPrimaryContext extends DetoxContext {
120
120
  * @param {Partial<DetoxInternals.DetoxConfigurationSetupOptions>} [opts]
121
121
  */
122
122
  async [symbols.setup](opts) {
123
- this[$sessionState].workerId = opts.workerId;
124
- this[_ipcServer].onRegisterWorker({ workerId: opts.workerId });
123
+ const workerId = opts.workerId || 1;
124
+ this[$sessionState].workerId = workerId;
125
+ this[_ipcServer].onRegisterWorker({ workerId });
125
126
  await super[symbols.setup](opts);
126
127
  }
127
128
 
@@ -59,8 +59,9 @@ class DetoxSecondaryContext extends DetoxContext {
59
59
  logger: this[$logger],
60
60
  });
61
61
 
62
+ const workerId = opts.workerId || 1;
62
63
  await this[_ipcClient].init();
63
- await this[_ipcClient].registerWorker(opts.workerId);
64
+ await this[_ipcClient].registerWorker(workerId);
64
65
  await super[symbols.setup](opts);
65
66
  }
66
67
 
@@ -1 +0,0 @@
1
- a5944cadfbcdb604230d233ffc61937c00aeeb0cd7d119ca80dd980c63cce162
@@ -1 +0,0 @@
1
- 3b03acc4ca394d1cf0ad68035630f5f9acf9ef61bb82bc82d12dd0521e477a6b9a90408052929d5292c4a277719f097d2e5442f72c206dfc9fa3454b0065c7ad
@@ -1 +0,0 @@
1
- 13b5779cfa22e39ee57276e87f52a514ef22ca63c93eeecc040a0fc019de1fa1
@@ -1 +0,0 @@
1
- bbf983c662070c19d39533e5bbc5c3aee9d0b5ad4f89c2df86b4358767fcdfb18989cf379ed12257173d2d73c69e1c12a4ed2fd92a5bc2229177d0f8b38b19bf
@@ -1 +0,0 @@
1
- ba8c95326c6df61428a56284280062a28c1aa747dcc8d5ec50f1756f869aba7e
@@ -1 +0,0 @@
1
- e0f4d3ce73bed2981edc17b8845a2f25044cba806371c3b57eaf59f9d008bff3be112a1cb9876dbafd0ec96a01d240452bdd563ac99f3c03f47ad3416e3ae2d3