appium-xcuitest-driver 10.2.2 → 10.4.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 (262) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/lib/commands/active-app-info.d.ts +9 -0
  3. package/build/lib/commands/active-app-info.d.ts.map +1 -0
  4. package/build/lib/commands/active-app-info.js +14 -0
  5. package/build/lib/commands/active-app-info.js.map +1 -0
  6. package/build/lib/commands/alert.d.ts +42 -45
  7. package/build/lib/commands/alert.d.ts.map +1 -1
  8. package/build/lib/commands/alert.js +66 -62
  9. package/build/lib/commands/alert.js.map +1 -1
  10. package/build/lib/commands/app-management.d.ts +150 -153
  11. package/build/lib/commands/app-management.d.ts.map +1 -1
  12. package/build/lib/commands/app-management.js +300 -286
  13. package/build/lib/commands/app-management.js.map +1 -1
  14. package/build/lib/commands/app-strings.d.ts +14 -17
  15. package/build/lib/commands/app-strings.d.ts.map +1 -1
  16. package/build/lib/commands/app-strings.js +23 -24
  17. package/build/lib/commands/app-strings.js.map +1 -1
  18. package/build/lib/commands/appearance.d.ts +19 -22
  19. package/build/lib/commands/appearance.d.ts.map +1 -1
  20. package/build/lib/commands/appearance.js +56 -56
  21. package/build/lib/commands/appearance.js.map +1 -1
  22. package/build/lib/commands/audit.d.ts +22 -17
  23. package/build/lib/commands/audit.d.ts.map +1 -1
  24. package/build/lib/commands/audit.js +17 -18
  25. package/build/lib/commands/audit.js.map +1 -1
  26. package/build/lib/commands/battery.d.ts +11 -14
  27. package/build/lib/commands/battery.d.ts.map +1 -1
  28. package/build/lib/commands/battery.js +36 -37
  29. package/build/lib/commands/battery.js.map +1 -1
  30. package/build/lib/commands/biometric.d.ts +30 -33
  31. package/build/lib/commands/biometric.d.ts.map +1 -1
  32. package/build/lib/commands/biometric.js +42 -41
  33. package/build/lib/commands/biometric.js.map +1 -1
  34. package/build/lib/commands/certificate.d.ts +48 -45
  35. package/build/lib/commands/certificate.d.ts.map +1 -1
  36. package/build/lib/commands/certificate.js +218 -205
  37. package/build/lib/commands/certificate.js.map +1 -1
  38. package/build/lib/commands/clipboard.d.ts +19 -22
  39. package/build/lib/commands/clipboard.d.ts.map +1 -1
  40. package/build/lib/commands/clipboard.js +30 -30
  41. package/build/lib/commands/clipboard.js.map +1 -1
  42. package/build/lib/commands/condition.d.ts +49 -26
  43. package/build/lib/commands/condition.d.ts.map +1 -1
  44. package/build/lib/commands/condition.js +87 -86
  45. package/build/lib/commands/condition.js.map +1 -1
  46. package/build/lib/commands/content-size.d.ts +26 -29
  47. package/build/lib/commands/content-size.d.ts.map +1 -1
  48. package/build/lib/commands/content-size.js +36 -36
  49. package/build/lib/commands/content-size.js.map +1 -1
  50. package/build/lib/commands/context.d.ts +161 -108
  51. package/build/lib/commands/context.d.ts.map +1 -1
  52. package/build/lib/commands/context.js +530 -517
  53. package/build/lib/commands/context.js.map +1 -1
  54. package/build/lib/commands/deviceInfo.d.ts +9 -12
  55. package/build/lib/commands/deviceInfo.d.ts.map +1 -1
  56. package/build/lib/commands/deviceInfo.js +17 -18
  57. package/build/lib/commands/deviceInfo.js.map +1 -1
  58. package/build/lib/commands/element.d.ts +102 -105
  59. package/build/lib/commands/element.d.ts.map +1 -1
  60. package/build/lib/commands/element.js +337 -323
  61. package/build/lib/commands/element.js.map +1 -1
  62. package/build/lib/commands/execute.d.ts +24 -19
  63. package/build/lib/commands/execute.d.ts.map +1 -1
  64. package/build/lib/commands/execute.js +63 -62
  65. package/build/lib/commands/execute.js.map +1 -1
  66. package/build/lib/commands/file-movement.d.ts +77 -80
  67. package/build/lib/commands/file-movement.d.ts.map +1 -1
  68. package/build/lib/commands/file-movement.js +130 -124
  69. package/build/lib/commands/file-movement.js.map +1 -1
  70. package/build/lib/commands/find.d.ts +18 -21
  71. package/build/lib/commands/find.d.ts.map +1 -1
  72. package/build/lib/commands/find.js +158 -156
  73. package/build/lib/commands/find.js.map +1 -1
  74. package/build/lib/commands/general.d.ts +124 -116
  75. package/build/lib/commands/general.d.ts.map +1 -1
  76. package/build/lib/commands/general.js +248 -232
  77. package/build/lib/commands/general.js.map +1 -1
  78. package/build/lib/commands/geolocation.d.ts +43 -46
  79. package/build/lib/commands/geolocation.d.ts.map +1 -1
  80. package/build/lib/commands/geolocation.js +10 -11
  81. package/build/lib/commands/geolocation.js.map +1 -1
  82. package/build/lib/commands/gesture.d.ts +273 -276
  83. package/build/lib/commands/gesture.d.ts.map +1 -1
  84. package/build/lib/commands/gesture.js +506 -492
  85. package/build/lib/commands/gesture.js.map +1 -1
  86. package/build/lib/commands/increase-contrast.d.ts +20 -23
  87. package/build/lib/commands/increase-contrast.d.ts.map +1 -1
  88. package/build/lib/commands/increase-contrast.js +30 -30
  89. package/build/lib/commands/increase-contrast.js.map +1 -1
  90. package/build/lib/commands/iohid.d.ts +1370 -1373
  91. package/build/lib/commands/iohid.d.ts.map +1 -1
  92. package/build/lib/commands/iohid.js +30 -31
  93. package/build/lib/commands/iohid.js.map +1 -1
  94. package/build/lib/commands/keyboard.d.ts +29 -32
  95. package/build/lib/commands/keyboard.d.ts.map +1 -1
  96. package/build/lib/commands/keyboard.js +53 -51
  97. package/build/lib/commands/keyboard.js.map +1 -1
  98. package/build/lib/commands/keychains.d.ts +9 -12
  99. package/build/lib/commands/keychains.d.ts.map +1 -1
  100. package/build/lib/commands/keychains.js +13 -14
  101. package/build/lib/commands/keychains.js.map +1 -1
  102. package/build/lib/commands/localization.d.ts +16 -19
  103. package/build/lib/commands/localization.d.ts.map +1 -1
  104. package/build/lib/commands/localization.js +25 -26
  105. package/build/lib/commands/localization.js.map +1 -1
  106. package/build/lib/commands/location.d.ts +36 -39
  107. package/build/lib/commands/location.d.ts.map +1 -1
  108. package/build/lib/commands/location.js +99 -98
  109. package/build/lib/commands/location.js.map +1 -1
  110. package/build/lib/commands/lock.d.ts +21 -24
  111. package/build/lib/commands/lock.d.ts.map +1 -1
  112. package/build/lib/commands/lock.js +39 -38
  113. package/build/lib/commands/lock.js.map +1 -1
  114. package/build/lib/commands/log.d.ts +43 -37
  115. package/build/lib/commands/log.d.ts.map +1 -1
  116. package/build/lib/commands/log.js +174 -171
  117. package/build/lib/commands/log.js.map +1 -1
  118. package/build/lib/commands/memory.d.ts +9 -12
  119. package/build/lib/commands/memory.d.ts.map +1 -1
  120. package/build/lib/commands/memory.js +37 -39
  121. package/build/lib/commands/memory.js.map +1 -1
  122. package/build/lib/commands/navigation.d.ts +30 -33
  123. package/build/lib/commands/navigation.d.ts.map +1 -1
  124. package/build/lib/commands/navigation.js +92 -92
  125. package/build/lib/commands/navigation.js.map +1 -1
  126. package/build/lib/commands/notifications.d.ts +26 -29
  127. package/build/lib/commands/notifications.d.ts.map +1 -1
  128. package/build/lib/commands/notifications.js +53 -53
  129. package/build/lib/commands/notifications.js.map +1 -1
  130. package/build/lib/commands/pasteboard.d.ts +21 -24
  131. package/build/lib/commands/pasteboard.d.ts.map +1 -1
  132. package/build/lib/commands/pasteboard.js +37 -37
  133. package/build/lib/commands/pasteboard.js.map +1 -1
  134. package/build/lib/commands/pcap.d.ts +39 -26
  135. package/build/lib/commands/pcap.d.ts.map +1 -1
  136. package/build/lib/commands/pcap.js +81 -81
  137. package/build/lib/commands/pcap.js.map +1 -1
  138. package/build/lib/commands/performance.d.ts +63 -44
  139. package/build/lib/commands/performance.d.ts.map +1 -1
  140. package/build/lib/commands/performance.js +105 -105
  141. package/build/lib/commands/performance.js.map +1 -1
  142. package/build/lib/commands/permissions.d.ts +33 -36
  143. package/build/lib/commands/permissions.d.ts.map +1 -1
  144. package/build/lib/commands/permissions.js +66 -65
  145. package/build/lib/commands/permissions.js.map +1 -1
  146. package/build/lib/commands/proxy-helper.d.ts +12 -15
  147. package/build/lib/commands/proxy-helper.d.ts.map +1 -1
  148. package/build/lib/commands/proxy-helper.js +53 -54
  149. package/build/lib/commands/proxy-helper.js.map +1 -1
  150. package/build/lib/commands/record-audio.d.ts +49 -29
  151. package/build/lib/commands/record-audio.d.ts.map +1 -1
  152. package/build/lib/commands/record-audio.js +100 -104
  153. package/build/lib/commands/record-audio.js.map +1 -1
  154. package/build/lib/commands/recordscreen.d.ts +54 -18
  155. package/build/lib/commands/recordscreen.d.ts.map +1 -1
  156. package/build/lib/commands/recordscreen.js +127 -129
  157. package/build/lib/commands/recordscreen.js.map +1 -1
  158. package/build/lib/commands/screenshots.d.ts +14 -17
  159. package/build/lib/commands/screenshots.d.ts.map +1 -1
  160. package/build/lib/commands/screenshots.js +108 -107
  161. package/build/lib/commands/screenshots.js.map +1 -1
  162. package/build/lib/commands/simctl.d.ts +11 -14
  163. package/build/lib/commands/simctl.d.ts.map +1 -1
  164. package/build/lib/commands/simctl.js +23 -26
  165. package/build/lib/commands/simctl.js.map +1 -1
  166. package/build/lib/commands/source.d.ts +14 -17
  167. package/build/lib/commands/source.d.ts.map +1 -1
  168. package/build/lib/commands/source.js +40 -43
  169. package/build/lib/commands/source.js.map +1 -1
  170. package/build/lib/commands/timeouts.d.ts +44 -33
  171. package/build/lib/commands/timeouts.d.ts.map +1 -1
  172. package/build/lib/commands/timeouts.js +65 -63
  173. package/build/lib/commands/timeouts.js.map +1 -1
  174. package/build/lib/commands/web.d.ts +247 -197
  175. package/build/lib/commands/web.d.ts.map +1 -1
  176. package/build/lib/commands/web.js +815 -786
  177. package/build/lib/commands/web.js.map +1 -1
  178. package/build/lib/commands/xctest-record-screen.d.ts +63 -66
  179. package/build/lib/commands/xctest-record-screen.d.ts.map +1 -1
  180. package/build/lib/commands/xctest-record-screen.js +103 -102
  181. package/build/lib/commands/xctest-record-screen.js.map +1 -1
  182. package/build/lib/commands/xctest.d.ts +55 -51
  183. package/build/lib/commands/xctest.d.ts.map +1 -1
  184. package/build/lib/commands/xctest.js +116 -117
  185. package/build/lib/commands/xctest.js.map +1 -1
  186. package/build/lib/driver.d.ts +278 -1597
  187. package/build/lib/driver.d.ts.map +1 -1
  188. package/build/lib/driver.js +320 -236
  189. package/build/lib/driver.js.map +1 -1
  190. package/build/lib/execute-method-map.d.ts.map +1 -1
  191. package/build/lib/execute-method-map.js +9 -0
  192. package/build/lib/execute-method-map.js.map +1 -1
  193. package/build/lib/real-device.d.ts +1 -1
  194. package/build/lib/real-device.d.ts.map +1 -1
  195. package/build/lib/real-device.js +2 -2
  196. package/build/lib/real-device.js.map +1 -1
  197. package/lib/commands/active-app-info.js +12 -0
  198. package/lib/commands/alert.js +68 -65
  199. package/lib/commands/app-management.js +308 -301
  200. package/lib/commands/app-strings.js +24 -26
  201. package/lib/commands/appearance.js +54 -56
  202. package/lib/commands/audit.js +18 -20
  203. package/lib/commands/battery.js +35 -37
  204. package/lib/commands/biometric.js +44 -46
  205. package/lib/commands/certificate.js +226 -215
  206. package/lib/commands/clipboard.js +30 -32
  207. package/lib/commands/condition.js +98 -100
  208. package/lib/commands/content-size.js +36 -38
  209. package/lib/commands/context.js +495 -490
  210. package/lib/commands/deviceInfo.js +19 -20
  211. package/lib/commands/element.js +367 -357
  212. package/lib/commands/execute.js +72 -72
  213. package/lib/commands/file-movement.js +132 -134
  214. package/lib/commands/find.js +160 -159
  215. package/lib/commands/general.js +238 -231
  216. package/lib/commands/geolocation.js +6 -14
  217. package/lib/commands/gesture.js +525 -515
  218. package/lib/commands/increase-contrast.js +30 -32
  219. package/lib/commands/iohid.js +32 -34
  220. package/lib/commands/keyboard.js +49 -51
  221. package/lib/commands/keychains.js +12 -14
  222. package/lib/commands/localization.js +24 -26
  223. package/lib/commands/location.js +102 -104
  224. package/lib/commands/lock.js +38 -38
  225. package/lib/commands/log.js +197 -198
  226. package/lib/commands/memory.js +40 -43
  227. package/lib/commands/navigation.js +96 -100
  228. package/lib/commands/notifications.js +57 -59
  229. package/lib/commands/pasteboard.js +37 -39
  230. package/lib/commands/pcap.js +84 -86
  231. package/lib/commands/performance.js +132 -133
  232. package/lib/commands/permissions.js +67 -69
  233. package/lib/commands/proxy-helper.js +60 -61
  234. package/lib/commands/record-audio.js +115 -120
  235. package/lib/commands/recordscreen.js +145 -149
  236. package/lib/commands/screenshots.js +116 -116
  237. package/lib/commands/simctl.js +25 -29
  238. package/lib/commands/source.js +42 -46
  239. package/lib/commands/timeouts.js +59 -63
  240. package/lib/commands/web.js +878 -858
  241. package/lib/commands/xctest-record-screen.js +103 -105
  242. package/lib/commands/xctest.js +134 -139
  243. package/lib/driver.js +288 -236
  244. package/lib/execute-method-map.ts +9 -0
  245. package/lib/real-device.js +2 -2
  246. package/npm-shrinkwrap.json +440 -76
  247. package/package.json +2 -1
  248. package/build/lib/commands/activeAppInfo.d.ts +0 -12
  249. package/build/lib/commands/activeAppInfo.d.ts.map +0 -1
  250. package/build/lib/commands/activeAppInfo.js +0 -15
  251. package/build/lib/commands/activeAppInfo.js.map +0 -1
  252. package/build/lib/commands/index.d.ts +0 -96
  253. package/build/lib/commands/index.d.ts.map +0 -1
  254. package/build/lib/commands/index.js +0 -100
  255. package/build/lib/commands/index.js.map +0 -1
  256. package/build/lib/real-device-clients/devicectl.d.ts +0 -204
  257. package/build/lib/real-device-clients/devicectl.d.ts.map +0 -1
  258. package/build/lib/real-device-clients/devicectl.js +0 -264
  259. package/build/lib/real-device-clients/devicectl.js.map +0 -1
  260. package/lib/commands/activeAppInfo.js +0 -14
  261. package/lib/commands/index.js +0 -95
  262. package/lib/real-device-clients/devicectl.js +0 -291
@@ -1,6 +1,104 @@
1
1
  import {INSTRUMENT_CHANNEL, services} from 'appium-ios-device';
2
2
  import _ from 'lodash';
3
3
 
4
+ /**
5
+ * Get all available ConditionInducer configuration information, which can be used with
6
+ * {@linkcode XCUITestDriver.enableConditionInducer}
7
+ * @returns {Promise<Condition[]>}
8
+ * @since 4.9.0
9
+ * @see {@link https://help.apple.com/xcode/mac/current/#/dev308429d42}
10
+ * @this {XCUITestDriver}
11
+ */
12
+ export async function listConditionInducers() {
13
+ requireConditionInducerCompatibleDevice.bind(this);
14
+ const conditionInducerService = await services.startInstrumentService(this.device.udid);
15
+ try {
16
+ const ret = await conditionInducerService.callChannel(
17
+ INSTRUMENT_CHANNEL.CONDITION_INDUCER,
18
+ 'availableConditionInducers',
19
+ );
20
+ return ret.selector;
21
+ } finally {
22
+ conditionInducerService.close();
23
+ }
24
+ }
25
+
26
+ /**
27
+ * Enable a "condition inducer". You can create a condition on a connected device to test your app under adverse conditions,
28
+ * such as poor network connectivity or thermal constraints. When you start a device condition,
29
+ * the operating system on the device behaves as if its environment has changed. The device
30
+ * condition remains active until you stop the device condition or disconnect the device. For
31
+ * example, you can start a device condition, run your app, monitor your app's energy usage, and
32
+ * then stop the condition.
33
+ *
34
+ * (Note: the socket needs to remain connected during operation)
35
+ * (Note: Device conditions are available only for real devices running iOS 13.0 and later.)
36
+ *
37
+ * @param {string} conditionID - Determine which condition IDs are available with the {@linkcode XCUITestDriver.listConditionInducers} command
38
+ * @param {string} profileID - Determine which profile IDs are available with the {@linkcode XCUITestDriver.listConditionInducers} command
39
+ * @returns {Promise<boolean>} `true` if enabling the condition succeeded
40
+ * @throws {Error} If you try to start another Condition and the previous Condition has not stopped
41
+ * @since 4.9.0
42
+ * @see {@link https://help.apple.com/xcode/mac/current/#/dev308429d42}
43
+ * @this {XCUITestDriver}
44
+ */
45
+ export async function enableConditionInducer(conditionID, profileID) {
46
+ requireConditionInducerCompatibleDevice.bind(this);
47
+ if (this._conditionInducerService && !this._conditionInducerService._socketClient.destroyed) {
48
+ throw this.log.errorWithException(
49
+ `Condition inducer has been started. A condition is already active.`
50
+ );
51
+ }
52
+ this._conditionInducerService = await services.startInstrumentService(this.device.udid);
53
+ const ret = await this._conditionInducerService.callChannel(
54
+ INSTRUMENT_CHANNEL.CONDITION_INDUCER,
55
+ 'enableConditionWithIdentifier:profileIdentifier:',
56
+ conditionID,
57
+ profileID,
58
+ );
59
+ if (!_.isBoolean(ret.selector)) {
60
+ this._conditionInducerService.close();
61
+ this._conditionInducerService = null;
62
+ throw this.log.errorWithException(`Enable condition inducer error: '${JSON.stringify(ret.selector)}'`);
63
+ }
64
+ return ret.selector;
65
+ }
66
+
67
+ /**
68
+ * Disable a condition inducer enabled with {@linkcode XCUITestDriver.enableConditionInducer} Usually
69
+ * a persistent connection is maintained after the condition inducer is enabled, and this method
70
+ * is only valid for the currently enabled connection. If the connection is disconnected, the
71
+ * condition inducer will be automatically disabled
72
+ *
73
+ * (Note: this is also automatically called upon session cleanup)
74
+ * @returns {Promise<boolean>} `true` if disable the condition succeeded
75
+ * @since 4.9.0
76
+ * @see {@link https://help.apple.com/xcode/mac/current/#/dev308429d42}
77
+ * @this {XCUITestDriver}
78
+ */
79
+ export async function disableConditionInducer() {
80
+ if (!this._conditionInducerService) {
81
+ this.log.warn('Condition inducer server is not started');
82
+ return false;
83
+ }
84
+ try {
85
+ const ret = await this._conditionInducerService.callChannel(
86
+ INSTRUMENT_CHANNEL.CONDITION_INDUCER,
87
+ 'disableActiveCondition',
88
+ );
89
+ if (!_.isBoolean(ret.selector)) {
90
+ this.log.warn(`Disable condition inducer error: '${JSON.stringify(ret.selector)}'`);
91
+ return false;
92
+ }
93
+ return ret.selector;
94
+ } finally {
95
+ if (this._conditionInducerService) {
96
+ this._conditionInducerService.close();
97
+ this._conditionInducerService = null;
98
+ }
99
+ }
100
+ }
101
+
4
102
  /**
5
103
  * @this {XCUITestDriver}
6
104
  * @returns {void}
@@ -52,106 +150,6 @@ function requireConditionInducerCompatibleDevice() {
52
150
  * }
53
151
  */
54
152
 
55
- export default {
56
- /**
57
- * Get all available ConditionInducer configuration information, which can be used with
58
- * {@linkcode XCUITestDriver.enableConditionInducer}
59
- * @returns {Promise<Condition[]>}
60
- * @since 4.9.0
61
- * @see {@link https://help.apple.com/xcode/mac/current/#/dev308429d42}
62
- * @this {XCUITestDriver}
63
- */
64
- async listConditionInducers() {
65
- requireConditionInducerCompatibleDevice.bind(this);
66
- const conditionInducerService = await services.startInstrumentService(this.device.udid);
67
- try {
68
- const ret = await conditionInducerService.callChannel(
69
- INSTRUMENT_CHANNEL.CONDITION_INDUCER,
70
- 'availableConditionInducers',
71
- );
72
- return ret.selector;
73
- } finally {
74
- conditionInducerService.close();
75
- }
76
- },
77
-
78
- /**
79
- * Enable a "condition inducer". You can create a condition on a connected device to test your app under adverse conditions,
80
- * such as poor network connectivity or thermal constraints. When you start a device condition,
81
- * the operating system on the device behaves as if its environment has changed. The device
82
- * condition remains active until you stop the device condition or disconnect the device. For
83
- * example, you can start a device condition, run your app, monitor your app’s energy usage, and
84
- * then stop the condition.
85
- *
86
- * (Note: the socket needs to remain connected during operation)
87
- * (Note: Device conditions are available only for real devices running iOS 13.0 and later.)
88
- *
89
- * @param {string} conditionID - Determine which condition IDs are available with the {@linkcode XCUITestDriver.listConditionInducers} command
90
- * @param {string} profileID - Determine which profile IDs are available with the {@linkcode XCUITestDriver.listConditionInducers} command
91
- * @returns {Promise<boolean>} `true` if enabling the condition succeeded
92
- * @throws {Error} If you try to start another Condition and the previous Condition has not stopped
93
- * @since 4.9.0
94
- * @see {@link https://help.apple.com/xcode/mac/current/#/dev308429d42}
95
- * @this {XCUITestDriver}
96
- */
97
- async enableConditionInducer(conditionID, profileID) {
98
- requireConditionInducerCompatibleDevice.bind(this);
99
- if (this._conditionInducerService && !this._conditionInducerService._socketClient.destroyed) {
100
- throw this.log.errorWithException(
101
- `Condition inducer has been started. A condition is already active.`
102
- );
103
- }
104
- this._conditionInducerService = await services.startInstrumentService(this.device.udid);
105
- const ret = await this._conditionInducerService.callChannel(
106
- INSTRUMENT_CHANNEL.CONDITION_INDUCER,
107
- 'enableConditionWithIdentifier:profileIdentifier:',
108
- conditionID,
109
- profileID,
110
- );
111
- if (!_.isBoolean(ret.selector)) {
112
- this._conditionInducerService.close();
113
- this._conditionInducerService = null;
114
- throw this.log.errorWithException(`Enable condition inducer error: '${JSON.stringify(ret.selector)}'`);
115
- }
116
- return ret.selector;
117
- },
118
-
119
- /**
120
- * Disable a condition inducer enabled with {@linkcode XCUITestDriver.enableConditionInducer} Usually
121
- * a persistent connection is maintained after the condition inducer is enabled, and this method
122
- * is only valid for the currently enabled connection. If the connection is disconnected, the
123
- * condition inducer will be automatically disabled
124
- *
125
- * (Note: this is also automatically called upon session cleanup)
126
- * @returns {Promise<boolean>} `true` if disable the condition succeeded
127
- * @since 4.9.0
128
- * @see {@link https://help.apple.com/xcode/mac/current/#/dev308429d42}
129
- * @this {XCUITestDriver}
130
- */
131
- async disableConditionInducer() {
132
- if (!this._conditionInducerService) {
133
- this.log.warn('Condition inducer server is not started');
134
- return false;
135
- }
136
- try {
137
- const ret = await this._conditionInducerService.callChannel(
138
- INSTRUMENT_CHANNEL.CONDITION_INDUCER,
139
- 'disableActiveCondition',
140
- );
141
- if (!_.isBoolean(ret.selector)) {
142
- this.log.warn(`Disable condition inducer error: '${JSON.stringify(ret.selector)}'`);
143
- return false;
144
- }
145
- return ret.selector;
146
- } finally {
147
- if (this._conditionInducerService) {
148
- this._conditionInducerService.close();
149
- this._conditionInducerService = null;
150
- }
151
- }
152
- },
153
- };
154
-
155
153
  /**
156
154
  * @typedef {import('../driver').XCUITestDriver} XCUITestDriver
157
155
  */
@@ -21,47 +21,45 @@ const CONTENT_SIZE = [
21
21
  'decrement'
22
22
  ];
23
23
 
24
- export default {
25
- /**
26
- * Sets content size for the given simulator.
27
- *
28
- * @since Xcode 15 (but lower xcode could have this command)
29
- * @param {ContentSizeAction} size - The content size action to set. Acceptable value is
30
- * extra-small, small, medium, large, extra-large, extra-extra-large,
31
- * extra-extra-extra-large, accessibility-medium, accessibility-large,
32
- * accessibility-extra-large, accessibility-extra-extra-large,
33
- * accessibility-extra-extra-extra-large with Xcode 16.2.
34
- * @throws {Error} if the current platform does not support content size appearance changes
35
- * @this {XCUITestDriver}
36
- */
37
- async mobileSetContentSize(size) {
38
- const simulator = assertSimulator(this);
24
+ /**
25
+ * Sets content size for the given simulator.
26
+ *
27
+ * @since Xcode 15 (but lower xcode could have this command)
28
+ * @param {ContentSizeAction} size - The content size action to set. Acceptable value is
29
+ * extra-small, small, medium, large, extra-large, extra-extra-large,
30
+ * extra-extra-extra-large, accessibility-medium, accessibility-large,
31
+ * accessibility-extra-large, accessibility-extra-extra-large,
32
+ * accessibility-extra-extra-extra-large with Xcode 16.2.
33
+ * @throws {Error} if the current platform does not support content size appearance changes
34
+ * @this {XCUITestDriver}
35
+ */
36
+ export async function mobileSetContentSize(size) {
37
+ const simulator = assertSimulator(this);
39
38
 
40
- if (!CONTENT_SIZE.includes(_.lowerCase(size))) {
41
- throw new errors.InvalidArgumentError(
42
- `The 'size' value is expected to be one of ${CONTENT_SIZE.join(',')}`
43
- );
44
- }
39
+ if (!CONTENT_SIZE.includes(_.lowerCase(size))) {
40
+ throw new errors.InvalidArgumentError(
41
+ `The 'size' value is expected to be one of ${CONTENT_SIZE.join(',')}`
42
+ );
43
+ }
45
44
 
46
- await simulator.setContentSize(size);
47
- },
45
+ await simulator.setContentSize(size);
46
+ }
48
47
 
49
- /**
50
- * Retrieves the current content size value from the given simulator.
51
- *
52
- * @since Xcode 15 (but lower xcode could have this command)
53
- * @returns {Promise<ContentSizeResult>} the content size value. Possible return value is
54
- * extra-small, small, medium, large, extra-large, extra-extra-large,
55
- * extra-extra-extra-large, accessibility-medium, accessibility-large,
56
- * accessibility-extra-large, accessibility-extra-extra-large,
57
- * accessibility-extra-extra-extra-large,
58
- * unknown or unsupported with Xcode 16.2.
59
- * @this {XCUITestDriver}
60
- */
61
- async mobileGetContentSize() {
62
- return /** @type {ContentSizeResult} */ (await assertSimulator(this).getContentSize());
63
- },
64
- };
48
+ /**
49
+ * Retrieves the current content size value from the given simulator.
50
+ *
51
+ * @since Xcode 15 (but lower xcode could have this command)
52
+ * @returns {Promise<ContentSizeResult>} the content size value. Possible return value is
53
+ * extra-small, small, medium, large, extra-large, extra-extra-large,
54
+ * extra-extra-extra-large, accessibility-medium, accessibility-large,
55
+ * accessibility-extra-large, accessibility-extra-extra-large,
56
+ * accessibility-extra-extra-extra-large,
57
+ * unknown or unsupported with Xcode 16.2.
58
+ * @this {XCUITestDriver}
59
+ */
60
+ export async function mobileGetContentSize() {
61
+ return /** @type {ContentSizeResult} */ (await assertSimulator(this).getContentSize());
62
+ }
65
63
 
66
64
  /**
67
65
  * @typedef {import('../driver').XCUITestDriver} XCUITestDriver