UNPKG

appium-flutter-driver

Version:
54 lines 2.54 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getObservatoryWsUri = exports.connectAndroidSession = exports.startAndroidSession = void 0; const appium_uiautomator2_driver_1 = __importDefault(require("appium-uiautomator2-driver")); const logger_1 = require("../logger"); const observatory_1 = require("./observatory"); const setupNewAndroidDriver = async (...args) => { const androiddriver = new appium_uiautomator2_driver_1.default({}); //@ts-ignore Args are ok await androiddriver.createSession(...args); return androiddriver; }; const startAndroidSession = async (flutterDriver, caps, ...args) => { logger_1.log.info(`Starting an Android proxy session`); const androiddriver = await setupNewAndroidDriver(...args); // the session starts without any apps if (caps.app === undefined && caps.appPackage === undefined) { return [androiddriver, null]; } return [ androiddriver, await (0, observatory_1.connectSocket)(exports.getObservatoryWsUri, flutterDriver, androiddriver, caps), ]; }; exports.startAndroidSession = startAndroidSession; const connectAndroidSession = async (flutterDriver, androiddriver, caps) => await (0, observatory_1.connectSocket)(exports.getObservatoryWsUri, flutterDriver, androiddriver, caps); exports.connectAndroidSession = connectAndroidSession; const getObservatoryWsUri = async (flutterDriver, proxydriver, caps) => { let urlObject; if (caps.observatoryWsUri) { urlObject = new URL(caps.observatoryWsUri); urlObject.protocol = `ws`; // defaults to skip the port-forwarding as backward compatibility if (caps.skipPortForward === undefined || caps.skipPortForward) { return urlObject.toJSON(); } } else { urlObject = (0, observatory_1.fetchObservatoryUrl)(proxydriver.adb.logcat.logs); } const remotePort = urlObject.port; flutterDriver.portForwardLocalPort = caps.forwardingPort ?? remotePort; urlObject.port = flutterDriver.portForwardLocalPort; await proxydriver.adb.forwardPort(flutterDriver.portForwardLocalPort, remotePort); if (!caps.observatoryWsUri && proxydriver.adb.adbHost) { urlObject.host = proxydriver.adb.adbHost; } return urlObject.toJSON(); }; exports.getObservatoryWsUri = getObservatoryWsUri; //# sourceMappingURL=android.js.map