appium-xcuitest-driver 10.14.6 → 10.14.8
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 +12 -0
- package/build/lib/commands/app-management.d.ts.map +1 -1
- package/build/lib/commands/app-management.js +3 -8
- package/build/lib/commands/app-management.js.map +1 -1
- package/build/lib/commands/biometric.d.ts.map +1 -1
- package/build/lib/commands/biometric.js +3 -4
- package/build/lib/commands/biometric.js.map +1 -1
- package/build/lib/commands/certificate.d.ts.map +1 -1
- package/build/lib/commands/certificate.js +3 -7
- package/build/lib/commands/certificate.js.map +1 -1
- package/build/lib/commands/condition.js +3 -8
- package/build/lib/commands/condition.js.map +1 -1
- package/build/lib/commands/content-size.d.ts.map +1 -1
- package/build/lib/commands/content-size.js +3 -3
- package/build/lib/commands/content-size.js.map +1 -1
- package/build/lib/commands/gesture.js +1 -1
- package/build/lib/commands/gesture.js.map +1 -1
- package/build/lib/commands/increase-contrast.d.ts.map +1 -1
- package/build/lib/commands/increase-contrast.js +4 -3
- package/build/lib/commands/increase-contrast.js.map +1 -1
- package/build/lib/commands/keychains.js +1 -1
- package/build/lib/commands/keychains.js.map +1 -1
- package/build/lib/commands/localization.js +1 -1
- package/build/lib/commands/localization.js.map +1 -1
- package/build/lib/commands/memory.d.ts.map +1 -1
- package/build/lib/commands/memory.js +2 -4
- package/build/lib/commands/memory.js.map +1 -1
- package/build/lib/commands/notifications.d.ts.map +1 -1
- package/build/lib/commands/notifications.js +3 -4
- package/build/lib/commands/notifications.js.map +1 -1
- package/build/lib/commands/pasteboard.d.ts.map +1 -1
- package/build/lib/commands/pasteboard.js +4 -4
- package/build/lib/commands/pasteboard.js.map +1 -1
- package/build/lib/commands/pcap.d.ts.map +1 -1
- package/build/lib/commands/pcap.js +1 -3
- package/build/lib/commands/pcap.js.map +1 -1
- package/build/lib/commands/permissions.d.ts.map +1 -1
- package/build/lib/commands/permissions.js +2 -5
- package/build/lib/commands/permissions.js.map +1 -1
- package/build/lib/commands/simctl.d.ts.map +1 -1
- package/build/lib/commands/simctl.js +4 -5
- package/build/lib/commands/simctl.js.map +1 -1
- package/build/lib/commands/web.js +1 -1
- package/build/lib/commands/web.js.map +1 -1
- package/build/lib/index.d.ts +5 -0
- package/build/lib/index.d.ts.map +1 -0
- package/build/{index.js → lib/index.js} +2 -2
- package/build/lib/index.js.map +1 -0
- package/build/lib/utils.d.ts +12 -2
- package/build/lib/utils.d.ts.map +1 -1
- package/build/lib/utils.js +20 -5
- package/build/lib/utils.js.map +1 -1
- package/build/test/functional/basic/alert-e2e-specs.d.ts +2 -0
- package/build/test/functional/basic/alert-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/basic/alert-e2e-specs.js +129 -0
- package/build/test/functional/basic/alert-e2e-specs.js.map +1 -0
- package/build/test/functional/basic/basic-e2e-specs.d.ts +2 -0
- package/build/test/functional/basic/basic-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/basic/basic-e2e-specs.js +268 -0
- package/build/test/functional/basic/basic-e2e-specs.js.map +1 -0
- package/build/test/functional/basic/element-e2e-specs.d.ts +2 -0
- package/build/test/functional/basic/element-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/basic/element-e2e-specs.js +354 -0
- package/build/test/functional/basic/element-e2e-specs.js.map +1 -0
- package/build/test/functional/basic/find-e2e-specs.d.ts +2 -0
- package/build/test/functional/basic/find-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/basic/find-e2e-specs.js +434 -0
- package/build/test/functional/basic/find-e2e-specs.js.map +1 -0
- package/build/test/functional/basic/gesture-e2e-specs.d.ts +2 -0
- package/build/test/functional/basic/gesture-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/basic/gesture-e2e-specs.js +211 -0
- package/build/test/functional/basic/gesture-e2e-specs.js.map +1 -0
- package/build/test/functional/desired.d.ts +26 -0
- package/build/test/functional/desired.d.ts.map +1 -0
- package/build/test/functional/desired.js +124 -0
- package/build/test/functional/desired.js.map +1 -0
- package/build/test/functional/device/accessibility-e2e-specs.d.ts +2 -0
- package/build/test/functional/device/accessibility-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/device/accessibility-e2e-specs.js +117 -0
- package/build/test/functional/device/accessibility-e2e-specs.js.map +1 -0
- package/build/test/functional/device/file-movement-e2e-specs.d.ts +2 -0
- package/build/test/functional/device/file-movement-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/device/file-movement-e2e-specs.js +141 -0
- package/build/test/functional/device/file-movement-e2e-specs.js.map +1 -0
- package/build/test/functional/device/otherApps-e2e-specs.d.ts +2 -0
- package/build/test/functional/device/otherApps-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/device/otherApps-e2e-specs.js +66 -0
- package/build/test/functional/device/otherApps-e2e-specs.js.map +1 -0
- package/build/test/functional/device/passwords-e2e-specs.d.ts +2 -0
- package/build/test/functional/device/passwords-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/device/passwords-e2e-specs.js +91 -0
- package/build/test/functional/device/passwords-e2e-specs.js.map +1 -0
- package/build/test/functional/device/performance-e2e-specs.d.ts +2 -0
- package/build/test/functional/device/performance-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/device/performance-e2e-specs.js +72 -0
- package/build/test/functional/device/performance-e2e-specs.js.map +1 -0
- package/build/test/functional/driver/driver-e2e-specs.d.ts +2 -0
- package/build/test/functional/driver/driver-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/driver/driver-e2e-specs.js +296 -0
- package/build/test/functional/driver/driver-e2e-specs.js.map +1 -0
- package/build/test/functional/helpers/element.d.ts +4 -0
- package/build/test/functional/helpers/element.d.ts.map +1 -0
- package/build/test/functional/helpers/element.js +8 -0
- package/build/test/functional/helpers/element.js.map +1 -0
- package/build/test/functional/helpers/ports.d.ts +6 -0
- package/build/test/functional/helpers/ports.d.ts.map +1 -0
- package/build/test/functional/helpers/ports.js +29 -0
- package/build/test/functional/helpers/ports.js.map +1 -0
- package/build/test/functional/helpers/session.d.ts +7 -0
- package/build/test/functional/helpers/session.d.ts.map +1 -0
- package/build/test/functional/helpers/session.js +39 -0
- package/build/test/functional/helpers/session.js.map +1 -0
- package/build/test/functional/helpers/simulator.d.ts +12 -0
- package/build/test/functional/helpers/simulator.d.ts.map +1 -0
- package/build/test/functional/helpers/simulator.js +51 -0
- package/build/test/functional/helpers/simulator.js.map +1 -0
- package/build/test/functional/long/typing-stress-e2e-specs.d.ts +2 -0
- package/build/test/functional/long/typing-stress-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/long/typing-stress-e2e-specs.js +84 -0
- package/build/test/functional/long/typing-stress-e2e-specs.js.map +1 -0
- package/build/test/functional/tv/tvos-e2e-specs.d.ts +2 -0
- package/build/test/functional/tv/tvos-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/tv/tvos-e2e-specs.js +83 -0
- package/build/test/functional/tv/tvos-e2e-specs.js.map +1 -0
- package/build/test/functional/web/helpers.d.ts +28 -0
- package/build/test/functional/web/helpers.d.ts.map +1 -0
- package/build/test/functional/web/helpers.js +137 -0
- package/build/test/functional/web/helpers.js.map +1 -0
- package/build/test/functional/web/safari-alerts-e2e-specs.d.ts +2 -0
- package/build/test/functional/web/safari-alerts-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/web/safari-alerts-e2e-specs.js +109 -0
- package/build/test/functional/web/safari-alerts-e2e-specs.js.map +1 -0
- package/build/test/functional/web/safari-basic-e2e-specs.d.ts +2 -0
- package/build/test/functional/web/safari-basic-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/web/safari-basic-e2e-specs.js +425 -0
- package/build/test/functional/web/safari-basic-e2e-specs.js.map +1 -0
- package/build/test/functional/web/safari-execute-e2e-specs.d.ts +2 -0
- package/build/test/functional/web/safari-execute-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/web/safari-execute-e2e-specs.js +167 -0
- package/build/test/functional/web/safari-execute-e2e-specs.js.map +1 -0
- package/build/test/functional/web/safari-nativewebtap-e2e-specs.d.ts +2 -0
- package/build/test/functional/web/safari-nativewebtap-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/web/safari-nativewebtap-e2e-specs.js +323 -0
- package/build/test/functional/web/safari-nativewebtap-e2e-specs.js.map +1 -0
- package/build/test/functional/web/safari-ssl-e2e-specs.d.ts +2 -0
- package/build/test/functional/web/safari-ssl-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/web/safari-ssl-e2e-specs.js +131 -0
- package/build/test/functional/web/safari-ssl-e2e-specs.js.map +1 -0
- package/build/test/functional/web/safari-window-e2e-specs.d.ts +2 -0
- package/build/test/functional/web/safari-window-e2e-specs.d.ts.map +1 -0
- package/build/test/functional/web/safari-window-e2e-specs.js +263 -0
- package/build/test/functional/web/safari-window-e2e-specs.js.map +1 -0
- package/build/test/setup.d.ts +19 -0
- package/build/test/setup.d.ts.map +1 -0
- package/build/test/setup.js +117 -0
- package/build/test/setup.js.map +1 -0
- package/build/test/unit/app-infos-cache-specs.d.ts +2 -0
- package/build/test/unit/app-infos-cache-specs.d.ts.map +1 -0
- package/build/test/unit/app-infos-cache-specs.js +101 -0
- package/build/test/unit/app-infos-cache-specs.js.map +1 -0
- package/build/test/unit/app-utils-specs.d.ts +2 -0
- package/build/test/unit/app-utils-specs.d.ts.map +1 -0
- package/build/test/unit/app-utils-specs.js +131 -0
- package/build/test/unit/app-utils-specs.js.map +1 -0
- package/build/test/unit/commands/activeAppInfo-specs.d.ts +2 -0
- package/build/test/unit/commands/activeAppInfo-specs.d.ts.map +1 -0
- package/build/test/unit/commands/activeAppInfo-specs.js +74 -0
- package/build/test/unit/commands/activeAppInfo-specs.js.map +1 -0
- package/build/test/unit/commands/alert-specs.d.ts +2 -0
- package/build/test/unit/commands/alert-specs.d.ts.map +1 -0
- package/build/test/unit/commands/alert-specs.js +111 -0
- package/build/test/unit/commands/alert-specs.js.map +1 -0
- package/build/test/unit/commands/context-specs.d.ts +2 -0
- package/build/test/unit/commands/context-specs.d.ts.map +1 -0
- package/build/test/unit/commands/context-specs.js +119 -0
- package/build/test/unit/commands/context-specs.js.map +1 -0
- package/build/test/unit/commands/deviceinfo-specs.d.ts +2 -0
- package/build/test/unit/commands/deviceinfo-specs.d.ts.map +1 -0
- package/build/test/unit/commands/deviceinfo-specs.js +67 -0
- package/build/test/unit/commands/deviceinfo-specs.js.map +1 -0
- package/build/test/unit/commands/element-specs.d.ts +2 -0
- package/build/test/unit/commands/element-specs.d.ts.map +1 -0
- package/build/test/unit/commands/element-specs.js +419 -0
- package/build/test/unit/commands/element-specs.js.map +1 -0
- package/build/test/unit/commands/file-movement-specs.d.ts +2 -0
- package/build/test/unit/commands/file-movement-specs.d.ts.map +1 -0
- package/build/test/unit/commands/file-movement-specs.js +81 -0
- package/build/test/unit/commands/file-movement-specs.js.map +1 -0
- package/build/test/unit/commands/find-specs.d.ts +2 -0
- package/build/test/unit/commands/find-specs.d.ts.map +1 -0
- package/build/test/unit/commands/find-specs.js +106 -0
- package/build/test/unit/commands/find-specs.js.map +1 -0
- package/build/test/unit/commands/general-specs.d.ts +2 -0
- package/build/test/unit/commands/general-specs.d.ts.map +1 -0
- package/build/test/unit/commands/general-specs.js +154 -0
- package/build/test/unit/commands/general-specs.js.map +1 -0
- package/build/test/unit/commands/gesture-specs.d.ts +2 -0
- package/build/test/unit/commands/gesture-specs.d.ts.map +1 -0
- package/build/test/unit/commands/gesture-specs.js +263 -0
- package/build/test/unit/commands/gesture-specs.js.map +1 -0
- package/build/test/unit/commands/location-specs.d.ts +2 -0
- package/build/test/unit/commands/location-specs.d.ts.map +1 -0
- package/build/test/unit/commands/location-specs.js +141 -0
- package/build/test/unit/commands/location-specs.js.map +1 -0
- package/build/test/unit/commands/pasteboard-specs.d.ts +2 -0
- package/build/test/unit/commands/pasteboard-specs.d.ts.map +1 -0
- package/build/test/unit/commands/pasteboard-specs.js +65 -0
- package/build/test/unit/commands/pasteboard-specs.js.map +1 -0
- package/build/test/unit/commands/proxy-helper-specs.d.ts +2 -0
- package/build/test/unit/commands/proxy-helper-specs.d.ts.map +1 -0
- package/build/test/unit/commands/proxy-helper-specs.js +88 -0
- package/build/test/unit/commands/proxy-helper-specs.js.map +1 -0
- package/build/test/unit/commands/screenshots-specs.d.ts +2 -0
- package/build/test/unit/commands/screenshots-specs.d.ts.map +1 -0
- package/build/test/unit/commands/screenshots-specs.js +71 -0
- package/build/test/unit/commands/screenshots-specs.js.map +1 -0
- package/build/test/unit/commands/session-specs.d.ts +2 -0
- package/build/test/unit/commands/session-specs.d.ts.map +1 -0
- package/build/test/unit/commands/session-specs.js +49 -0
- package/build/test/unit/commands/session-specs.js.map +1 -0
- package/build/test/unit/commands/simctl-specs.d.ts +2 -0
- package/build/test/unit/commands/simctl-specs.d.ts.map +1 -0
- package/build/test/unit/commands/simctl-specs.js +54 -0
- package/build/test/unit/commands/simctl-specs.js.map +1 -0
- package/build/test/unit/commands/source-specs.d.ts +2 -0
- package/build/test/unit/commands/source-specs.d.ts.map +1 -0
- package/build/test/unit/commands/source-specs.js +55 -0
- package/build/test/unit/commands/source-specs.js.map +1 -0
- package/build/test/unit/commands/ssl-certificate-specs.d.ts +2 -0
- package/build/test/unit/commands/ssl-certificate-specs.d.ts.map +1 -0
- package/build/test/unit/commands/ssl-certificate-specs.js +16 -0
- package/build/test/unit/commands/ssl-certificate-specs.js.map +1 -0
- package/build/test/unit/commands/xctest-specs.d.ts +2 -0
- package/build/test/unit/commands/xctest-specs.d.ts.map +1 -0
- package/build/test/unit/commands/xctest-specs.js +116 -0
- package/build/test/unit/commands/xctest-specs.js.map +1 -0
- package/build/test/unit/css-converter-specs.d.ts +2 -0
- package/build/test/unit/css-converter-specs.d.ts.map +1 -0
- package/build/test/unit/css-converter-specs.js +99 -0
- package/build/test/unit/css-converter-specs.js.map +1 -0
- package/build/test/unit/device-connections-factory-specs.d.ts +2 -0
- package/build/test/unit/device-connections-factory-specs.d.ts.map +1 -0
- package/build/test/unit/device-connections-factory-specs.js +88 -0
- package/build/test/unit/device-connections-factory-specs.js.map +1 -0
- package/build/test/unit/driver-specs.d.ts +2 -0
- package/build/test/unit/driver-specs.d.ts.map +1 -0
- package/build/test/unit/driver-specs.js +358 -0
- package/build/test/unit/driver-specs.js.map +1 -0
- package/build/test/unit/helpers.d.ts +2 -0
- package/build/test/unit/helpers.d.ts.map +1 -0
- package/build/test/unit/helpers.js +5 -0
- package/build/test/unit/helpers.js.map +1 -0
- package/build/test/unit/language-specs.d.ts +2 -0
- package/build/test/unit/language-specs.d.ts.map +1 -0
- package/build/test/unit/language-specs.js +159 -0
- package/build/test/unit/language-specs.js.map +1 -0
- package/build/test/unit/logs-helpers-specs.d.ts +2 -0
- package/build/test/unit/logs-helpers-specs.d.ts.map +1 -0
- package/build/test/unit/logs-helpers-specs.js +71 -0
- package/build/test/unit/logs-helpers-specs.js.map +1 -0
- package/build/test/unit/processargs-specs.d.ts +2 -0
- package/build/test/unit/processargs-specs.d.ts.map +1 -0
- package/build/test/unit/processargs-specs.js +87 -0
- package/build/test/unit/processargs-specs.js.map +1 -0
- package/build/test/unit/real-device-management-specs.d.ts +2 -0
- package/build/test/unit/real-device-management-specs.d.ts.map +1 -0
- package/build/test/unit/real-device-management-specs.js +151 -0
- package/build/test/unit/real-device-management-specs.js.map +1 -0
- package/build/test/unit/simulator-management-specs.d.ts +2 -0
- package/build/test/unit/simulator-management-specs.d.ts.map +1 -0
- package/build/test/unit/simulator-management-specs.js +143 -0
- package/build/test/unit/simulator-management-specs.js.map +1 -0
- package/build/test/unit/utils-specs.d.ts +2 -0
- package/build/test/unit/utils-specs.d.ts.map +1 -0
- package/build/test/unit/utils-specs.js +132 -0
- package/build/test/unit/utils-specs.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/lib/commands/app-management.ts +3 -11
- package/lib/commands/biometric.ts +4 -7
- package/lib/commands/certificate.ts +3 -7
- package/lib/commands/condition.ts +4 -10
- package/lib/commands/content-size.ts +4 -6
- package/lib/commands/gesture.ts +2 -2
- package/lib/commands/increase-contrast.ts +5 -6
- package/lib/commands/keychains.ts +2 -2
- package/lib/commands/localization.ts +2 -2
- package/lib/commands/memory.ts +2 -7
- package/lib/commands/notifications.ts +3 -5
- package/lib/commands/pasteboard.ts +5 -6
- package/lib/commands/pcap.ts +2 -4
- package/lib/commands/permissions.ts +3 -8
- package/lib/commands/simctl.ts +4 -5
- package/lib/commands/web.ts +2 -2
- package/lib/index.ts +5 -0
- package/lib/utils.ts +20 -4
- package/npm-shrinkwrap.json +8 -8
- package/package.json +4 -7
- package/build/index.d.ts +0 -5
- package/index.js +0 -7
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const asyncbox_1 = require("asyncbox");
|
|
40
|
+
const appium_ios_simulator_1 = require("appium-ios-simulator");
|
|
41
|
+
const simulator_1 = require("../helpers/simulator");
|
|
42
|
+
const node_simctl_1 = require("node-simctl");
|
|
43
|
+
const bluebird_1 = __importDefault(require("bluebird"));
|
|
44
|
+
const session_1 = require("../helpers/session");
|
|
45
|
+
const desired_1 = require("../desired");
|
|
46
|
+
const setup_1 = require("../../setup");
|
|
47
|
+
const axios_1 = __importDefault(require("axios"));
|
|
48
|
+
const chai_1 = __importStar(require("chai"));
|
|
49
|
+
const chai_as_promised_1 = __importDefault(require("chai-as-promised"));
|
|
50
|
+
chai_1.default.use(chai_as_promised_1.default);
|
|
51
|
+
const SIM_DEVICE_NAME = 'xcuitestDriverTest';
|
|
52
|
+
const simctl = new node_simctl_1.Simctl();
|
|
53
|
+
async function createDevice() {
|
|
54
|
+
return await simctl.createDevice(SIM_DEVICE_NAME, desired_1.DEVICE_NAME, desired_1.PLATFORM_VERSION);
|
|
55
|
+
}
|
|
56
|
+
async function getNumSims() {
|
|
57
|
+
return (await simctl.getDevices())[desired_1.PLATFORM_VERSION].length;
|
|
58
|
+
}
|
|
59
|
+
describe('XCUITestDriver', function () {
|
|
60
|
+
this.timeout(session_1.MOCHA_TIMEOUT);
|
|
61
|
+
let baseCaps;
|
|
62
|
+
let caps;
|
|
63
|
+
let driver;
|
|
64
|
+
before(async function () {
|
|
65
|
+
const udid = await createDevice();
|
|
66
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
67
|
+
baseCaps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, { 'appium:udid': udid });
|
|
68
|
+
caps = (0, desired_1.amendCapabilities)(baseCaps, {
|
|
69
|
+
'appium:usePrebuiltWDA': true,
|
|
70
|
+
'appium:wdaStartupRetries': 0,
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
after(async function () {
|
|
74
|
+
const sim = await (0, appium_ios_simulator_1.getSimulator)((0, desired_1.extractCapabilityValue)(caps, 'appium:udid'), {
|
|
75
|
+
platform: 'iOS',
|
|
76
|
+
checkExistence: false,
|
|
77
|
+
});
|
|
78
|
+
await (0, simulator_1.cleanupSimulator)(sim);
|
|
79
|
+
});
|
|
80
|
+
afterEach(async function () {
|
|
81
|
+
// try to get rid of the driver, so if a test fails the rest of the
|
|
82
|
+
// tests aren't compromised
|
|
83
|
+
await (0, session_1.deleteSession)();
|
|
84
|
+
});
|
|
85
|
+
it('should start and stop a session', async function () {
|
|
86
|
+
driver = await (0, session_1.initSession)(baseCaps);
|
|
87
|
+
const els = await driver.$$('XCUIElementTypeWindow');
|
|
88
|
+
(0, chai_1.expect)(els.length).to.be.at.least(1);
|
|
89
|
+
});
|
|
90
|
+
it('should start and stop a session doing pre-build', async function () {
|
|
91
|
+
driver = await (0, session_1.initSession)((0, desired_1.amendCapabilities)(baseCaps, { 'appium:prebuildWDA': true }));
|
|
92
|
+
const els = await driver.$$('XCUIElementTypeWindow');
|
|
93
|
+
(0, chai_1.expect)(els.length).to.be.at.least(1);
|
|
94
|
+
});
|
|
95
|
+
it('should start and stop a session doing simple build-test', async function () {
|
|
96
|
+
driver = await (0, session_1.initSession)((0, desired_1.amendCapabilities)(baseCaps, { 'appium:useSimpleBuildTest': true }));
|
|
97
|
+
const els = await driver.$$('XCUIElementTypeWindow');
|
|
98
|
+
(0, chai_1.expect)(els.length).to.be.at.least(1);
|
|
99
|
+
});
|
|
100
|
+
it('should start and stop a session with only bundle id', async function () {
|
|
101
|
+
const localCaps = (0, desired_1.amendCapabilities)(caps, {
|
|
102
|
+
'appium:bundleId': setup_1.UICATALOG_BUNDLE_ID,
|
|
103
|
+
'appium:noReset': true,
|
|
104
|
+
'appium:app': undefined,
|
|
105
|
+
});
|
|
106
|
+
await (0, chai_1.expect)((0, session_1.initSession)(localCaps)).to.not.be.rejected;
|
|
107
|
+
});
|
|
108
|
+
it('should start and stop a session with only bundle id when no sim is running', async function () {
|
|
109
|
+
await (0, simulator_1.killAllSimulators)();
|
|
110
|
+
const localCaps = (0, desired_1.amendCapabilities)(caps, {
|
|
111
|
+
'appium:bundleId': setup_1.UICATALOG_BUNDLE_ID,
|
|
112
|
+
'appium:noReset': true,
|
|
113
|
+
'appium:app': undefined,
|
|
114
|
+
});
|
|
115
|
+
await (0, chai_1.expect)((0, session_1.initSession)(localCaps)).to.not.be.rejected;
|
|
116
|
+
});
|
|
117
|
+
it('should fail to start and stop a session if unknown bundle id used', async function () {
|
|
118
|
+
const localCaps = (0, desired_1.amendCapabilities)(caps, {
|
|
119
|
+
'appium:bundleId': 'io.blahblahblah.blah',
|
|
120
|
+
'appium:app': undefined,
|
|
121
|
+
});
|
|
122
|
+
await (0, chai_1.expect)((0, session_1.initSession)(localCaps)).to.be.rejected;
|
|
123
|
+
});
|
|
124
|
+
it('should fail to start and stop a session if unknown bundle id used when no sim is running', async function () {
|
|
125
|
+
await (0, simulator_1.killAllSimulators)();
|
|
126
|
+
const localCaps = (0, desired_1.amendCapabilities)(caps, {
|
|
127
|
+
'appium:bundleId': 'io.blahblahblah.blah',
|
|
128
|
+
'appium:app': undefined,
|
|
129
|
+
});
|
|
130
|
+
await (0, chai_1.expect)((0, session_1.initSession)(localCaps)).to.be.rejected;
|
|
131
|
+
});
|
|
132
|
+
describe('WebdriverAgent port', function () {
|
|
133
|
+
this.retries(3);
|
|
134
|
+
it('should run on default port if no other specified', async function () {
|
|
135
|
+
const localCaps = (0, desired_1.amendCapabilities)(baseCaps, {
|
|
136
|
+
'appium:fullReset': true,
|
|
137
|
+
'appium:useNewWDA': true,
|
|
138
|
+
'appium:wdaLocalPort': undefined,
|
|
139
|
+
});
|
|
140
|
+
driver = await (0, session_1.initSession)(localCaps);
|
|
141
|
+
await (0, chai_1.expect)((0, axios_1.default)({ url: `http://${session_1.HOST}:8100/status` })).to.not.be.rejected;
|
|
142
|
+
});
|
|
143
|
+
it('should run on port specified', async function () {
|
|
144
|
+
const localCaps = (0, desired_1.amendCapabilities)(baseCaps, {
|
|
145
|
+
'appium:fullReset': true,
|
|
146
|
+
'appium:useNewWDA': true,
|
|
147
|
+
'appium:wdaLocalPort': 6000,
|
|
148
|
+
});
|
|
149
|
+
driver = await (0, session_1.initSession)(localCaps);
|
|
150
|
+
await (0, chai_1.expect)((0, axios_1.default)({ url: `http://${session_1.HOST}:8100/status` })).to.be.rejectedWith(/ECONNREFUSED/);
|
|
151
|
+
await (0, chai_1.expect)((0, axios_1.default)({ url: `http://${session_1.HOST}:8100/status` })).to.eventually.not.be.rejected;
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
describe('initial orientation', function () {
|
|
155
|
+
async function runOrientationTest(initialOrientation) {
|
|
156
|
+
const localCaps = (0, desired_1.amendCapabilities)(caps, {
|
|
157
|
+
'appium:orientation': initialOrientation,
|
|
158
|
+
});
|
|
159
|
+
driver = await (0, session_1.initSession)(localCaps);
|
|
160
|
+
await (0, chai_1.expect)(driver.getOrientation()).to.eventually.eql(initialOrientation);
|
|
161
|
+
}
|
|
162
|
+
for (const orientation of ['LANDSCAPE', 'PORTRAIT']) {
|
|
163
|
+
it(`should be able to start in a ${orientation} mode`, async function () {
|
|
164
|
+
await runOrientationTest(orientation);
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
describe('reset', function () {
|
|
169
|
+
beforeEach(async function () {
|
|
170
|
+
await (0, session_1.deleteSession)();
|
|
171
|
+
await (0, asyncbox_1.retryInterval)(5, 1000, async () => {
|
|
172
|
+
await (0, simulator_1.killAllSimulators)();
|
|
173
|
+
});
|
|
174
|
+
});
|
|
175
|
+
it('default: creates sim and deletes it afterwards', async function () {
|
|
176
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
177
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, {
|
|
178
|
+
'appium:enforceFreshSimulatorCreation': true,
|
|
179
|
+
});
|
|
180
|
+
const simsBefore = await getNumSims();
|
|
181
|
+
await (0, session_1.initSession)(caps);
|
|
182
|
+
const simsDuring = await getNumSims();
|
|
183
|
+
await (0, session_1.deleteSession)();
|
|
184
|
+
const simsAfter = await getNumSims();
|
|
185
|
+
(0, chai_1.expect)(simsDuring).to.equal(simsBefore + 1);
|
|
186
|
+
(0, chai_1.expect)(simsAfter).to.equal(simsBefore);
|
|
187
|
+
});
|
|
188
|
+
it('with udid: uses sim and resets afterwards if resetOnSessionStartOnly is false', async function () {
|
|
189
|
+
// before
|
|
190
|
+
const udid = await createDevice();
|
|
191
|
+
const sim = await (0, appium_ios_simulator_1.getSimulator)(udid, {
|
|
192
|
+
platform: 'iOS',
|
|
193
|
+
checkExistence: false,
|
|
194
|
+
});
|
|
195
|
+
await sim.run();
|
|
196
|
+
try {
|
|
197
|
+
// test
|
|
198
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
199
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, {
|
|
200
|
+
'appium:udid': udid,
|
|
201
|
+
'appium:fullReset': true,
|
|
202
|
+
'appium:resetOnSessionStartOnly': false,
|
|
203
|
+
});
|
|
204
|
+
(0, chai_1.expect)(await sim.isRunning()).to.be.true;
|
|
205
|
+
const simsBefore = await getNumSims();
|
|
206
|
+
await (0, session_1.initSession)(caps);
|
|
207
|
+
const simsDuring = await getNumSims();
|
|
208
|
+
await (0, session_1.deleteSession)();
|
|
209
|
+
const simsAfter = await getNumSims();
|
|
210
|
+
(0, chai_1.expect)(await sim.isRunning()).to.be.false;
|
|
211
|
+
// make sure no new simulators were created during the test
|
|
212
|
+
(0, chai_1.expect)(simsDuring).to.equal(simsBefore);
|
|
213
|
+
(0, chai_1.expect)(simsAfter).to.equal(simsBefore);
|
|
214
|
+
}
|
|
215
|
+
finally {
|
|
216
|
+
// cleanup
|
|
217
|
+
await (0, simulator_1.deleteDeviceWithRetry)(udid);
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
it('with udid booted: uses sim and leaves it afterwards', async function () {
|
|
221
|
+
// before
|
|
222
|
+
const udid = await createDevice();
|
|
223
|
+
const sim = await (0, appium_ios_simulator_1.getSimulator)(udid, {
|
|
224
|
+
platform: 'iOS',
|
|
225
|
+
checkExistence: false,
|
|
226
|
+
});
|
|
227
|
+
await sim.run();
|
|
228
|
+
try {
|
|
229
|
+
await bluebird_1.default.delay(2000);
|
|
230
|
+
// test
|
|
231
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
232
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, {
|
|
233
|
+
'appium:udid': udid,
|
|
234
|
+
'appium:noReset': true,
|
|
235
|
+
});
|
|
236
|
+
(0, chai_1.expect)(await sim.isRunning()).to.be.true;
|
|
237
|
+
const simsBefore = await getNumSims();
|
|
238
|
+
await (0, session_1.initSession)(caps);
|
|
239
|
+
const simsDuring = await getNumSims();
|
|
240
|
+
await (0, session_1.deleteSession)();
|
|
241
|
+
const simsAfter = await getNumSims();
|
|
242
|
+
(0, chai_1.expect)(await sim.isRunning()).to.be.true;
|
|
243
|
+
(0, chai_1.expect)(simsDuring).to.equal(simsBefore);
|
|
244
|
+
(0, chai_1.expect)(simsAfter).to.equal(simsBefore);
|
|
245
|
+
}
|
|
246
|
+
finally {
|
|
247
|
+
await (0, simulator_1.cleanupSimulator)(sim);
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
it('with invalid udid: throws an error', async function () {
|
|
251
|
+
// test
|
|
252
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
253
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, {
|
|
254
|
+
'appium:udid': 'some-random-udid',
|
|
255
|
+
});
|
|
256
|
+
await (0, chai_1.expect)((0, session_1.initSession)(caps)).to.be.rejectedWith('Unknown device or simulator UDID');
|
|
257
|
+
});
|
|
258
|
+
it('with non-existent udid: throws an error', async function () {
|
|
259
|
+
// test
|
|
260
|
+
const udid = 'a77841db006fb1762fee0bb6a2477b2b3e1cfa7d';
|
|
261
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
262
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, { 'appium:udid': udid });
|
|
263
|
+
await (0, chai_1.expect)((0, session_1.initSession)(caps)).to.be.rejectedWith('Unknown device or simulator UDID');
|
|
264
|
+
});
|
|
265
|
+
it('with noReset set to true: leaves sim booted', async function () {
|
|
266
|
+
// before
|
|
267
|
+
const udid = await createDevice();
|
|
268
|
+
const sim = await (0, appium_ios_simulator_1.getSimulator)(udid, {
|
|
269
|
+
platform: 'iOS',
|
|
270
|
+
checkExistence: false,
|
|
271
|
+
});
|
|
272
|
+
try {
|
|
273
|
+
// some systems require a pause before initializing.
|
|
274
|
+
await bluebird_1.default.delay(2000);
|
|
275
|
+
// test
|
|
276
|
+
const uiCatalogSimCaps = await (0, desired_1.getUICatalogSimCaps)();
|
|
277
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogSimCaps, {
|
|
278
|
+
'appium:udid': udid,
|
|
279
|
+
'appium:noReset': true,
|
|
280
|
+
});
|
|
281
|
+
const simsBefore = await getNumSims();
|
|
282
|
+
await (0, session_1.initSession)(caps);
|
|
283
|
+
const simsDuring = await getNumSims();
|
|
284
|
+
await (0, session_1.deleteSession)();
|
|
285
|
+
const simsAfter = await getNumSims();
|
|
286
|
+
(0, chai_1.expect)(await sim.isRunning()).to.be.true;
|
|
287
|
+
(0, chai_1.expect)(simsDuring).to.equal(simsBefore);
|
|
288
|
+
(0, chai_1.expect)(simsAfter).to.equal(simsBefore);
|
|
289
|
+
}
|
|
290
|
+
finally {
|
|
291
|
+
await (0, simulator_1.cleanupSimulator)(sim);
|
|
292
|
+
}
|
|
293
|
+
});
|
|
294
|
+
});
|
|
295
|
+
});
|
|
296
|
+
//# sourceMappingURL=driver-e2e-specs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"driver-e2e-specs.js","sourceRoot":"","sources":["../../../../test/functional/driver/driver-e2e-specs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../../../test/functional/helpers/element.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,gBAAgB,0BAA0B,CAAC;AACjD,QAAA,MAAM,kBAAkB,qBAAqB,CAAC;AAE9C,OAAO,EAAC,gBAAgB,EAAE,kBAAkB,EAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CLASS_CHAIN_SEARCH = exports.PREDICATE_SEARCH = void 0;
|
|
4
|
+
const PREDICATE_SEARCH = '-ios predicate string';
|
|
5
|
+
exports.PREDICATE_SEARCH = PREDICATE_SEARCH;
|
|
6
|
+
const CLASS_CHAIN_SEARCH = '-ios class chain';
|
|
7
|
+
exports.CLASS_CHAIN_SEARCH = CLASS_CHAIN_SEARCH;
|
|
8
|
+
//# sourceMappingURL=element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../test/functional/helpers/element.ts"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AAGzC,4CAAgB;AAFxB,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAEpB,gDAAkB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../../../test/functional/helpers/ports.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAsB,WAAW,qBAchC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getFreePort = getFreePort;
|
|
7
|
+
const node_net_1 = __importDefault(require("node:net"));
|
|
8
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
* @returns {Promise<number>}
|
|
12
|
+
*/
|
|
13
|
+
async function getFreePort() {
|
|
14
|
+
return await new Promise((resolve, reject) => {
|
|
15
|
+
const srv = node_net_1.default.createServer();
|
|
16
|
+
srv.listen(0, () => {
|
|
17
|
+
const address = srv.address();
|
|
18
|
+
let port;
|
|
19
|
+
if (lodash_1.default.has(address, 'port')) {
|
|
20
|
+
port = /** @type {import('node:net').AddressInfo} */ (address).port;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
reject(new Error('Cannot determine any free port number'));
|
|
24
|
+
}
|
|
25
|
+
srv.close(() => resolve(port));
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=ports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ports.js","sourceRoot":"","sources":["../../../../test/functional/helpers/ports.ts"],"names":[],"mappings":";;;;;AAOA,kCAcC;AArBD,wDAA2B;AAC3B,oDAAuB;AAEvB;;;GAGG;AACI,KAAK,UAAU,WAAW;IAC/B,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,GAAG,GAAG,kBAAG,CAAC,YAAY,EAAE,CAAC;QAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE;YACjB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC;YACT,IAAI,gBAAC,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,6CAA6C,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;YACtE,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
declare const HOST: string;
|
|
2
|
+
declare const PORT: number;
|
|
3
|
+
declare const MOCHA_TIMEOUT: number;
|
|
4
|
+
declare function initSession(caps: any, remoteOpts?: {}): Promise<any>;
|
|
5
|
+
declare function deleteSession(): Promise<void>;
|
|
6
|
+
export { initSession, deleteSession, HOST, PORT, MOCHA_TIMEOUT };
|
|
7
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../test/functional/helpers/session.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,IAAI,QAAqD,CAAC;AAChE,QAAA,MAAM,IAAI,QAAoE,CAAC;AAC/E,QAAA,MAAM,aAAa,QAAgB,CAAC;AAIpC,iBAAe,WAAW,CAAC,IAAI,KAAA,EAAE,UAAU,KAAK,gBAe/C;AAED,iBAAe,aAAa,kBAO3B;AAED,OAAO,EAAC,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOCHA_TIMEOUT = exports.PORT = exports.HOST = void 0;
|
|
4
|
+
exports.initSession = initSession;
|
|
5
|
+
exports.deleteSession = deleteSession;
|
|
6
|
+
const HOST = process.env.APPIUM_TEST_SERVER_HOST || '127.0.0.1';
|
|
7
|
+
exports.HOST = HOST;
|
|
8
|
+
const PORT = parseInt(String(process.env.APPIUM_TEST_SERVER_PORT), 10) || 4567;
|
|
9
|
+
exports.PORT = PORT;
|
|
10
|
+
const MOCHA_TIMEOUT = 60 * 1000 * 4;
|
|
11
|
+
exports.MOCHA_TIMEOUT = MOCHA_TIMEOUT;
|
|
12
|
+
let driver;
|
|
13
|
+
async function initSession(caps, remoteOpts = {}) {
|
|
14
|
+
const { remote } = await import('webdriverio');
|
|
15
|
+
driver = await remote({
|
|
16
|
+
hostname: HOST,
|
|
17
|
+
port: PORT,
|
|
18
|
+
capabilities: caps,
|
|
19
|
+
connectionRetryTimeout: MOCHA_TIMEOUT,
|
|
20
|
+
connectionRetryCount: 1,
|
|
21
|
+
...remoteOpts,
|
|
22
|
+
});
|
|
23
|
+
// @ts-ignore private API, apparently
|
|
24
|
+
driver.name = undefined;
|
|
25
|
+
// @ts-ignore private API, apparently
|
|
26
|
+
driver.errored = false;
|
|
27
|
+
return driver;
|
|
28
|
+
}
|
|
29
|
+
async function deleteSession() {
|
|
30
|
+
try {
|
|
31
|
+
await driver.deleteSession();
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
driver = undefined;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../../test/functional/helpers/session.ts"],"names":[],"mappings":";;;AAgCQ,kCAAW;AAAE,sCAAa;AAhClC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,WAAW,CAAC;AAgC5B,oBAAI;AA/BxC,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;AA+BrC,oBAAI;AA9B9C,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC;AA8BY,sCAAa;AA5B7D,IAAI,MAAM,CAAC;AAEX,KAAK,UAAU,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,EAAE;IAC9C,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IAC7C,MAAM,GAAG,MAAM,MAAM,CAAC;QACpB,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,IAAI;QACV,YAAY,EAAE,IAAI;QAClB,sBAAsB,EAAE,aAAa;QACrC,oBAAoB,EAAE,CAAC;QACvB,GAAG,UAAU;KACd,CAAC,CAAC;IACH,qCAAqC;IACrC,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC;IACxB,qCAAqC;IACrC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,aAAa;IAC1B,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;IACT,CAAC;YAAS,CAAC;QACT,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { shutdownSimulator } from '../../../lib/device/simulator-management';
|
|
2
|
+
export declare function killAllSimulators(): Promise<void>;
|
|
3
|
+
/**
|
|
4
|
+
* @param {string} udid
|
|
5
|
+
*/
|
|
6
|
+
export declare function deleteDeviceWithRetry(udid: any): Promise<void>;
|
|
7
|
+
/**
|
|
8
|
+
* @param {import('appium-ios-simulator').Simulator} [sim]
|
|
9
|
+
*/
|
|
10
|
+
export declare function cleanupSimulator(sim: any): Promise<void>;
|
|
11
|
+
export { shutdownSimulator };
|
|
12
|
+
//# sourceMappingURL=simulator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../../../../test/functional/helpers/simulator.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,iBAAiB,EAAC,MAAM,0CAA0C,CAAC;AAG3E,wBAAsB,iBAAiB,kBAatC;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,KAAA,iBAK/C;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,KAAA,iBAOzC;AAED,OAAO,EAAC,iBAAiB,EAAC,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.shutdownSimulator = void 0;
|
|
7
|
+
exports.killAllSimulators = killAllSimulators;
|
|
8
|
+
exports.deleteDeviceWithRetry = deleteDeviceWithRetry;
|
|
9
|
+
exports.cleanupSimulator = cleanupSimulator;
|
|
10
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
11
|
+
const node_simctl_1 = require("node-simctl");
|
|
12
|
+
const asyncbox_1 = require("asyncbox");
|
|
13
|
+
const appium_webdriveragent_1 = require("appium-webdriveragent");
|
|
14
|
+
const simulator_management_1 = require("../../../lib/device/simulator-management");
|
|
15
|
+
Object.defineProperty(exports, "shutdownSimulator", { enumerable: true, get: function () { return simulator_management_1.shutdownSimulator; } });
|
|
16
|
+
const appium_ios_simulator_1 = require("appium-ios-simulator");
|
|
17
|
+
async function killAllSimulators() {
|
|
18
|
+
const simctl = new node_simctl_1.Simctl();
|
|
19
|
+
const allDevices = lodash_1.default.flatMap(lodash_1.default.values(await simctl.getDevices()));
|
|
20
|
+
const bootedDevices = allDevices.filter((device) => device.state === 'Booted');
|
|
21
|
+
for (const { udid } of bootedDevices) {
|
|
22
|
+
// It is necessary to stop the corresponding xcodebuild process before killing
|
|
23
|
+
// the simulator, otherwise it will be automatically restarted
|
|
24
|
+
await (0, appium_webdriveragent_1.resetTestProcesses)(udid, true);
|
|
25
|
+
simctl.udid = udid;
|
|
26
|
+
await simctl.shutdownDevice();
|
|
27
|
+
}
|
|
28
|
+
await (0, appium_ios_simulator_1.killAllSimulators)();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {string} udid
|
|
32
|
+
*/
|
|
33
|
+
async function deleteDeviceWithRetry(udid) {
|
|
34
|
+
const simctl = new node_simctl_1.Simctl({ udid });
|
|
35
|
+
try {
|
|
36
|
+
await (0, asyncbox_1.retryInterval)(10, 1000, simctl.deleteDevice.bind(simctl));
|
|
37
|
+
}
|
|
38
|
+
catch { }
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @param {import('appium-ios-simulator').Simulator} [sim]
|
|
42
|
+
*/
|
|
43
|
+
async function cleanupSimulator(sim) {
|
|
44
|
+
if (!sim) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
await (0, appium_webdriveragent_1.resetTestProcesses)(sim.udid, true);
|
|
48
|
+
await sim.shutdown();
|
|
49
|
+
await deleteDeviceWithRetry(sim.udid);
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=simulator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../../test/functional/helpers/simulator.ts"],"names":[],"mappings":";;;;;;AAOA,8CAaC;AAKD,sDAKC;AAKD,4CAOC;AA1CD,oDAAuB;AACvB,6CAAmC;AACnC,uCAAuC;AACvC,iEAAyD;AACzD,mFAA2E;AAwCnE,kGAxCA,wCAAiB,OAwCA;AAvCzB,+DAAkE;AAE3D,KAAK,UAAU,iBAAiB;IACrC,MAAM,MAAM,GAAG,IAAI,oBAAM,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,gBAAC,CAAC,OAAO,CAAC,gBAAC,CAAC,MAAM,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAClE,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAE/E,KAAK,MAAM,EAAC,IAAI,EAAC,IAAI,aAAa,EAAE,CAAC;QACnC,8EAA8E;QAC9E,8DAA8D;QAC9D,MAAM,IAAA,0CAAkB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;IACD,MAAM,IAAA,wCAAO,GAAE,CAAC;AAClB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,qBAAqB,CAAC,IAAI;IAC9C,MAAM,MAAM,GAAG,IAAI,oBAAM,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,IAAA,wBAAa,EAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;AACZ,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,gBAAgB,CAAC,GAAG;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO;IACT,CAAC;IACD,MAAM,IAAA,0CAAkB,EAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;IACrB,MAAM,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typing-stress-e2e-specs.d.ts","sourceRoot":"","sources":["../../../../test/functional/long/typing-stress-e2e-specs.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const desired_1 = require("../desired");
|
|
40
|
+
const element_1 = require("../helpers/element");
|
|
41
|
+
const session_1 = require("../helpers/session");
|
|
42
|
+
const asyncbox_1 = require("asyncbox");
|
|
43
|
+
const chai_1 = __importStar(require("chai"));
|
|
44
|
+
const chai_as_promised_1 = __importDefault(require("chai-as-promised"));
|
|
45
|
+
chai_1.default.use(chai_as_promised_1.default);
|
|
46
|
+
// leave the long test to Travis
|
|
47
|
+
const TYPING_TRIES = process.env.CI ? 100 : 10;
|
|
48
|
+
describe('XCUITestDriver - long tests', function () {
|
|
49
|
+
this.timeout(0);
|
|
50
|
+
let driver;
|
|
51
|
+
before(async function () {
|
|
52
|
+
const uiCatalogCaps = await (0, desired_1.getUICatalogCaps)();
|
|
53
|
+
const caps = (0, desired_1.amendCapabilities)(uiCatalogCaps, { 'appium:maxTypingFrequency': 20 });
|
|
54
|
+
driver = await (0, session_1.initSession)(caps);
|
|
55
|
+
});
|
|
56
|
+
after(async function () {
|
|
57
|
+
await (0, session_1.deleteSession)();
|
|
58
|
+
});
|
|
59
|
+
describe('typing', function () {
|
|
60
|
+
const text = 'bunchoftext';
|
|
61
|
+
before(async function () {
|
|
62
|
+
const tfEl = await driver.$('~Text Fields');
|
|
63
|
+
await driver.execute('mobile: scroll', { element: tfEl, toVisible: true });
|
|
64
|
+
await tfEl.click();
|
|
65
|
+
// wait for there to be text fields present
|
|
66
|
+
await (0, asyncbox_1.retryInterval)(5, 500, async function () {
|
|
67
|
+
const el = await driver.$(`${element_1.PREDICATE_SEARCH}:type == 'XCUIElementTypeTextField'`);
|
|
68
|
+
await el.clearValue();
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
afterEach(async function () {
|
|
72
|
+
const el = await driver.$(`${element_1.PREDICATE_SEARCH}:type == 'XCUIElementTypeTextField'`);
|
|
73
|
+
await el.clearValue();
|
|
74
|
+
});
|
|
75
|
+
for (let i = 0; i < TYPING_TRIES; i++) {
|
|
76
|
+
it(`should not fail in typing (try #${i + 1})`, async function () {
|
|
77
|
+
const el = await driver.$(`${element_1.PREDICATE_SEARCH}:type == 'XCUIElementTypeTextField'`);
|
|
78
|
+
await el.setValue(text);
|
|
79
|
+
await (0, chai_1.expect)(el.getValue()).to.eventually.include(text);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
//# sourceMappingURL=typing-stress-e2e-specs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typing-stress-e2e-specs.js","sourceRoot":"","sources":["../../../../test/functional/long/typing-stress-e2e-specs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAA+D;AAC/D,gDAAoD;AACpD,gDAA8D;AAC9D,uCAAuC;AACvC,6CAAkC;AAClC,wEAA8C;AAE9C,cAAI,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAC;AAEzB,gCAAgC;AAChC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAE/C,QAAQ,CAAC,6BAA6B,EAAE;IACtC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAEhB,IAAI,MAAM,CAAC;IAEX,MAAM,CAAC,KAAK;QACV,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAgB,GAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAA,2BAAiB,EAAC,aAAa,EAAE,EAAC,2BAA2B,EAAE,EAAE,EAAC,CAAC,CAAC;QACjF,MAAM,GAAG,MAAM,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAA,uBAAa,GAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE;QACjB,MAAM,IAAI,GAAG,aAAa,CAAC;QAC3B,MAAM,CAAC,KAAK;YACV,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YAC5C,MAAM,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAEnB,2CAA2C;YAC3C,MAAM,IAAA,wBAAa,EAAC,CAAC,EAAE,GAAG,EAAE,KAAK;gBAC/B,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,GAAG,0BAAgB,qCAAqC,CAAC,CAAC;gBACpF,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,KAAK;YACb,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,GAAG,0BAAgB,qCAAqC,CAAC,CAAC;YACpF,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,EAAE,CAAC,mCAAmC,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK;gBACnD,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,GAAG,0BAAgB,qCAAqC,CAAC,CAAC;gBACpF,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,IAAA,aAAM,EAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tvos-e2e-specs.d.ts","sourceRoot":"","sources":["../../../../test/functional/tv/tvos-e2e-specs.ts"],"names":[],"mappings":""}
|