xref: /plugin/combo/vendor/php-webdriver/webdriver/lib/Remote/DriverCommand.php (revision 04fd306c7c155fa133ebb3669986875d65988276)
1*04fd306cSNickeau<?php
2*04fd306cSNickeau
3*04fd306cSNickeaunamespace Facebook\WebDriver\Remote;
4*04fd306cSNickeau
5*04fd306cSNickeau/**
6*04fd306cSNickeau * This list of command defined in the WebDriver json wire protocol.
7*04fd306cSNickeau *
8*04fd306cSNickeau * @codeCoverageIgnore
9*04fd306cSNickeau */
10*04fd306cSNickeauclass DriverCommand
11*04fd306cSNickeau{
12*04fd306cSNickeau    const GET_ALL_SESSIONS = 'getAllSessions';
13*04fd306cSNickeau    const GET_CAPABILITIES = 'getCapabilities';
14*04fd306cSNickeau    const NEW_SESSION = 'newSession';
15*04fd306cSNickeau    const STATUS = 'status';
16*04fd306cSNickeau    const CLOSE = 'close';
17*04fd306cSNickeau    const QUIT = 'quit';
18*04fd306cSNickeau    const GET = 'get';
19*04fd306cSNickeau    const GO_BACK = 'goBack';
20*04fd306cSNickeau    const GO_FORWARD = 'goForward';
21*04fd306cSNickeau    const REFRESH = 'refresh';
22*04fd306cSNickeau    const ADD_COOKIE = 'addCookie';
23*04fd306cSNickeau    const GET_ALL_COOKIES = 'getCookies';
24*04fd306cSNickeau    const DELETE_COOKIE = 'deleteCookie';
25*04fd306cSNickeau    const DELETE_ALL_COOKIES = 'deleteAllCookies';
26*04fd306cSNickeau    const FIND_ELEMENT = 'findElement';
27*04fd306cSNickeau    const FIND_ELEMENTS = 'findElements';
28*04fd306cSNickeau    const FIND_CHILD_ELEMENT = 'findChildElement';
29*04fd306cSNickeau    const FIND_CHILD_ELEMENTS = 'findChildElements';
30*04fd306cSNickeau    const CLEAR_ELEMENT = 'clearElement';
31*04fd306cSNickeau    const CLICK_ELEMENT = 'clickElement';
32*04fd306cSNickeau    const SEND_KEYS_TO_ELEMENT = 'sendKeysToElement';
33*04fd306cSNickeau    const SEND_KEYS_TO_ACTIVE_ELEMENT = 'sendKeysToActiveElement';
34*04fd306cSNickeau    const SUBMIT_ELEMENT = 'submitElement';
35*04fd306cSNickeau    const UPLOAD_FILE = 'uploadFile';
36*04fd306cSNickeau    const GET_CURRENT_WINDOW_HANDLE = 'getCurrentWindowHandle';
37*04fd306cSNickeau    const GET_WINDOW_HANDLES = 'getWindowHandles';
38*04fd306cSNickeau    const GET_CURRENT_CONTEXT_HANDLE = 'getCurrentContextHandle';
39*04fd306cSNickeau    const GET_CONTEXT_HANDLES = 'getContextHandles';
40*04fd306cSNickeau    // Switching between to window/frame/iframe
41*04fd306cSNickeau    const SWITCH_TO_WINDOW = 'switchToWindow';
42*04fd306cSNickeau    const SWITCH_TO_CONTEXT = 'switchToContext';
43*04fd306cSNickeau    const SWITCH_TO_FRAME = 'switchToFrame';
44*04fd306cSNickeau    const SWITCH_TO_PARENT_FRAME = 'switchToParentFrame';
45*04fd306cSNickeau    const GET_ACTIVE_ELEMENT = 'getActiveElement';
46*04fd306cSNickeau    // Information of the page
47*04fd306cSNickeau    const GET_CURRENT_URL = 'getCurrentUrl';
48*04fd306cSNickeau    const GET_PAGE_SOURCE = 'getPageSource';
49*04fd306cSNickeau    const GET_TITLE = 'getTitle';
50*04fd306cSNickeau    // Javascript API
51*04fd306cSNickeau    const EXECUTE_SCRIPT = 'executeScript';
52*04fd306cSNickeau    const EXECUTE_ASYNC_SCRIPT = 'executeAsyncScript';
53*04fd306cSNickeau    // API getting information from an element.
54*04fd306cSNickeau    const GET_ELEMENT_TEXT = 'getElementText';
55*04fd306cSNickeau    const GET_ELEMENT_TAG_NAME = 'getElementTagName';
56*04fd306cSNickeau    const IS_ELEMENT_SELECTED = 'isElementSelected';
57*04fd306cSNickeau    const IS_ELEMENT_ENABLED = 'isElementEnabled';
58*04fd306cSNickeau    const IS_ELEMENT_DISPLAYED = 'isElementDisplayed';
59*04fd306cSNickeau    const GET_ELEMENT_LOCATION = 'getElementLocation';
60*04fd306cSNickeau    const GET_ELEMENT_LOCATION_ONCE_SCROLLED_INTO_VIEW = 'getElementLocationOnceScrolledIntoView';
61*04fd306cSNickeau    const GET_ELEMENT_SIZE = 'getElementSize';
62*04fd306cSNickeau    const GET_ELEMENT_ATTRIBUTE = 'getElementAttribute';
63*04fd306cSNickeau    const GET_ELEMENT_VALUE_OF_CSS_PROPERTY = 'getElementValueOfCssProperty';
64*04fd306cSNickeau    const ELEMENT_EQUALS = 'elementEquals';
65*04fd306cSNickeau    const SCREENSHOT = 'screenshot';
66*04fd306cSNickeau    // Alert API
67*04fd306cSNickeau    const ACCEPT_ALERT = 'acceptAlert';
68*04fd306cSNickeau    const DISMISS_ALERT = 'dismissAlert';
69*04fd306cSNickeau    const GET_ALERT_TEXT = 'getAlertText';
70*04fd306cSNickeau    const SET_ALERT_VALUE = 'setAlertValue';
71*04fd306cSNickeau    // Timeout API
72*04fd306cSNickeau    const SET_TIMEOUT = 'setTimeout';
73*04fd306cSNickeau    const IMPLICITLY_WAIT = 'implicitlyWait';
74*04fd306cSNickeau    const SET_SCRIPT_TIMEOUT = 'setScriptTimeout';
75*04fd306cSNickeau    /** @deprecated */
76*04fd306cSNickeau    const EXECUTE_SQL = 'executeSQL';
77*04fd306cSNickeau    const GET_LOCATION = 'getLocation';
78*04fd306cSNickeau    const SET_LOCATION = 'setLocation';
79*04fd306cSNickeau    const GET_APP_CACHE = 'getAppCache';
80*04fd306cSNickeau    const GET_APP_CACHE_STATUS = 'getStatus';
81*04fd306cSNickeau    const CLEAR_APP_CACHE = 'clearAppCache';
82*04fd306cSNickeau    const IS_BROWSER_ONLINE = 'isBrowserOnline';
83*04fd306cSNickeau    const SET_BROWSER_ONLINE = 'setBrowserOnline';
84*04fd306cSNickeau    // Local storage
85*04fd306cSNickeau    const GET_LOCAL_STORAGE_ITEM = 'getLocalStorageItem';
86*04fd306cSNickeau    const GET_LOCAL_STORAGE_KEYS = 'getLocalStorageKeys';
87*04fd306cSNickeau    const SET_LOCAL_STORAGE_ITEM = 'setLocalStorageItem';
88*04fd306cSNickeau    const REMOVE_LOCAL_STORAGE_ITEM = 'removeLocalStorageItem';
89*04fd306cSNickeau    const CLEAR_LOCAL_STORAGE = 'clearLocalStorage';
90*04fd306cSNickeau    const GET_LOCAL_STORAGE_SIZE = 'getLocalStorageSize';
91*04fd306cSNickeau    // Session storage
92*04fd306cSNickeau    const GET_SESSION_STORAGE_ITEM = 'getSessionStorageItem';
93*04fd306cSNickeau    const GET_SESSION_STORAGE_KEYS = 'getSessionStorageKey';
94*04fd306cSNickeau    const SET_SESSION_STORAGE_ITEM = 'setSessionStorageItem';
95*04fd306cSNickeau    const REMOVE_SESSION_STORAGE_ITEM = 'removeSessionStorageItem';
96*04fd306cSNickeau    const CLEAR_SESSION_STORAGE = 'clearSessionStorage';
97*04fd306cSNickeau    const GET_SESSION_STORAGE_SIZE = 'getSessionStorageSize';
98*04fd306cSNickeau    // Screen orientation
99*04fd306cSNickeau    const SET_SCREEN_ORIENTATION = 'setScreenOrientation';
100*04fd306cSNickeau    const GET_SCREEN_ORIENTATION = 'getScreenOrientation';
101*04fd306cSNickeau    // These belong to the Advanced user interactions - an element is optional for these commands.
102*04fd306cSNickeau    const CLICK = 'mouseClick';
103*04fd306cSNickeau    const DOUBLE_CLICK = 'mouseDoubleClick';
104*04fd306cSNickeau    const MOUSE_DOWN = 'mouseButtonDown';
105*04fd306cSNickeau    const MOUSE_UP = 'mouseButtonUp';
106*04fd306cSNickeau    const MOVE_TO = 'mouseMoveTo';
107*04fd306cSNickeau    // Those allow interactions with the Input Methods installed on the system.
108*04fd306cSNickeau    const IME_GET_AVAILABLE_ENGINES = 'imeGetAvailableEngines';
109*04fd306cSNickeau    const IME_GET_ACTIVE_ENGINE = 'imeGetActiveEngine';
110*04fd306cSNickeau    const IME_IS_ACTIVATED = 'imeIsActivated';
111*04fd306cSNickeau    const IME_DEACTIVATE = 'imeDeactivate';
112*04fd306cSNickeau    const IME_ACTIVATE_ENGINE = 'imeActivateEngine';
113*04fd306cSNickeau    // These belong to the Advanced Touch API
114*04fd306cSNickeau    const TOUCH_SINGLE_TAP = 'touchSingleTap';
115*04fd306cSNickeau    const TOUCH_DOWN = 'touchDown';
116*04fd306cSNickeau    const TOUCH_UP = 'touchUp';
117*04fd306cSNickeau    const TOUCH_MOVE = 'touchMove';
118*04fd306cSNickeau    const TOUCH_SCROLL = 'touchScroll';
119*04fd306cSNickeau    const TOUCH_DOUBLE_TAP = 'touchDoubleTap';
120*04fd306cSNickeau    const TOUCH_LONG_PRESS = 'touchLongPress';
121*04fd306cSNickeau    const TOUCH_FLICK = 'touchFlick';
122*04fd306cSNickeau    // Window API (beta)
123*04fd306cSNickeau    const SET_WINDOW_SIZE = 'setWindowSize';
124*04fd306cSNickeau    const SET_WINDOW_POSITION = 'setWindowPosition';
125*04fd306cSNickeau    const GET_WINDOW_SIZE = 'getWindowSize';
126*04fd306cSNickeau    const GET_WINDOW_POSITION = 'getWindowPosition';
127*04fd306cSNickeau    const MAXIMIZE_WINDOW = 'maximizeWindow';
128*04fd306cSNickeau    const FULLSCREEN_WINDOW = 'fullscreenWindow';
129*04fd306cSNickeau    // Logging API
130*04fd306cSNickeau    const GET_AVAILABLE_LOG_TYPES = 'getAvailableLogTypes';
131*04fd306cSNickeau    const GET_LOG = 'getLog';
132*04fd306cSNickeau    const GET_SESSION_LOGS = 'getSessionLogs';
133*04fd306cSNickeau    // Mobile API
134*04fd306cSNickeau    const GET_NETWORK_CONNECTION = 'getNetworkConnection';
135*04fd306cSNickeau    const SET_NETWORK_CONNECTION = 'setNetworkConnection';
136*04fd306cSNickeau    // Custom command
137*04fd306cSNickeau    const CUSTOM_COMMAND = 'customCommand';
138*04fd306cSNickeau
139*04fd306cSNickeau    // W3C specific
140*04fd306cSNickeau    const ACTIONS = 'actions';
141*04fd306cSNickeau    const GET_ELEMENT_PROPERTY = 'getElementProperty';
142*04fd306cSNickeau    const GET_NAMED_COOKIE = 'getNamedCookie';
143*04fd306cSNickeau    const NEW_WINDOW = 'newWindow';
144*04fd306cSNickeau    const TAKE_ELEMENT_SCREENSHOT = 'takeElementScreenshot';
145*04fd306cSNickeau    const MINIMIZE_WINDOW = 'minimizeWindow';
146*04fd306cSNickeau
147*04fd306cSNickeau    private function __construct()
148*04fd306cSNickeau    {
149*04fd306cSNickeau    }
150*04fd306cSNickeau}
151