appium-mac2-driver 1.20.1 → 1.20.2

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/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [1.20.2](https://github.com/appium/appium-mac2-driver/compare/v1.20.1...v1.20.2) (2024-10-28)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * Support non-strict XPath queries ([#318](https://github.com/appium/appium-mac2-driver/issues/318)) ([f596a61](https://github.com/appium/appium-mac2-driver/commit/f596a6171440004089e2a890511e523c4d72bf2e))
7
+
1
8
  ## [1.20.1](https://github.com/appium/appium-mac2-driver/compare/v1.20.0...v1.20.1) (2024-10-16)
2
9
 
3
10
 
@@ -78,7 +78,7 @@
78
78
 
79
79
  - (void)testSingleDescendantWithXPath
80
80
  {
81
- NSString *query = @"*//XCUIElementTypeButton[starts-with(@identifier, \"_XCUI:\")]";
81
+ NSString *query = @"//XCUIElementTypeButton[starts-with(@identifier, \"_XCUI:\")]";
82
82
  NSArray<XCUIElement *> *matches = [self.testedApplication fb_descendantsMatchingXPathQuery:query
83
83
  shouldReturnAfterFirstMatch:YES];
84
84
  XCTAssertEqual(matches.count, 1);
@@ -93,6 +93,31 @@
93
93
 
94
94
  @end
95
95
 
96
+ @interface NSString (FBXPathFixes)
97
+
98
+ /**
99
+ https://discuss.appium.io/t/cannot-find-element-with-mac2/44959
100
+ */
101
+ - (NSString *)fb_toFixedXPathQuery;
102
+
103
+ @end
104
+
105
+ @implementation NSString (FBXPathFixes)
106
+
107
+ - (NSString *)fb_toFixedXPathQuery
108
+ {
109
+ NSString *replacePattern = @"^([(]*)(/)";
110
+ NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:replacePattern
111
+ options:NSRegularExpressionCaseInsensitive
112
+ error:nil];
113
+ return [regex stringByReplacingMatchesInString:self
114
+ options:0
115
+ range:NSMakeRange(0, [self length])
116
+ withTemplate:@"$1.$2"];
117
+ }
118
+
119
+ @end
120
+
96
121
  static NSString *const kXMLIndexPathKey = @"private_indexPath";
97
122
 
98
123
 
@@ -132,7 +157,8 @@ static NSString *const kXMLIndexPathKey = @"private_indexPath";
132
157
 
133
158
  NSXMLElement *rootElement = [self makeXmlWithRootSnapshot:snapshot
134
159
  indexPath:[AMSnapshotUtils hashWithSnapshot:snapshot]];
135
- NSArray<__kindof NSXMLNode *> *matches = [rootElement nodesForXPath:xpathQuery error:&error];
160
+ NSArray<__kindof NSXMLNode *> *matches = [rootElement nodesForXPath:[xpathQuery fb_toFixedXPathQuery]
161
+ error:&error];
136
162
  if (nil == matches) {
137
163
  @throw [NSException exceptionWithName:FBInvalidXPathException
138
164
  reason:error.description
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "appium-mac2-driver",
3
- "version": "1.20.1",
3
+ "version": "1.20.2",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appium-mac2-driver",
9
- "version": "1.20.1",
9
+ "version": "1.20.2",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@appium/strongbox": "^0.x",
@@ -95,16 +95,16 @@
95
95
  }
96
96
  },
97
97
  "node_modules/@appium/support": {
98
- "version": "5.1.5",
99
- "resolved": "https://registry.npmjs.org/@appium/support/-/support-5.1.5.tgz",
100
- "integrity": "sha512-/K0ut+ys4dv49hirH4taMK5FJ3cLkTgUGYdoxTh24pfJyd9CE1TCxCoDdCTrO7fmGBfKIsInceZdFJw2/JBAvw==",
98
+ "version": "5.1.6",
99
+ "resolved": "https://registry.npmjs.org/@appium/support/-/support-5.1.6.tgz",
100
+ "integrity": "sha512-BtWnVkIGUOHLDWkuBKSm15C5t2g5qv2+NOguAJ6ujPwDn2VLL86usk82DZF3IJ3Yujn0IrLGUrDLvtlG/uqXUg==",
101
101
  "license": "Apache-2.0",
102
102
  "dependencies": {
103
103
  "@appium/logger": "^1.6.1",
104
104
  "@appium/tsconfig": "^0.3.3",
105
105
  "@appium/types": "^0.22.0",
106
106
  "@colors/colors": "1.6.0",
107
- "@types/archiver": "6.0.2",
107
+ "@types/archiver": "6.0.3",
108
108
  "@types/base64-stream": "1.0.5",
109
109
  "@types/find-root": "1.1.4",
110
110
  "@types/jsftp": "2.1.5",
@@ -193,12 +193,13 @@
193
193
  }
194
194
  },
195
195
  "node_modules/@babel/code-frame": {
196
- "version": "7.25.7",
197
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz",
198
- "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==",
196
+ "version": "7.26.0",
197
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.0.tgz",
198
+ "integrity": "sha512-INCKxTtbXtcNbUZ3YXutwMpEleqttcswhAdee7dhuoVrD2cnuc3PqtERBtxkX5nziX9vnBL8WXmSGwv8CuPV6g==",
199
199
  "license": "MIT",
200
200
  "dependencies": {
201
- "@babel/highlight": "^7.25.7",
201
+ "@babel/helper-validator-identifier": "^7.25.9",
202
+ "js-tokens": "^4.0.0",
202
203
  "picocolors": "^1.0.0"
203
204
  },
204
205
  "engines": {
@@ -206,100 +207,14 @@
206
207
  }
207
208
  },
208
209
  "node_modules/@babel/helper-validator-identifier": {
209
- "version": "7.25.7",
210
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz",
211
- "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==",
212
- "license": "MIT",
213
- "engines": {
214
- "node": ">=6.9.0"
215
- }
216
- },
217
- "node_modules/@babel/highlight": {
218
- "version": "7.25.7",
219
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz",
220
- "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==",
210
+ "version": "7.25.9",
211
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
212
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
221
213
  "license": "MIT",
222
- "dependencies": {
223
- "@babel/helper-validator-identifier": "^7.25.7",
224
- "chalk": "^2.4.2",
225
- "js-tokens": "^4.0.0",
226
- "picocolors": "^1.0.0"
227
- },
228
214
  "engines": {
229
215
  "node": ">=6.9.0"
230
216
  }
231
217
  },
232
- "node_modules/@babel/highlight/node_modules/ansi-styles": {
233
- "version": "3.2.1",
234
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
235
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
236
- "license": "MIT",
237
- "dependencies": {
238
- "color-convert": "^1.9.0"
239
- },
240
- "engines": {
241
- "node": ">=4"
242
- }
243
- },
244
- "node_modules/@babel/highlight/node_modules/chalk": {
245
- "version": "2.4.2",
246
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
247
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
248
- "license": "MIT",
249
- "dependencies": {
250
- "ansi-styles": "^3.2.1",
251
- "escape-string-regexp": "^1.0.5",
252
- "supports-color": "^5.3.0"
253
- },
254
- "engines": {
255
- "node": ">=4"
256
- }
257
- },
258
- "node_modules/@babel/highlight/node_modules/color-convert": {
259
- "version": "1.9.3",
260
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
261
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
262
- "license": "MIT",
263
- "dependencies": {
264
- "color-name": "1.1.3"
265
- }
266
- },
267
- "node_modules/@babel/highlight/node_modules/color-name": {
268
- "version": "1.1.3",
269
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
270
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
271
- "license": "MIT"
272
- },
273
- "node_modules/@babel/highlight/node_modules/escape-string-regexp": {
274
- "version": "1.0.5",
275
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
276
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
277
- "license": "MIT",
278
- "engines": {
279
- "node": ">=0.8.0"
280
- }
281
- },
282
- "node_modules/@babel/highlight/node_modules/has-flag": {
283
- "version": "3.0.0",
284
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
285
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
286
- "license": "MIT",
287
- "engines": {
288
- "node": ">=4"
289
- }
290
- },
291
- "node_modules/@babel/highlight/node_modules/supports-color": {
292
- "version": "5.5.0",
293
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
294
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
295
- "license": "MIT",
296
- "dependencies": {
297
- "has-flag": "^3.0.0"
298
- },
299
- "engines": {
300
- "node": ">=4"
301
- }
302
- },
303
218
  "node_modules/@colors/colors": {
304
219
  "version": "1.6.0",
305
220
  "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz",
@@ -437,9 +352,9 @@
437
352
  "license": "MIT"
438
353
  },
439
354
  "node_modules/@types/archiver": {
440
- "version": "6.0.2",
441
- "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-6.0.2.tgz",
442
- "integrity": "sha512-KmROQqbQzKGuaAbmK+ZcytkJ51+YqDa7NmbXjmtC5YBLSyQYo21YaUnQ3HbaPFKL1ooo6RQ6OPYPIDyxfpDDXw==",
355
+ "version": "6.0.3",
356
+ "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-6.0.3.tgz",
357
+ "integrity": "sha512-a6wUll6k3zX6qs5KlxIggs1P1JcYJaTCx2gnlr+f0S1yd2DoaEwoIK10HmBaLnZwWneBz+JBm0dwcZu0zECBcQ==",
443
358
  "license": "MIT",
444
359
  "dependencies": {
445
360
  "@types/readdir-glob": "*"
@@ -492,9 +407,9 @@
492
407
  }
493
408
  },
494
409
  "node_modules/@types/express-serve-static-core": {
495
- "version": "5.0.0",
496
- "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.0.tgz",
497
- "integrity": "sha512-AbXMTZGt40T+KON9/Fdxx0B2WK5hsgxcfXJLr5bFpZ7b4JCex2WyQPTEKdXqfHiY5nKKBScZ7yCoO6Pvgxfvnw==",
410
+ "version": "5.0.1",
411
+ "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.1.tgz",
412
+ "integrity": "sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA==",
498
413
  "license": "MIT",
499
414
  "dependencies": {
500
415
  "@types/node": "*",
@@ -546,9 +461,9 @@
546
461
  "license": "MIT"
547
462
  },
548
463
  "node_modules/@types/lodash": {
549
- "version": "4.17.10",
550
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.10.tgz",
551
- "integrity": "sha512-YpS0zzoduEhuOWjAotS6A5AVCva7X4lVlYLF0FYHAY9sdraBfnatttHItlWeZdGhuEkf+OzMNg2ZYAx8t+52uQ==",
464
+ "version": "4.17.12",
465
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.12.tgz",
466
+ "integrity": "sha512-sviUmCE8AYdaF/KIHLDJBQgeYzPBI0vf/17NaYehBJfYD1j6/L95Slh07NlyK2iNyBNaEkb3En2jRt+a8y3xZQ==",
552
467
  "license": "MIT"
553
468
  },
554
469
  "node_modules/@types/mime": {
@@ -573,9 +488,9 @@
573
488
  }
574
489
  },
575
490
  "node_modules/@types/node": {
576
- "version": "20.16.11",
577
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.11.tgz",
578
- "integrity": "sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==",
491
+ "version": "20.17.1",
492
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.1.tgz",
493
+ "integrity": "sha512-j2VlPv1NnwPJbaCNv69FO/1z4lId0QmGvpT41YxitRtWlg96g/j8qcv2RKsLKe2F6OJgyXhupN1Xo17b2m139Q==",
579
494
  "license": "MIT",
580
495
  "dependencies": {
581
496
  "undici-types": "~6.19.2"
@@ -2139,9 +2054,9 @@
2139
2054
  "license": "MIT"
2140
2055
  },
2141
2056
  "node_modules/picocolors": {
2142
- "version": "1.1.0",
2143
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz",
2144
- "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==",
2057
+ "version": "1.1.1",
2058
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
2059
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
2145
2060
  "license": "ISC"
2146
2061
  },
2147
2062
  "node_modules/pkg-dir": {
@@ -2735,13 +2650,10 @@
2735
2650
  }
2736
2651
  },
2737
2652
  "node_modules/text-decoder": {
2738
- "version": "1.2.0",
2739
- "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.0.tgz",
2740
- "integrity": "sha512-n1yg1mOj9DNpk3NeZOx7T6jchTbyJS3i3cucbNN6FcdPriMZx7NsgrGpWWdWZZGxD7ES1XB+3uoqHMgOKaN+fg==",
2741
- "license": "Apache-2.0",
2742
- "dependencies": {
2743
- "b4a": "^1.6.4"
2744
- }
2653
+ "version": "1.2.1",
2654
+ "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.1.tgz",
2655
+ "integrity": "sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==",
2656
+ "license": "Apache-2.0"
2745
2657
  },
2746
2658
  "node_modules/through": {
2747
2659
  "version": "2.3.8",
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "mac",
7
7
  "XCTest"
8
8
  ],
9
- "version": "1.20.1",
9
+ "version": "1.20.2",
10
10
  "author": "Appium Contributors",
11
11
  "license": "Apache-2.0",
12
12
  "repository": {