UNPKG

appium-mac2-driver

Version:

XCTest-based Appium driver for macOS apps automation

239 lines (237 loc) 5.32 kB
import {ExecuteMethodMap} from '@appium/types'; export const executeMethodMap = { 'macos: click': { command: 'macosClick', params: { optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: scroll': { command: 'macosScroll', params: { required: ['deltaX', 'deltaY'], optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: swipe': { command: 'macosSwipe', params: { required: ['direction'], optional: ['elementId', 'x', 'y', 'velocity', 'keyModifierFlags'], }, }, 'macos: rightClick': { command: 'macosRightClick', params: { optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: hover': { command: 'macosHover', params: { optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: doubleClick': { command: 'macosDoubleClick', params: { optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: clickAndDrag': { command: 'macosClickAndDrag', params: { required: ['duration'], optional: [ 'sourceElementId', 'destinationElementId', 'startX', 'startY', 'endX', 'endY', 'keyModifierFlags', ], }, }, 'macos: clickAndDragAndHold': { command: 'macosClickAndDragAndHold', params: { required: ['duration', 'holdDuration'], optional: [ 'sourceElementId', 'destinationElementId', 'startX', 'startY', 'endX', 'endY', 'velocity', 'keyModifierFlags', ], }, }, 'macos: keys': { command: 'macosKeys', params: { required: ['keys'], optional: ['elementId'], }, }, 'macos: tap': { command: 'macosTap', params: { optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: doubleTap': { command: 'macosDoubleTap', params: { optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: press': { command: 'macosPressAndHold', params: { required: ['duration'], optional: ['elementId', 'x', 'y', 'keyModifierFlags'], }, }, 'macos: pressAndDrag': { command: 'macosPressAndDrag', params: { required: ['duration'], optional: [ 'sourceElementId', 'destinationElementId', 'startX', 'startY', 'endX', 'endY', 'keyModifierFlags', ], }, }, 'macos: pressAndDragAndHold': { command: 'macosPressAndDragAndHold', params: { required: ['duration', 'holdDuration'], optional: [ 'sourceElementId', 'destinationElementId', 'startX', 'startY', 'endX', 'endY', 'velocity', 'keyModifierFlags', ], }, }, 'macos: source': { command: 'macosSource', params: { optional: ['format'], }, }, 'macos: deepLink': { command: 'macosDeepLink', params: { required: ['url'], optional: ['bundleId'], }, }, 'macos: screenshots': { command: 'macosScreenshots', params: { optional: ['displayId'], }, }, 'macos: appleScript': { command: 'macosExecAppleScript', params: { optional: ['script', 'language', 'command', 'cwd', 'timeout'], }, }, 'macos: launchApp': { command: 'macosLaunchApp', params: { optional: ['bundleId', 'path', 'arguments', 'environment'], }, }, 'macos: activateApp': { command: 'macosActivateApp', params: { optional: ['bundleId', 'path'], }, }, 'macos: terminateApp': { command: 'macosTerminateApp', params: { optional: ['bundleId', 'path'], }, }, 'macos: queryAppState': { command: 'macosQueryAppState', params: { optional: ['bundleId', 'path'], }, }, 'macos: startRecordingScreen': { command: 'startRecordingScreen', params: { required: ['deviceId'], optional: [ 'timeLimit', 'videoFilter', 'fps', 'preset', 'captureCursor', 'captureClicks', 'forceRestart', ], }, }, 'macos: stopRecordingScreen': { command: 'stopRecordingScreen', params: { optional: ['remotePath', 'user', 'pass', 'method', 'headers', 'fileFieldName', 'formFields'], }, }, 'macos: startNativeScreenRecording': { command: 'macosStartNativeScreenRecording', params: { optional: ['fps', 'codec', 'displayId'], }, }, 'macos: getNativeScreenRecordingInfo': { command: 'macosGetNativeScreenRecordingInfo', }, 'macos: stopNativeScreenRecording': { command: 'macosStopNativeScreenRecording', params: { optional: [ 'remotePath', 'user', 'pass', 'method', 'headers', 'fileFieldName', 'formFields', 'ignorePayload', ], }, }, 'macos: listDisplays': { command: 'macosListDisplays', }, 'macos: getClipboard': { command: 'macosGetClipboard', params: {optional: ['contentType']}, }, 'macos: setClipboard': { command: 'macosSetClipboard', params: { required: ['content'], optional: ['contentType'], }, }, } as const satisfies ExecuteMethodMap<any>;