@appium/fake-driver 4.2.1 → 5.0.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 (68) hide show
  1. package/build/lib/commands/alert.d.ts +345 -13
  2. package/build/lib/commands/alert.d.ts.map +1 -1
  3. package/build/lib/commands/alert.js +80 -53
  4. package/build/lib/commands/alert.js.map +1 -0
  5. package/build/lib/commands/contexts.d.ts +359 -14
  6. package/build/lib/commands/contexts.d.ts.map +1 -1
  7. package/build/lib/commands/contexts.js +102 -86
  8. package/build/lib/commands/contexts.js.map +1 -0
  9. package/build/lib/commands/element.d.ts +326 -22
  10. package/build/lib/commands/element.d.ts.map +1 -1
  11. package/build/lib/commands/element.js +108 -123
  12. package/build/lib/commands/element.js.map +1 -0
  13. package/build/lib/commands/find.d.ts +338 -18
  14. package/build/lib/commands/find.d.ts.map +1 -1
  15. package/build/lib/commands/find.js +113 -107
  16. package/build/lib/commands/find.js.map +1 -0
  17. package/build/lib/commands/general.d.ts +364 -28
  18. package/build/lib/commands/general.d.ts.map +1 -1
  19. package/build/lib/commands/general.js +97 -106
  20. package/build/lib/commands/general.js.map +1 -0
  21. package/build/lib/commands/index.d.ts +1598 -2
  22. package/build/lib/commands/index.d.ts.map +1 -1
  23. package/build/lib/commands/index.js +97 -18
  24. package/build/lib/commands/index.js.map +1 -0
  25. package/build/lib/driver.d.ts +118 -36
  26. package/build/lib/driver.d.ts.map +1 -1
  27. package/build/lib/driver.js +170 -145
  28. package/build/lib/driver.js.map +1 -0
  29. package/build/lib/fake-app.d.ts +15 -6
  30. package/build/lib/fake-app.d.ts.map +1 -1
  31. package/build/lib/fake-app.js +155 -194
  32. package/build/lib/fake-app.js.map +1 -0
  33. package/build/lib/fake-driver-schema.js +34 -26
  34. package/build/lib/fake-driver-schema.js.map +1 -0
  35. package/build/lib/fake-element.js +87 -121
  36. package/build/lib/fake-element.js.map +1 -0
  37. package/build/lib/index.d.ts +4 -5
  38. package/build/lib/index.d.ts.map +1 -1
  39. package/build/lib/index.js +15 -36
  40. package/build/lib/index.js.map +1 -0
  41. package/build/lib/logger.d.ts +1 -1
  42. package/build/lib/logger.d.ts.map +1 -1
  43. package/build/lib/logger.js +5 -15
  44. package/build/lib/logger.js.map +1 -0
  45. package/build/lib/scripts/fake-error.js +1 -5
  46. package/build/lib/scripts/fake-error.js.map +1 -0
  47. package/build/lib/scripts/fake-success.js +8 -11
  48. package/build/lib/scripts/fake-success.js.map +1 -0
  49. package/build/lib/server.d.ts +1 -1
  50. package/build/lib/server.d.ts.map +1 -1
  51. package/build/lib/server.js +18 -27
  52. package/build/lib/server.js.map +1 -0
  53. package/build/lib/types.d.ts +36 -0
  54. package/build/lib/types.d.ts.map +1 -0
  55. package/build/lib/types.js +3 -0
  56. package/build/lib/types.js.map +1 -0
  57. package/build/tsconfig.tsbuildinfo +1 -1
  58. package/lib/commands/alert.js +74 -34
  59. package/lib/commands/contexts.js +90 -52
  60. package/lib/commands/element.js +111 -98
  61. package/lib/commands/find.js +101 -77
  62. package/lib/commands/general.js +106 -75
  63. package/lib/commands/index.js +13 -17
  64. package/lib/driver.js +103 -32
  65. package/lib/fake-app.js +20 -6
  66. package/lib/index.js +4 -7
  67. package/lib/types.ts +42 -0
  68. package/package.json +11 -12
@@ -1,29 +1,365 @@
1
- export default extensions;
2
- export namespace commands {
3
- function title(): Promise<any>;
4
- function keys(value: any): Promise<void>;
5
- function setGeoLocation(location: any): Promise<void>;
6
- function getGeoLocation(): Promise<any>;
7
- function getPageSource(): Promise<any>;
8
- function getOrientation(): Promise<any>;
9
- function setOrientation(o: any): Promise<void>;
10
- function getScreenshot(): Promise<any>;
11
- function getWindowSize(): Promise<{
12
- width: any;
13
- height: any;
14
- }>;
15
- function getWindowRect(): Promise<{
16
- width: any;
17
- height: any;
18
- x: number;
19
- y: number;
20
- }>;
21
- function performActions(actions: any): Promise<void>;
22
- function releaseActions(): Promise<void>;
23
- function getLog(type: any): Promise<any>;
24
- function execute(script: any, args: any): Promise<any>;
25
- function fakeAddition(num1: any, num2: any, num3: any): Promise<any>;
26
- }
27
- export let helpers: {};
28
- declare let extensions: {};
1
+ /// <reference types="node" />
2
+ /**
3
+ * @template {Class<import('../types').IContextsCommands & import('../types').IElementCommands>} T
4
+ * @param {T} Base
5
+ */
6
+ export function GeneralMixin<T extends Class<import("../types").IContextsCommands & import("../types").IElementCommands, {}, any[]>>(Base: T): {
7
+ new (...arguments_: any[]): {
8
+ title(): Promise<any>;
9
+ keys(value: any): Promise<void>;
10
+ setGeoLocation(location: any): Promise<void>;
11
+ getGeoLocation(): Promise<import("@appium/types").Location>;
12
+ getPageSource(): Promise<string>;
13
+ getOrientation(): Promise<string>;
14
+ /**
15
+ *
16
+ * @param {import('../types').FakeDriverCaps['orientation']} o
17
+ */
18
+ setOrientation(o: import('../types').FakeDriverCaps['orientation']): Promise<void>;
19
+ getScreenshot(): Promise<string>;
20
+ getWindowSize(): Promise<{
21
+ width: number;
22
+ height: number;
23
+ }>;
24
+ getWindowRect(): Promise<{
25
+ width: number;
26
+ height: number;
27
+ x: number;
28
+ y: number;
29
+ }>;
30
+ performActions(actions: any): Promise<void>;
31
+ releaseActions(): Promise<void>;
32
+ getLog(type: any): Promise<any[]>;
33
+ execute(script: any, args: any): Promise<any>;
34
+ /**
35
+ * Add two or maybe even three numbers
36
+ *
37
+ * @param {number} num1
38
+ * @param {number} num2
39
+ * @param {number} [num3]
40
+ * @returns {Promise<number>}
41
+ */
42
+ fakeAddition(num1: number, num2: number, num3?: number | undefined): Promise<number>;
43
+ assertWebviewContext(): void;
44
+ elMap: Record<string, import("../fake-element").FakeElement>;
45
+ maxElId: number;
46
+ appModel: import("../fake-app").FakeApp;
47
+ focusedElId: string;
48
+ curContext: string;
49
+ server?: import("@appium/types").AppiumServer | undefined;
50
+ serverHost?: string | undefined;
51
+ serverPort?: number | undefined;
52
+ serverPath?: string | undefined;
53
+ setUrl?(url: string): Promise<void>;
54
+ getUrl?(): Promise<string>;
55
+ back?(): Promise<void>;
56
+ forward?(): Promise<void>;
57
+ refresh?(): Promise<void>;
58
+ getWindowHandle?(): Promise<string>;
59
+ closeWindow?(): Promise<string[]>;
60
+ setWindow?(handle: string): Promise<void>;
61
+ getWindowHandles?(): Promise<string[]>;
62
+ setFrame?(id: string | number | null): Promise<void>;
63
+ setWindowRect?(x: number, y: number, width: number, height: number): Promise<import("@appium/types").Rect>;
64
+ maximizeWindow?(): Promise<import("@appium/types").Rect>;
65
+ minimizeWindow?(): Promise<import("@appium/types").Rect>;
66
+ fullScreenWindow?(): Promise<import("@appium/types").Rect>;
67
+ createNewWindow?(type?: import("@appium/types").NewWindowType | undefined): Promise<import("@appium/types").NewWindow>;
68
+ active?(): Promise<import("@appium/types").Element>;
69
+ elementSelected?(elementId: string): Promise<boolean>;
70
+ getAttribute?(name: string, elementId: string): Promise<string | null>;
71
+ getProperty?(name: string, elementId: string): Promise<string | null>;
72
+ getCssProperty?(name: string, elementId: string): Promise<string>;
73
+ getText?(elementId: string): Promise<string>;
74
+ getName?(elementId: string): Promise<string>;
75
+ getElementRect?(elementId: string): Promise<import("@appium/types").Rect>;
76
+ elementEnabled?(elementId: string): Promise<boolean>;
77
+ elementDisplayed?(elementId: string): Promise<boolean>;
78
+ click?(elementId: string): Promise<void>;
79
+ clear?(elementId: string): Promise<void>;
80
+ setValue: ((text: string, elementId: string) => Promise<void>) & ((text: string, id: string) => Promise<void>);
81
+ executeAsync?(script: string, args: unknown[]): Promise<unknown>;
82
+ getCookies?(): Promise<import("@appium/types").Cookie[]>;
83
+ getCookie?(name: string): Promise<import("@appium/types").Cookie>;
84
+ setCookie?(cookie: import("@appium/types").Cookie): Promise<void>;
85
+ deleteCookie?(name: string): Promise<void>;
86
+ deleteCookies?(): Promise<void>;
87
+ postDismissAlert?(): Promise<void>;
88
+ postAcceptAlert?(): Promise<void>;
89
+ getAlertText?(): Promise<string | null>;
90
+ setAlertText?(text: string): Promise<void>;
91
+ getElementScreenshot?(elementId: string): Promise<string>;
92
+ mobileShake?(): Promise<void>;
93
+ getDeviceTime?(format?: string | undefined): Promise<string>;
94
+ lock?(seconds?: number | undefined): Promise<void>;
95
+ unlock?(): Promise<void>;
96
+ isLocked?(): Promise<boolean>;
97
+ startRecordingScreen?(options?: import("@appium/types").ScreenRecordOptions | undefined): Promise<void>;
98
+ stopRecordingScreen?(options?: import("@appium/types").ScreenRecordOptions | undefined): Promise<string>;
99
+ getPerformanceDataTypes?(): Promise<string[]>;
100
+ getPerformanceData?(packageName: string, dataType: string, dataReadTimeout?: number | undefined): Promise<string[]>;
101
+ pressKeyCode?(keycode: number, metastate?: number | undefined, flags?: number | undefined): Promise<void>;
102
+ longPressKeyCode?(keycode: number, metastate?: number | undefined, flags?: number | undefined): Promise<void>;
103
+ fingerprint?(fingerprintId: number): Promise<void>;
104
+ sendSMS?(phoneNumber: string, message: string): Promise<void>;
105
+ gsmCall?(phoneNumber: string, action: string): Promise<void>;
106
+ gsmSignal?(signalStrength: string): Promise<void>;
107
+ gsmVoice?(state: string): Promise<void>;
108
+ powerCapacity?(percent: number): Promise<void>;
109
+ powerAC?(state: string): Promise<void>;
110
+ networkSpeed?(netspeed: string): Promise<void>;
111
+ keyevent?(keycode: string, metastate?: string | undefined): Promise<void>;
112
+ mobileRotation?(x: number, y: number, radius: number, rotation: number, touchCount: number, duration: string, elementId?: string | undefined): Promise<void>;
113
+ getCurrentActivity?(): Promise<string>;
114
+ getCurrentPackage?(): Promise<string>;
115
+ installApp?(appPath: string, options?: unknown): Promise<void>;
116
+ activateApp?(appId: string, options?: unknown): Promise<void>;
117
+ removeApp?(appId: string, options?: unknown): Promise<void>;
118
+ terminateApp?(appId: string, options?: unknown): Promise<void>;
119
+ isAppInstalled?(appId: string): Promise<boolean>;
120
+ queryAppState?(appId: string): Promise<number>;
121
+ hideKeyboard?(strategy?: string | undefined, key?: string | undefined, keyCode?: string | undefined, keyName?: string | undefined): Promise<void>;
122
+ isKeyboardShown?(): Promise<boolean>;
123
+ pushFile?(path: string, data: string): Promise<void>;
124
+ pullFile?(path: string): Promise<string>;
125
+ pullFolder?(path: string): Promise<string>;
126
+ toggleFlightMode?(): Promise<void>;
127
+ toggleData?(): Promise<void>;
128
+ toggleWiFi?(): Promise<void>;
129
+ toggleLocationServices?(): Promise<void>;
130
+ openNotifications?(): Promise<void>;
131
+ startActivity?(appPackage: string, appActivity: string, appWaitPackage?: string | undefined, appWaitActivity?: string | undefined, intentAction?: string | undefined, intentCategory?: string | undefined, intentFlags?: string | undefined, optionalIntentArguments?: string | undefined, dontStopAppOnReset?: boolean | undefined): Promise<void>;
132
+ getSystemBars?(): Promise<unknown[]>;
133
+ getDisplayDensity?(): Promise<number>;
134
+ touchId?(match: boolean): Promise<void>;
135
+ toggleEnrollTouchId?(enabled: boolean): Promise<void>;
136
+ launchApp?(): Promise<void>;
137
+ closeApp?(): Promise<void>;
138
+ background?(seconds: number | null): Promise<void>;
139
+ endCoverage?(intent: string, path: string): Promise<void>;
140
+ getStrings?(language?: string | undefined, stringFile?: string | undefined): Promise<Record<string, unknown>>;
141
+ setValueImmediate?(value: string, elementId: string): Promise<void>;
142
+ replaceValue?(value: string, elementId: string): Promise<void>;
143
+ receiveAsyncResponse?(response: unknown): Promise<void>;
144
+ setClipboard?(content: string, contentType?: string | undefined, label?: string | undefined): Promise<void>;
145
+ getClipboard?(contentType?: string | undefined): Promise<string>;
146
+ asyncScriptTimeout?(ms: number): Promise<void>;
147
+ getLocation?(elementId: string): Promise<import("@appium/types").Position>;
148
+ getLocationInView?(elementId: string): Promise<import("@appium/types").Position>;
149
+ getSize?(elementId: string): Promise<import("@appium/types").Size>;
150
+ elementShadowRoot?(elementId: string): Promise<import("@appium/types").Element>;
151
+ findElementFromShadowRoot?(strategy: string, selector: string, shadowId: string): Promise<import("@appium/types").Element>;
152
+ findElementsFromShadowRoot?(strategy: string, selector: string, shadowId: string): Promise<import("@appium/types").Element[]>;
153
+ equalsElement?(elementId: string, otherElementId: string): Promise<boolean>;
154
+ submit?(elementId: string): Promise<void>;
155
+ availableIMEEngines?(): Promise<string[]>;
156
+ getActiveIMEEngine?(): Promise<string>;
157
+ isIMEActivated?(): Promise<boolean>;
158
+ deactivateIMEEngine?(): Promise<void>;
159
+ activateIMEEngine?(engine: string): Promise<void>;
160
+ moveTo?(element?: string | null | undefined, xOffset?: number | undefined, yOffset?: number | undefined): Promise<void>;
161
+ buttonDown?(button?: number | undefined): Promise<void>;
162
+ buttonUp?(button?: number | undefined): Promise<void>;
163
+ clickCurrent?(button?: number | undefined): Promise<void>;
164
+ doubleClick?(): Promise<void>;
165
+ touchDown?(x: number, y: number): Promise<void>;
166
+ touchUp?(x: number, y: number): Promise<void>;
167
+ touchMove?(x: number, y: number): Promise<void>;
168
+ touchLongClick?(elementId: string): Promise<void>;
169
+ flick?(element?: string | undefined, xSpeed?: number | undefined, ySpeed?: number | undefined, xOffset?: number | undefined, yOffset?: number | undefined, speed?: number | undefined): Promise<void>;
170
+ getCurrentContext?(): Promise<string | null>;
171
+ setContext?(name: string): Promise<void>;
172
+ getContexts?(): Promise<string[]>;
173
+ getPageIndex?(elementId: string): Promise<string>;
174
+ getNetworkConnection?(): Promise<number>;
175
+ setNetworkConnection?(type: number): Promise<void>;
176
+ performTouch?(actions: unknown): Promise<void>;
177
+ performMultiAction?(actions: unknown, elementId: string): Promise<void>;
178
+ getRotation?(): Promise<import("@appium/types").Rotation>;
179
+ setRotation?(x: number, y: number, z: number): Promise<void>;
180
+ executeCdp?(cmd: string, params: unknown): Promise<unknown>;
181
+ addVirtualAuthenticator?(protocol: string, transport: string, hasResidentKey?: boolean | undefined, hasUserVerification?: boolean | undefined, isUserConsenting?: boolean | undefined, isUserVerified?: boolean | undefined): Promise<void>;
182
+ removeVirtualAuthenticator?(): Promise<void>;
183
+ addAuthCredential?(credentialId: string, isResidentCredential: boolean, rpId: string, privateKey: string, userHandle?: string | undefined, signCount?: number | undefined): Promise<void>;
184
+ getAuthCredential?(): Promise<import("@appium/types").Credential[]>;
185
+ removeAllAuthCredentials?(): Promise<void>;
186
+ removeAuthCredential?(): Promise<void>;
187
+ setUserAuthVerified?(isUserVerified: boolean): Promise<void>;
188
+ proxyCommand?<T_1 = any>(url: string, method: import("@appium/types").HTTPMethod, body?: string | undefined): Promise<T_1>;
189
+ cliArgs: import("@appium/types").StringRecord;
190
+ executeCommand(cmd: string, ...args: any[]): Promise<any>;
191
+ startUnexpectedShutdown(err?: Error | undefined): Promise<void>;
192
+ startNewCommandTimeout(): Promise<void>;
193
+ reset(): Promise<void>;
194
+ caps?: Partial<import("@appium/types").ConstraintsToCaps<{
195
+ readonly app: {
196
+ readonly presence: true;
197
+ readonly isString: true; /**
198
+ * @implements {IGeneralCommands}
199
+ */
200
+ };
201
+ readonly uniqueApp: {
202
+ readonly isBoolean: true;
203
+ };
204
+ }> & void> | undefined;
205
+ originalCaps?: import("@appium/types").W3CCapabilities<{
206
+ readonly app: {
207
+ readonly presence: true;
208
+ readonly isString: true; /**
209
+ * @implements {IGeneralCommands}
210
+ */
211
+ };
212
+ readonly uniqueApp: {
213
+ readonly isBoolean: true;
214
+ };
215
+ }, void> | undefined;
216
+ desiredCapConstraints: {
217
+ readonly app: {
218
+ readonly presence: true;
219
+ readonly isString: true; /**
220
+ * @implements {IGeneralCommands}
221
+ */
222
+ };
223
+ readonly uniqueApp: {
224
+ readonly isBoolean: true;
225
+ };
226
+ };
227
+ validateDesiredCaps(caps: Partial<import("@appium/types").ConstraintsToCaps<{
228
+ readonly app: {
229
+ readonly presence: true;
230
+ readonly isString: true; /**
231
+ * @implements {IGeneralCommands}
232
+ */
233
+ };
234
+ readonly uniqueApp: {
235
+ readonly isBoolean: true;
236
+ };
237
+ }> & void>): boolean;
238
+ logExtraCaps(caps: Partial<import("@appium/types").ConstraintsToCaps<{
239
+ readonly app: {
240
+ readonly presence: true;
241
+ readonly isString: true; /**
242
+ * @implements {IGeneralCommands}
243
+ */
244
+ };
245
+ readonly uniqueApp: {
246
+ readonly isBoolean: true;
247
+ };
248
+ }> & void>): void;
249
+ assignServer?(server: import("@appium/types").AppiumServer, host: string, port: number, path: string): void;
250
+ getSessions(): Promise<import("@appium/types").MultiSessionData<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS, void>[]>;
251
+ getSession(): Promise<import("@appium/types").SingularSessionData<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS, void>>;
252
+ supportedLogTypes: Readonly<import("@appium/types").LogDefRecord<{
253
+ readonly app: {
254
+ readonly presence: true;
255
+ readonly isString: true; /**
256
+ * @implements {IGeneralCommands}
257
+ */
258
+ };
259
+ readonly uniqueApp: {
260
+ readonly isBoolean: true;
261
+ };
262
+ }>>;
263
+ getLogTypes(): Promise<string[]>;
264
+ findElement(strategy: string, selector: string): Promise<import("@appium/types").Element>;
265
+ findElements(strategy: string, selector: string): Promise<import("@appium/types").Element[]>;
266
+ findElementFromElement(strategy: string, selector: string, elementId: string): Promise<import("@appium/types").Element>;
267
+ findElementsFromElement(strategy: string, selector: string, elementId: string): Promise<import("@appium/types").Element[]>;
268
+ findElOrEls<Mult extends boolean>(strategy: string, selector: string, mult: Mult, context?: any): Promise<Mult extends true ? import("@appium/types").Element[] : import("@appium/types").Element>;
269
+ findElOrElsWithProcessing<Mult_1 extends boolean>(strategy: string, selector: string, mult: Mult_1, context?: any): Promise<Mult_1 extends true ? import("@appium/types").Element[] : import("@appium/types").Element>;
270
+ updateSettings: (settings: import("@appium/types").StringRecord) => Promise<void>;
271
+ getSettings(): Promise<import("@appium/types").StringRecord>;
272
+ timeouts(type: string, ms: string | number, script?: number | undefined, pageLoad?: number | undefined, implicit?: string | number | undefined): Promise<void>;
273
+ setNewCommandTimeout(ms: number): void;
274
+ implicitWait(ms: string | number): Promise<void>;
275
+ setImplicitWait(ms: number): void;
276
+ implicitWaitForCondition(condition: () => Promise<any>): Promise<unknown>;
277
+ getTimeouts(): Promise<Record<string, number>>;
278
+ implicitWaitW3C(ms: number): Promise<void>;
279
+ implicitWaitMJSONWP(ms: number): Promise<void>;
280
+ pageLoadTimeoutW3C(ms: number): Promise<void>;
281
+ pageLoadTimeoutMJSONWP(ms: number): Promise<void>;
282
+ scriptTimeoutW3C(ms: number): Promise<void>;
283
+ scriptTimeoutMJSONWP(ms: number): Promise<void>;
284
+ newCommandTimeout(ms: number): Promise<void>;
285
+ parseTimeoutArgument(ms: string | number): number;
286
+ logCustomEvent(vendor: string, event: string): Promise<void>;
287
+ getLogEvents(type?: string | string[] | undefined): Promise<import("@appium/types").EventHistory | Record<string, number>>;
288
+ executeMethod(script: string, args: [] | [import("@appium/types").StringRecord]): Promise<any>;
289
+ createSession(w3cCaps1: import("@appium/types").W3CCapabilities<{
290
+ readonly app: {
291
+ readonly presence: true;
292
+ readonly isString: true; /**
293
+ * @implements {IGeneralCommands}
294
+ */
295
+ };
296
+ readonly uniqueApp: {
297
+ readonly isBoolean: true;
298
+ };
299
+ }, void>, w3cCaps2?: import("@appium/types").W3CCapabilities<{
300
+ readonly app: {
301
+ readonly presence: true;
302
+ readonly isString: true; /**
303
+ * @implements {IGeneralCommands}
304
+ */
305
+ };
306
+ readonly uniqueApp: {
307
+ readonly isBoolean: true;
308
+ };
309
+ }, void> | undefined, w3cCaps?: import("@appium/types").W3CCapabilities<{
310
+ readonly app: {
311
+ readonly presence: true;
312
+ readonly isString: true; /**
313
+ * @implements {IGeneralCommands}
314
+ */
315
+ };
316
+ readonly uniqueApp: {
317
+ readonly isBoolean: true;
318
+ };
319
+ }, void> | undefined, driverData?: import("@appium/types").DriverData[] | undefined): Promise<[string, any]>;
320
+ deleteSession(sessionId?: string | undefined, driverData?: import("@appium/types").DriverData[] | undefined): Promise<void>;
321
+ shouldValidateCaps: boolean;
322
+ sessionId: string | null;
323
+ opts: import("@appium/types").DriverOpts<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS>;
324
+ initialOpts: import("@appium/types").ServerArgs;
325
+ protocol?: string | undefined;
326
+ helpers: import("@appium/types").DriverHelpers<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS>;
327
+ basePath: string;
328
+ relaxedSecurityEnabled: boolean;
329
+ allowInsecure: string[];
330
+ denyInsecure: string[];
331
+ newCommandTimeoutMs: number;
332
+ implicitWaitMs: number;
333
+ locatorStrategies: string[];
334
+ webLocatorStrategies: string[];
335
+ eventEmitter: import("events");
336
+ settings: import("@appium/types").DeviceSettings<any>;
337
+ log: import("@appium/types").AppiumLogger;
338
+ driverData?: import("@appium/types").DriverData | undefined;
339
+ isCommandsQueueEnabled: boolean;
340
+ eventHistory: import("@appium/types").EventHistory;
341
+ onUnexpectedShutdown(handler: () => any): void;
342
+ getStatus(): Promise<any>;
343
+ sessionExists(sessionId: string): boolean;
344
+ isW3CProtocol(): boolean;
345
+ isMjsonwpProtocol(): boolean;
346
+ isFeatureEnabled(name: string): boolean;
347
+ assertFeatureEnabled(name: string): void;
348
+ validateLocatorStrategy(strategy: string, webContext?: boolean | undefined): void;
349
+ proxyActive(sessionId?: string | undefined): boolean;
350
+ getProxyAvoidList(sessionId?: string | undefined): import("@appium/types").RouteMatcher[];
351
+ canProxy(sessionId?: string | undefined): boolean;
352
+ proxyRouteIsAvoided(sessionId: string, method: string, url: string): boolean;
353
+ addManagedDriver(driver: import("@appium/types").Driver<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS, import("@appium/types").StringRecord, any>): void;
354
+ getManagedDrivers(): import("@appium/types").Driver<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS, import("@appium/types").StringRecord, any>[];
355
+ clearNewCommandTimeout(): Promise<void>;
356
+ logEvent(eventName: string): void;
357
+ driverForSession(sessionId: string): import("@appium/types").Core<typeof import("@appium/types").BASE_DESIRED_CAP_CONSTRAINTS> | null;
358
+ getElement(id: string): import("../fake-element").FakeElement;
359
+ getElements(ids: string[]): import("../fake-element").FakeElement[];
360
+ };
361
+ } & T;
362
+ export type FakeDriverCore = import('../driver').FakeDriverCore;
363
+ export type Class<T, U = {}, V = any[]> = import('@appium/types').Class<T, U, V>;
364
+ export type IGeneralCommands = import('../types').IGeneralCommands;
29
365
  //# sourceMappingURL=general.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"general.d.ts","sourceRoot":"","sources":["../../../lib/commands/general.js"],"names":[],"mappings":";;IAOA,+BAGC;IAED,yCAKC;IAED,sDAIC;IAED,wCAEC;IAED,uCAEC;IAED,wCAEC;IAED,+CAKC;IAED,uCAEC;IAED;;;OAEC;IAED;;;;;OAEC;IAED,qDAEC;IAED,yCAA4D;IAE5D,yCAOC;IAED,uDAEC;IAED,qEAEC;;AAzEC,uBAAY;AACZ,2BAAe"}
1
+ {"version":3,"file":"general.d.ts","sourceRoot":"","sources":["../../../lib/commands/general.js"],"names":[],"mappings":";AAIA;;;GAGG;AACH;;;;;;;;QAmCI;;;WAGG;0BADQ,OAAO,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;QAwC3D;;;;;;;WAOG;2BAJQ,MAAM,QACN,MAAM,8BAEJ,QAAQ,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yCAlF9B;;mBAEG;;;;;;;;;yCAFH;;mBAEG;;;;;;;;;yCAFH;;mBAEG;;;;;;;;;yCAFH;;mBAEG;;;;;;;;;yCAFH;;mBAEG;;;;;;;;;;;;yCAFH;;mBAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yCAFH;;mBAEG;;;;;;;;yCAFH;;mBAEG;;;;;;;;yCAFH;;mBAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAwFJ;6BAGY,OAAO,WAAW,EAAE,cAAc;0CAKlC,OAAO,eAAe,EAAE,KAAK,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC;+BAIpC,OAAO,UAAU,EAAE,gBAAgB"}
@@ -1,107 +1,98 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.helpers = exports.default = exports.commands = void 0;
9
-
10
- require("source-map-support/register");
11
-
12
- var _lodash = _interopRequireDefault(require("lodash"));
13
-
14
- var _driver = require("appium/driver");
15
-
16
- let commands = {},
17
- helpers = {},
18
- extensions = {};
19
- exports.helpers = helpers;
20
- exports.commands = commands;
21
-
22
- commands.title = async function title() {
23
- this.assertWebviewContext();
24
- return this.appModel.title;
25
- };
26
-
27
- commands.keys = async function keys(value) {
28
- if (!this.focusedElId) {
29
- throw new _driver.errors.InvalidElementStateError();
30
- }
31
-
32
- await this.setValue(value, this.focusedElId);
33
- };
34
-
35
- commands.setGeoLocation = async function setGeoLocation(location) {
36
- this.appModel.lat = location.latitude;
37
- this.appModel.long = location.longitude;
38
- };
39
-
40
- commands.getGeoLocation = async function getGeoLocation() {
41
- return this.appModel.currentGeoLocation;
42
- };
43
-
44
- commands.getPageSource = async function getPageSource() {
45
- return this.appModel.rawXml;
46
- };
47
-
48
- commands.getOrientation = async function getOrientation() {
49
- return this.appModel.orientation;
50
- };
51
-
52
- commands.setOrientation = async function setOrientation(o) {
53
- if (!_lodash.default.includes(['LANDSCAPE', 'PORTRAIT'], o)) {
54
- throw new _driver.errors.UnknownError('Orientation must be LANDSCAPE or PORTRAIT');
55
- }
56
-
57
- this.appModel.orientation = o;
58
- };
59
-
60
- commands.getScreenshot = async function getScreenshot() {
61
- return this.appModel.getScreenshot();
62
- };
63
-
64
- commands.getWindowSize = async function getWindowSize() {
65
- return {
66
- width: this.appModel.width,
67
- height: this.appModel.height
68
- };
69
- };
70
-
71
- commands.getWindowRect = async function getWindowRect() {
72
- return {
73
- width: this.appModel.width,
74
- height: this.appModel.height,
75
- x: 0,
76
- y: 0
77
- };
78
- };
79
-
80
- commands.performActions = async function performActions(actions) {
81
- this.appModel.actionLog.push(actions);
82
- };
83
-
84
- commands.releaseActions = async function releaseActions() {};
85
-
86
- commands.getLog = async function getLog(type) {
87
- switch (type) {
88
- case 'actions':
89
- return this.appModel.actionLog;
90
-
91
- default:
92
- throw new Error(`Don't understand log type '${type}'`);
93
- }
94
- };
95
-
96
- commands.execute = async function execute(script, args) {
97
- return await this.executeMethod(script, args);
98
- };
99
-
100
- commands.fakeAddition = async function fakeAddition(num1, num2, num3) {
101
- return num1 + num2 + (num3 ?? 0);
102
- };
103
-
104
- Object.assign(extensions, commands, helpers);
105
- var _default = extensions;
106
- exports.default = _default;
107
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21tYW5kcyIsImhlbHBlcnMiLCJleHRlbnNpb25zIiwidGl0bGUiLCJhc3NlcnRXZWJ2aWV3Q29udGV4dCIsImFwcE1vZGVsIiwia2V5cyIsInZhbHVlIiwiZm9jdXNlZEVsSWQiLCJlcnJvcnMiLCJJbnZhbGlkRWxlbWVudFN0YXRlRXJyb3IiLCJzZXRWYWx1ZSIsInNldEdlb0xvY2F0aW9uIiwibG9jYXRpb24iLCJsYXQiLCJsYXRpdHVkZSIsImxvbmciLCJsb25naXR1ZGUiLCJnZXRHZW9Mb2NhdGlvbiIsImN1cnJlbnRHZW9Mb2NhdGlvbiIsImdldFBhZ2VTb3VyY2UiLCJyYXdYbWwiLCJnZXRPcmllbnRhdGlvbiIsIm9yaWVudGF0aW9uIiwic2V0T3JpZW50YXRpb24iLCJvIiwiXyIsImluY2x1ZGVzIiwiVW5rbm93bkVycm9yIiwiZ2V0U2NyZWVuc2hvdCIsImdldFdpbmRvd1NpemUiLCJ3aWR0aCIsImhlaWdodCIsImdldFdpbmRvd1JlY3QiLCJ4IiwieSIsInBlcmZvcm1BY3Rpb25zIiwiYWN0aW9ucyIsImFjdGlvbkxvZyIsInB1c2giLCJyZWxlYXNlQWN0aW9ucyIsImdldExvZyIsInR5cGUiLCJFcnJvciIsImV4ZWN1dGUiLCJzY3JpcHQiLCJhcmdzIiwiZXhlY3V0ZU1ldGhvZCIsImZha2VBZGRpdGlvbiIsIm51bTEiLCJudW0yIiwibnVtMyIsIk9iamVjdCIsImFzc2lnbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9jb21tYW5kcy9nZW5lcmFsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge2Vycm9yc30gZnJvbSAnYXBwaXVtL2RyaXZlcic7XG5cbmxldCBjb21tYW5kcyA9IHt9LFxuICBoZWxwZXJzID0ge30sXG4gIGV4dGVuc2lvbnMgPSB7fTtcblxuY29tbWFuZHMudGl0bGUgPSBhc3luYyBmdW5jdGlvbiB0aXRsZSgpIHtcbiAgdGhpcy5hc3NlcnRXZWJ2aWV3Q29udGV4dCgpO1xuICByZXR1cm4gdGhpcy5hcHBNb2RlbC50aXRsZTtcbn07XG5cbmNvbW1hbmRzLmtleXMgPSBhc3luYyBmdW5jdGlvbiBrZXlzKHZhbHVlKSB7XG4gIGlmICghdGhpcy5mb2N1c2VkRWxJZCkge1xuICAgIHRocm93IG5ldyBlcnJvcnMuSW52YWxpZEVsZW1lbnRTdGF0ZUVycm9yKCk7XG4gIH1cbiAgYXdhaXQgdGhpcy5zZXRWYWx1ZSh2YWx1ZSwgdGhpcy5mb2N1c2VkRWxJZCk7XG59O1xuXG5jb21tYW5kcy5zZXRHZW9Mb2NhdGlvbiA9IGFzeW5jIGZ1bmN0aW9uIHNldEdlb0xvY2F0aW9uKGxvY2F0aW9uKSB7XG4gIC8vIFRPRE8gdGVzdCB0aGlzIGFkZXF1YXRlbHkgb25jZSBXRCBidWcgaXMgZml4ZWRcbiAgdGhpcy5hcHBNb2RlbC5sYXQgPSBsb2NhdGlvbi5sYXRpdHVkZTtcbiAgdGhpcy5hcHBNb2RlbC5sb25nID0gbG9jYXRpb24ubG9uZ2l0dWRlO1xufTtcblxuY29tbWFuZHMuZ2V0R2VvTG9jYXRpb24gPSBhc3luYyBmdW5jdGlvbiBnZXRHZW9Mb2NhdGlvbigpIHtcbiAgcmV0dXJuIHRoaXMuYXBwTW9kZWwuY3VycmVudEdlb0xvY2F0aW9uO1xufTtcblxuY29tbWFuZHMuZ2V0UGFnZVNvdXJjZSA9IGFzeW5jIGZ1bmN0aW9uIGdldFBhZ2VTb3VyY2UoKSB7XG4gIHJldHVybiB0aGlzLmFwcE1vZGVsLnJhd1htbDtcbn07XG5cbmNvbW1hbmRzLmdldE9yaWVudGF0aW9uID0gYXN5bmMgZnVuY3Rpb24gZ2V0T3JpZW50YXRpb24oKSB7XG4gIHJldHVybiB0aGlzLmFwcE1vZGVsLm9yaWVudGF0aW9uO1xufTtcblxuY29tbWFuZHMuc2V0T3JpZW50YXRpb24gPSBhc3luYyBmdW5jdGlvbiBzZXRPcmllbnRhdGlvbihvKSB7XG4gIGlmICghXy5pbmNsdWRlcyhbJ0xBTkRTQ0FQRScsICdQT1JUUkFJVCddLCBvKSkge1xuICAgIHRocm93IG5ldyBlcnJvcnMuVW5rbm93bkVycm9yKCdPcmllbnRhdGlvbiBtdXN0IGJlIExBTkRTQ0FQRSBvciBQT1JUUkFJVCcpO1xuICB9XG4gIHRoaXMuYXBwTW9kZWwub3JpZW50YXRpb24gPSBvO1xufTtcblxuY29tbWFuZHMuZ2V0U2NyZWVuc2hvdCA9IGFzeW5jIGZ1bmN0aW9uIGdldFNjcmVlbnNob3QoKSB7XG4gIHJldHVybiB0aGlzLmFwcE1vZGVsLmdldFNjcmVlbnNob3QoKTtcbn07XG5cbmNvbW1hbmRzLmdldFdpbmRvd1NpemUgPSBhc3luYyBmdW5jdGlvbiBnZXRXaW5kb3dTaXplKCkge1xuICByZXR1cm4ge3dpZHRoOiB0aGlzLmFwcE1vZGVsLndpZHRoLCBoZWlnaHQ6IHRoaXMuYXBwTW9kZWwuaGVpZ2h0fTtcbn07XG5cbmNvbW1hbmRzLmdldFdpbmRvd1JlY3QgPSBhc3luYyBmdW5jdGlvbiBnZXRXaW5kb3dSZWN0KCkge1xuICByZXR1cm4ge3dpZHRoOiB0aGlzLmFwcE1vZGVsLndpZHRoLCBoZWlnaHQ6IHRoaXMuYXBwTW9kZWwuaGVpZ2h0LCB4OiAwLCB5OiAwfTtcbn07XG5cbmNvbW1hbmRzLnBlcmZvcm1BY3Rpb25zID0gYXN5bmMgZnVuY3Rpb24gcGVyZm9ybUFjdGlvbnMoYWN0aW9ucykge1xuICB0aGlzLmFwcE1vZGVsLmFjdGlvbkxvZy5wdXNoKGFjdGlvbnMpO1xufTtcblxuY29tbWFuZHMucmVsZWFzZUFjdGlvbnMgPSBhc3luYyBmdW5jdGlvbiByZWxlYXNlQWN0aW9ucygpIHt9O1xuXG5jb21tYW5kcy5nZXRMb2cgPSBhc3luYyBmdW5jdGlvbiBnZXRMb2codHlwZSkge1xuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlICdhY3Rpb25zJzpcbiAgICAgIHJldHVybiB0aGlzLmFwcE1vZGVsLmFjdGlvbkxvZztcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBEb24ndCB1bmRlcnN0YW5kIGxvZyB0eXBlICcke3R5cGV9J2ApO1xuICB9XG59O1xuXG5jb21tYW5kcy5leGVjdXRlID0gYXN5bmMgZnVuY3Rpb24gZXhlY3V0ZShzY3JpcHQsIGFyZ3MpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXhlY3V0ZU1ldGhvZChzY3JpcHQsIGFyZ3MpO1xufTtcblxuY29tbWFuZHMuZmFrZUFkZGl0aW9uID0gYXN5bmMgZnVuY3Rpb24gZmFrZUFkZGl0aW9uKG51bTEsIG51bTIsIG51bTMpIHtcbiAgcmV0dXJuIG51bTEgKyBudW0yICsgKG51bTMgPz8gMCk7XG59O1xuXG5PYmplY3QuYXNzaWduKGV4dGVuc2lvbnMsIGNvbW1hbmRzLCBoZWxwZXJzKTtcbmV4cG9ydCB7Y29tbWFuZHMsIGhlbHBlcnN9O1xuZXhwb3J0IGRlZmF1bHQgZXh0ZW5zaW9ucztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFQSxJQUFJQSxRQUFRLEdBQUcsRUFBZjtBQUFBLElBQ0VDLE9BQU8sR0FBRyxFQURaO0FBQUEsSUFFRUMsVUFBVSxHQUFHLEVBRmY7Ozs7QUFJQUYsUUFBUSxDQUFDRyxLQUFULEdBQWlCLGVBQWVBLEtBQWYsR0FBdUI7RUFDdEMsS0FBS0Msb0JBQUw7RUFDQSxPQUFPLEtBQUtDLFFBQUwsQ0FBY0YsS0FBckI7QUFDRCxDQUhEOztBQUtBSCxRQUFRLENBQUNNLElBQVQsR0FBZ0IsZUFBZUEsSUFBZixDQUFvQkMsS0FBcEIsRUFBMkI7RUFDekMsSUFBSSxDQUFDLEtBQUtDLFdBQVYsRUFBdUI7SUFDckIsTUFBTSxJQUFJQyxjQUFBLENBQU9DLHdCQUFYLEVBQU47RUFDRDs7RUFDRCxNQUFNLEtBQUtDLFFBQUwsQ0FBY0osS0FBZCxFQUFxQixLQUFLQyxXQUExQixDQUFOO0FBQ0QsQ0FMRDs7QUFPQVIsUUFBUSxDQUFDWSxjQUFULEdBQTBCLGVBQWVBLGNBQWYsQ0FBOEJDLFFBQTlCLEVBQXdDO0VBRWhFLEtBQUtSLFFBQUwsQ0FBY1MsR0FBZCxHQUFvQkQsUUFBUSxDQUFDRSxRQUE3QjtFQUNBLEtBQUtWLFFBQUwsQ0FBY1csSUFBZCxHQUFxQkgsUUFBUSxDQUFDSSxTQUE5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
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GeneralMixin = void 0;
4
+ const driver_1 = require("appium/driver");
5
+ const ORIENTATIONS = new Set(['LANDSCAPE', 'PORTRAIT']);
6
+ /**
7
+ * @template {Class<import('../types').IContextsCommands & import('../types').IElementCommands>} T
8
+ * @param {T} Base
9
+ */
10
+ function GeneralMixin(Base) {
11
+ /**
12
+ * @implements {IGeneralCommands}
13
+ */
14
+ class GeneralCommands extends Base {
15
+ async title() {
16
+ this.assertWebviewContext();
17
+ return this.appModel.title;
18
+ }
19
+ async keys(value) {
20
+ if (!this.focusedElId) {
21
+ throw new driver_1.errors.InvalidElementStateError();
22
+ }
23
+ await this.setValue(value, this.focusedElId);
24
+ }
25
+ async setGeoLocation(location) {
26
+ // TODO test this adequately once WD bug is fixed
27
+ this.appModel.lat = location.latitude;
28
+ this.appModel.long = location.longitude;
29
+ }
30
+ async getGeoLocation() {
31
+ return this.appModel.currentGeoLocation;
32
+ }
33
+ async getPageSource() {
34
+ return this.appModel.rawXml;
35
+ }
36
+ async getOrientation() {
37
+ return this.appModel.orientation;
38
+ }
39
+ /**
40
+ *
41
+ * @param {import('../types').FakeDriverCaps['orientation']} o
42
+ */
43
+ async setOrientation(o) {
44
+ if (!ORIENTATIONS.has(o)) {
45
+ throw new driver_1.errors.UnknownError('Orientation must be LANDSCAPE or PORTRAIT');
46
+ }
47
+ this.appModel.orientation = o;
48
+ }
49
+ async getScreenshot() {
50
+ return this.appModel.getScreenshot();
51
+ }
52
+ async getWindowSize() {
53
+ return { width: this.appModel.width, height: this.appModel.height };
54
+ }
55
+ async getWindowRect() {
56
+ return { width: this.appModel.width, height: this.appModel.height, x: 0, y: 0 };
57
+ }
58
+ async performActions(actions) {
59
+ this.appModel.actionLog.push(actions);
60
+ }
61
+ async releaseActions() { }
62
+ async getLog(type) {
63
+ switch (type) {
64
+ case 'actions':
65
+ return this.appModel.actionLog;
66
+ default:
67
+ throw new Error(`Don't understand log type '${type}'`);
68
+ }
69
+ }
70
+ async execute(script, args) {
71
+ return await this.executeMethod(script, args);
72
+ }
73
+ /**
74
+ * Add two or maybe even three numbers
75
+ *
76
+ * @param {number} num1
77
+ * @param {number} num2
78
+ * @param {number} [num3]
79
+ * @returns {Promise<number>}
80
+ */
81
+ async fakeAddition(num1, num2, num3 = 0) {
82
+ return num1 + num2 + (num3 ?? 0);
83
+ }
84
+ }
85
+ return GeneralCommands;
86
+ }
87
+ exports.GeneralMixin = GeneralMixin;
88
+ /**
89
+ * @typedef {import('../driver').FakeDriverCore} FakeDriverCore
90
+ */
91
+ /**
92
+ * @template T,[U={}],[V=Array<any>]
93
+ * @typedef {import('@appium/types').Class<T,U,V>} Class
94
+ */
95
+ /**
96
+ * @typedef {import('../types').IGeneralCommands} IGeneralCommands
97
+ */
98
+ //# sourceMappingURL=general.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"general.js","sourceRoot":"","sources":["../../../lib/commands/general.js"],"names":[],"mappings":"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"}