123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- "use strict";
- /**
- * Custom appium commands
- *
- * In this file we define all the custom commands which are part of the appium API but will probably
- * never be part of the webdriver spec or JsonWireProtocol.
- */
- Object.defineProperty(exports, "__esModule", { value: true });
- const fs = require("fs");
- const selenium_mock_1 = require("selenium-mock");
- const helpers_1 = require("./helpers");
- let app = {};
- let device = {};
- exports.appium = {
- app: app,
- device: device
- };
- app.toBackground =
- new selenium_mock_1.Command('POST', 'appium/app/background', (session, params) => {
- return new Promise((resolve) => {
- setTimeout(resolve, (params['seconds'] || 0) * 1000);
- });
- });
- app.closeApp = helpers_1.noopFactory('appium/app/close');
- app.getStrings = helpers_1.constFactory('POST', '/appium/app/strings', ['Hello', 'World']);
- app.launch = helpers_1.noopFactory('appium/app/launch');
- app.reset = helpers_1.noopFactory('appium/app/reset');
- device.getActivity = helpers_1.getterFactory('/appium/device/current_activity', 'activity');
- device.startActivity = helpers_1.setterFactory('/appium/device/start_activity', 'activity', 'appActivity');
- device.hideKeyboard = helpers_1.noopFactory('/appium/device/hide_keyboard');
- device.sendKeyEvent = helpers_1.noopFactory('/appium/device/keyevent');
- device.pressKeyCode = helpers_1.noopFactory('/appium/device/press_keycode');
- device.longPressKeyCode = helpers_1.noopFactory('/appium/device/long_press_keycode');
- device.installApp =
- new selenium_mock_1.Command('POST', 'appium/device/install_app', (session, params) => {
- fs.readFile(params['appPath'], (err, contents) => {
- if (err) {
- throw 'Error while trying to read "' + params['appPath'] + ': ' + err;
- }
- session.installedApps.push(contents.toString().trim());
- });
- });
- device.isAppInstalled =
- new selenium_mock_1.Command('POST', 'appium/device/app_installed', (session, params) => {
- return session.installedApps.some((app) => {
- return app === params['bundleId'] || app === params['appId'];
- });
- });
- device.removeApp =
- new selenium_mock_1.Command('POST', '/appium/device/remove_app', (session, params) => {
- session.installedApps = session.installedApps.filter((app) => {
- return app !== params['bundleId'] && app !== params['appId'];
- });
- });
- device.isLocked = helpers_1.getterFactory('/appium/device/is_locked', 'locked', 'POST');
- device.lock =
- new selenium_mock_1.Command('POST', 'appium/device/lock', (session, params) => {
- return new Promise((resolve) => {
- setTimeout(() => {
- session.locked = true;
- resolve();
- }, (params['seconds'] || 0) * 1000);
- });
- });
- device.unlock =
- new selenium_mock_1.Command('POST', 'appium/device/unlock', (session) => {
- session.locked = false;
- });
- device.pullFile =
- new selenium_mock_1.Command('POST', '/appium/device/pull_file', (session, params) => {
- let path = params['path'].split('/');
- if (path[0].length == 0) {
- path = path.slice(1);
- }
- ;
- let file = session.files;
- for (let folder of path) {
- file = file[folder];
- }
- return file;
- });
- device.pullFolder =
- new selenium_mock_1.Command('POST', '/appium/device/pull_folder', (session, params) => {
- let path = params['path'].split('/');
- if (path[0].length == 0) {
- path = path.slice(1);
- }
- ;
- let folder = session.files;
- for (let name of path) {
- folder = folder[name];
- }
- return folder;
- });
- device.pushFile =
- new selenium_mock_1.Command('POST', 'appium/device/push_file', (session, params) => {
- let path = params['path'].split('/');
- if (path[0].length == 0) {
- path = path.slice(1);
- }
- ;
- let folder = session.files;
- for (let i = 0; i < path.length - 1; i++) {
- if (folder[path[i]] === undefined) {
- folder[path[i]] = {};
- }
- folder = folder[path[i]];
- }
- folder[path[path.length - 1]] = params['data'];
- });
- device.getTime = helpers_1.constFactory('GET', '/appium/device/system_time', new Date().toString());
- device.openNotifications = helpers_1.noopFactory('/appium/device/open_notifications');
- device.rotate = helpers_1.noopFactory('appium/device/rotate');
- device.shake = helpers_1.noopFactory('appium/device/shake');
- exports.appium.getSettings = helpers_1.getterFactory('/appium/settings');
- exports.appium.setSettings = helpers_1.setterFactory('/appium/settings');
- exports.appium.setImmediateValue = helpers_1.noopFactory('/appium/element/:id/value');
- //# sourceMappingURL=appium.js.map
|