detox 20.18.2 → 20.18.3-smoke.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 (29) hide show
  1. package/Detox-ios-src.tbz +0 -0
  2. package/Detox-ios.tbz +0 -0
  3. package/android/detox/publishing.gradle +6 -1
  4. package/package.json +2 -2
  5. package/src/client/Client.js +1 -6
  6. package/src/devices/allocation/drivers/android/genycloud/exec/GenyCloudExec.js +4 -0
  7. package/src/devices/allocation/drivers/android/genycloud/services/GenyAuthService.js +12 -0
  8. package/src/devices/validation/android/GenycloudEnvValidator.js +12 -1
  9. package/src/devices/validation/factories/index.js +4 -1
  10. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2-sources.jar +0 -0
  11. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2-sources.jar.md5 +0 -1
  12. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2-sources.jar.sha1 +0 -1
  13. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2-sources.jar.sha256 +0 -1
  14. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2-sources.jar.sha512 +0 -1
  15. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.aar +0 -0
  16. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.aar.md5 +0 -1
  17. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.aar.sha1 +0 -1
  18. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.aar.sha256 +0 -1
  19. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.aar.sha512 +0 -1
  20. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.pom +0 -100
  21. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.pom.md5 +0 -1
  22. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.pom.sha1 +0 -1
  23. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.pom.sha256 +0 -1
  24. package/Detox-android/com/wix/detox/20.18.2/detox-20.18.2.pom.sha512 +0 -1
  25. package/Detox-android/com/wix/detox/maven-metadata.xml +0 -13
  26. package/Detox-android/com/wix/detox/maven-metadata.xml.md5 +0 -1
  27. package/Detox-android/com/wix/detox/maven-metadata.xml.sha1 +0 -1
  28. package/Detox-android/com/wix/detox/maven-metadata.xml.sha256 +0 -1
  29. package/Detox-android/com/wix/detox/maven-metadata.xml.sha512 +0 -1
package/Detox-ios-src.tbz CHANGED
Binary file
package/Detox-ios.tbz CHANGED
Binary file
@@ -3,6 +3,7 @@ apply plugin: 'kotlin-android'
3
3
  apply plugin: 'org.jetbrains.dokka'
4
4
  apply plugin: 'signing'
5
5
  apply from: './publish-pom.gradle'
6
+ apply from: '../rninfo.gradle'
6
7
 
7
8
  String TARGET_LOCAL_DIR = "$buildDir/../../../Detox-android"
8
9
  String TARGET_MAVEN_CENTRAL_URL = 'https://oss.sonatype.org/service/local/staging/deploy/maven2'
@@ -180,7 +181,11 @@ publishing {
180
181
 
181
182
  "maven${variantNameCapitalized}Aar"(MavenPublication) {
182
183
  groupId 'com.wix'
183
- artifactId 'detox'
184
+ if (rnInfo.isRN72OrHigher) {
185
+ artifactId 'detox'
186
+ } else {
187
+ artifactId 'detox-legacy'
188
+ }
184
189
  version "$_versionName"
185
190
 
186
191
  // Register built .aar as published artifact (as a file, explicitly)
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.18.2",
4
+ "version": "20.18.3-smoke.0",
5
5
  "bin": {
6
6
  "detox": "local-cli/cli.js"
7
7
  },
@@ -115,5 +115,5 @@
115
115
  "browserslist": [
116
116
  "node 18"
117
117
  ],
118
- "gitHead": "550e128c2552e6f38c509167894eedfddd2aa8d8"
118
+ "gitHead": "a81e1e68f1bc5e1546a7fd01a00ddc1932b38f1f"
119
119
  }
@@ -137,10 +137,6 @@ class Client {
137
137
  }
138
138
 
139
139
  async sendAction(action) {
140
- if (this._pendingAppCrash) {
141
- throw this._pendingAppCrash;
142
- }
143
-
144
140
  const { shouldQueryStatus, ...options } = this._inferSendOptions(action);
145
141
 
146
142
  return await (shouldQueryStatus
@@ -306,8 +302,6 @@ class Client {
306
302
  }
307
303
 
308
304
  _onAppConnected() {
309
- this._pendingAppCrash = null;
310
-
311
305
  if (this._whenAppIsConnected.isPending()) {
312
306
  this._whenAppIsConnected.resolve();
313
307
  } else {
@@ -358,6 +352,7 @@ class Client {
358
352
  if (this._pendingAppCrash) {
359
353
  this._whenAppDisconnected.reject(this._pendingAppCrash);
360
354
  this._asyncWebSocket.rejectAll(this._pendingAppCrash);
355
+ this._pendingAppCrash = null;
361
356
  } else if (this._asyncWebSocket.hasPendingActions()) {
362
357
  const error = new DetoxRuntimeError('The app has unexpectedly disconnected from Detox server.');
363
358
  this._asyncWebSocket.rejectAll(error);
@@ -11,6 +11,10 @@ class GenyCloudExec {
11
11
  return this._exec('--version');
12
12
  }
13
13
 
14
+ whoAmI() {
15
+ return this._exec('auth whoami');
16
+ }
17
+
14
18
  getRecipe(name) {
15
19
  return this._exec(`recipes list --name "${name}"`);
16
20
  }
@@ -0,0 +1,12 @@
1
+ class GenyAuthService {
2
+ constructor(genyCloudExec) {
3
+ this.genyCloudExec = genyCloudExec;
4
+ }
5
+
6
+ async getLoginEmail() {
7
+ const whoAmI = await this.genyCloudExec.whoAmI();
8
+ return whoAmI.auth.email;
9
+ }
10
+ }
11
+
12
+ module.exports = GenyAuthService;
@@ -12,13 +12,15 @@ class GenycloudEnvValidator extends EnvironmentValidatorBase {
12
12
  * @param authService { GenyAuthService }
13
13
  * @param exec { GenyCloudExec }
14
14
  */
15
- constructor({ exec }) {
15
+ constructor({ authService, exec }) {
16
16
  super();
17
+ this._authService = authService;
17
18
  this._exec = exec;
18
19
  }
19
20
 
20
21
  async validate() {
21
22
  await this._validateGmsaasVersion();
23
+ await this._validateGmsaasAuth();
22
24
  }
23
25
 
24
26
  async _validateGmsaasVersion() {
@@ -30,6 +32,15 @@ class GenycloudEnvValidator extends EnvironmentValidatorBase {
30
32
  });
31
33
  }
32
34
  }
35
+
36
+ async _validateGmsaasAuth() {
37
+ if (!await this._authService.getLoginEmail()) {
38
+ throw new DetoxRuntimeError({
39
+ message: `Cannot run tests using 'android.genycloud' type devices, because Genymotion was not logged-in to!`,
40
+ hint: `Log-in to Genymotion-cloud by running this command (and following instructions):\n${environment.getGmsaasPath()} auth login --help`,
41
+ });
42
+ }
43
+ }
33
44
  }
34
45
 
35
46
  module.exports = GenycloudEnvValidator;
@@ -7,8 +7,11 @@ class Genycloud extends EnvValidatorFactory {
7
7
  const serviceLocator = require('../../servicelocator/android');
8
8
  const exec = serviceLocator.genycloud.exec;
9
9
 
10
+ const GenyAuthService = require('../../allocation/drivers/android/genycloud/services/GenyAuthService');
11
+ const authService = new GenyAuthService(exec);
12
+
10
13
  const GenycloudEnvValidator = require('../android/GenycloudEnvValidator');
11
- return new GenycloudEnvValidator({ exec });
14
+ return new GenycloudEnvValidator({ authService, exec });
12
15
  }
13
16
  }
14
17
 
@@ -1 +0,0 @@
1
- 984c2c049b5e884c6e06025f4c41d648
@@ -1 +0,0 @@
1
- c55e64b6f6ff0785932cf6da57c75459a04a27c5
@@ -1 +0,0 @@
1
- cf3e3fdb877a0ca8a8b8e42a4b3a7a0589a39680f6f9263dccfd036a7da8e314
@@ -1 +0,0 @@
1
- 3cb7f848f967498ac25311afb081737dfec1672eb1496bdce314ce650d5b906fa6d1fd585b5960dad4b2cfa559a309ac93f6426012b1b30f3d7460a146b8e655
@@ -1 +0,0 @@
1
- 221afe495c4ff28f344cff35e41e566a
@@ -1 +0,0 @@
1
- 9657a291e6e1725adb2a3e333248ad4a05892015
@@ -1 +0,0 @@
1
- 23a9f6a86b0fb26b426f6188be04dc98eed5edeaa7f77c6e682bae9b80906312
@@ -1 +0,0 @@
1
- a43c0a36b2b519a777662f087ba88e2bf781613ec86633434499ba70483fe072ebbbff6507f3ec3cb1cff7bfd5326af172d6fe7dcdc7990790796fe97d9c1519
@@ -1,100 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3
- <modelVersion>4.0.0</modelVersion>
4
- <groupId>com.wix</groupId>
5
- <artifactId>detox</artifactId>
6
- <version>20.18.2</version>
7
- <packaging>aar</packaging>
8
- <name>Detox</name>
9
- <description>Gray box end-to-end testing and automation library for mobile apps</description>
10
- <url>https://github.com/wix/Detox</url>
11
- <licenses>
12
- <license>
13
- <name>The MIT License</name>
14
- <url>https://github.com/wix/Detox/blob/master/LICENSE</url>
15
- </license>
16
- </licenses>
17
- <developers>
18
- <developer>
19
- <name>WixMobile</name>
20
- <email>mobile1@wix.com</email>
21
- </developer>
22
- <developer>
23
- <name>d4vidi</name>
24
- <email>amitd@wix.com</email>
25
- </developer>
26
- </developers>
27
- <scm>
28
- <connection>scm:git:git://github.com/wix/detox.git</connection>
29
- <developerConnection>scm:git:git@github.com/wix/detox.git</developerConnection>
30
- <url>https://github.com/wix/detox</url>
31
- </scm>
32
- <dependencies>
33
- <dependency>
34
- <groupId>androidx.test.espresso</groupId>
35
- <artifactId>espresso-core</artifactId>
36
- <version>3.5.1</version>
37
- <scope>compile</scope>
38
- </dependency>
39
- <dependency>
40
- <groupId>androidx.test.espresso</groupId>
41
- <artifactId>espresso-web</artifactId>
42
- <version>3.5.1</version>
43
- <scope>compile</scope>
44
- </dependency>
45
- <dependency>
46
- <groupId>androidx.test.espresso</groupId>
47
- <artifactId>espresso-contrib</artifactId>
48
- <version>3.5.1</version>
49
- <scope>compile</scope>
50
- <exclusions>
51
- <exclusion>
52
- <groupId>org.checkerframework</groupId>
53
- <artifactId>checker</artifactId>
54
- </exclusion>
55
- </exclusions>
56
- </dependency>
57
- <dependency>
58
- <groupId>org.hamcrest</groupId>
59
- <artifactId>hamcrest</artifactId>
60
- <version>2.2</version>
61
- <scope>compile</scope>
62
- </dependency>
63
- <dependency>
64
- <groupId>androidx.test</groupId>
65
- <artifactId>rules</artifactId>
66
- <version>1.5.0</version>
67
- <scope>compile</scope>
68
- </dependency>
69
- <dependency>
70
- <groupId>androidx.test.ext</groupId>
71
- <artifactId>junit</artifactId>
72
- <version>1.1.5</version>
73
- <scope>compile</scope>
74
- </dependency>
75
- <dependency>
76
- <groupId>androidx.test.uiautomator</groupId>
77
- <artifactId>uiautomator</artifactId>
78
- <version>2.2.0</version>
79
- <scope>compile</scope>
80
- </dependency>
81
- <dependency>
82
- <groupId>org.jetbrains.kotlin</groupId>
83
- <artifactId>kotlin-stdlib-jdk8</artifactId>
84
- <version>1.2.0</version>
85
- <scope>runtime</scope>
86
- </dependency>
87
- <dependency>
88
- <groupId>org.apache.commons</groupId>
89
- <artifactId>commons-lang3</artifactId>
90
- <version>3.7</version>
91
- <scope>runtime</scope>
92
- </dependency>
93
- <dependency>
94
- <groupId>com.github.anrwatchdog</groupId>
95
- <artifactId>anrwatchdog</artifactId>
96
- <version>1.4.0</version>
97
- <scope>runtime</scope>
98
- </dependency>
99
- </dependencies>
100
- </project>
@@ -1 +0,0 @@
1
- 03283b4c2d4fa96f4ca820895e260f69
@@ -1 +0,0 @@
1
- 12a874445c7e0c0d711d9de93dd1b8b5840caad3
@@ -1 +0,0 @@
1
- e382ec27f04d8cd00a7c1101094cb0d1cd4b971b878426e8520623f4c916a03c
@@ -1 +0,0 @@
1
- 363f339e417ce2fafcee0db4ebc150d611b77989bb0d59e5a87730c62a0e15e54442ea576959b09ed009264131346796ae7199009aa37b8ee8a88cf3a2632f93
@@ -1,13 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <metadata>
3
- <groupId>com.wix</groupId>
4
- <artifactId>detox</artifactId>
5
- <versioning>
6
- <latest>20.18.2</latest>
7
- <release>20.18.2</release>
8
- <versions>
9
- <version>20.18.2</version>
10
- </versions>
11
- <lastUpdated>20240225122200</lastUpdated>
12
- </versioning>
13
- </metadata>
@@ -1 +0,0 @@
1
- c405604464b2542f3b457afbe34b0ee1
@@ -1 +0,0 @@
1
- 4bd8999479d6a183643b530b1deb9a715c7e3514
@@ -1 +0,0 @@
1
- 8269d3d5aefa06d078b597aa6c066c2c93161a071602559d1cc6737756141622
@@ -1 +0,0 @@
1
- f0137d78293940c4937558dcd958a9efbcd4300cd01da1b37ad12c86c9327b6584806053cfdbe75ea2a9907d1a73fcf4b09d5011abdb638ce7e7a2b77af4ae5a