323 lines
6.0 KiB
YAML
323 lines
6.0 KiB
YAML
# Copyright (c) Microsoft Corporation.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
Android:
|
|
type: interface
|
|
|
|
commands:
|
|
|
|
devices:
|
|
internal: true
|
|
parameters:
|
|
host: string?
|
|
port: int?
|
|
omitDriverInstall: boolean?
|
|
returns:
|
|
devices:
|
|
type: array
|
|
items: AndroidDevice
|
|
|
|
AndroidSocket:
|
|
type: interface
|
|
|
|
commands:
|
|
write:
|
|
internal: true
|
|
parameters:
|
|
data: binary
|
|
|
|
close:
|
|
internal: true
|
|
|
|
events:
|
|
data:
|
|
parameters:
|
|
data: binary
|
|
close:
|
|
|
|
AndroidDevice:
|
|
type: interface
|
|
|
|
initializer:
|
|
model: string
|
|
serial: string
|
|
|
|
commands:
|
|
wait:
|
|
title: Wait
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
state:
|
|
type: enum?
|
|
literals:
|
|
- gone
|
|
timeout: float
|
|
|
|
fill:
|
|
title: Fill "{text}"
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
text: string
|
|
timeout: float
|
|
|
|
tap:
|
|
title: Tap
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
duration: float?
|
|
timeout: float
|
|
|
|
drag:
|
|
title: Drag
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
dest: Point
|
|
speed: float?
|
|
timeout: float
|
|
|
|
fling:
|
|
title: Fling
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
direction:
|
|
type: enum
|
|
literals:
|
|
- up
|
|
- down
|
|
- left
|
|
- right
|
|
speed: float?
|
|
timeout: float
|
|
|
|
longTap:
|
|
title: Long tap
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
timeout: float
|
|
|
|
pinchClose:
|
|
title: Pinch close
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
percent: float
|
|
speed: float?
|
|
timeout: float
|
|
|
|
pinchOpen:
|
|
title: Pinch open
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
percent: float
|
|
speed: float?
|
|
timeout: float
|
|
|
|
scroll:
|
|
title: Scroll
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
direction:
|
|
type: enum
|
|
literals:
|
|
- up
|
|
- down
|
|
- left
|
|
- right
|
|
percent: float
|
|
speed: float?
|
|
timeout: float
|
|
|
|
swipe:
|
|
title: Swipe
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
direction:
|
|
type: enum
|
|
literals:
|
|
- up
|
|
- down
|
|
- left
|
|
- right
|
|
percent: float
|
|
speed: float?
|
|
timeout: float
|
|
|
|
info:
|
|
internal: true
|
|
parameters:
|
|
androidSelector: AndroidSelector
|
|
returns:
|
|
info: AndroidElementInfo
|
|
|
|
screenshot:
|
|
title: Screenshot
|
|
returns:
|
|
binary: binary
|
|
|
|
inputType:
|
|
title: Type
|
|
parameters:
|
|
text: string
|
|
|
|
inputPress:
|
|
title: Press
|
|
parameters:
|
|
key: string
|
|
|
|
inputTap:
|
|
title: Tap
|
|
parameters:
|
|
point: Point
|
|
|
|
inputSwipe:
|
|
title: Swipe
|
|
parameters:
|
|
segments:
|
|
type: array
|
|
items: Point
|
|
steps: int
|
|
|
|
inputDrag:
|
|
title: Drag
|
|
parameters:
|
|
from: Point
|
|
to: Point
|
|
steps: int
|
|
|
|
launchBrowser:
|
|
title: Launch browser
|
|
parameters:
|
|
$mixin: ContextOptions
|
|
pkg: string?
|
|
args:
|
|
type: array?
|
|
items: string
|
|
proxy:
|
|
type: object?
|
|
properties:
|
|
server: string
|
|
bypass: string?
|
|
username: string?
|
|
password: string?
|
|
|
|
returns:
|
|
context: BrowserContext
|
|
|
|
open:
|
|
title: Open app
|
|
parameters:
|
|
command: string
|
|
returns:
|
|
socket: AndroidSocket
|
|
|
|
shell:
|
|
title: Execute shell command
|
|
group: configuration
|
|
parameters:
|
|
command: string
|
|
returns:
|
|
result: binary
|
|
|
|
installApk:
|
|
title: Install apk
|
|
parameters:
|
|
file: binary
|
|
args:
|
|
type: array?
|
|
items: string
|
|
|
|
push:
|
|
title: Push
|
|
parameters:
|
|
file: binary
|
|
path: string
|
|
mode: int?
|
|
|
|
connectToWebView:
|
|
title: Connect to Web View
|
|
parameters:
|
|
socketName: string
|
|
returns:
|
|
context: BrowserContext
|
|
|
|
close:
|
|
internal: true
|
|
|
|
events:
|
|
close:
|
|
|
|
webViewAdded:
|
|
parameters:
|
|
webView: AndroidWebView
|
|
|
|
webViewRemoved:
|
|
parameters:
|
|
socketName: string
|
|
|
|
AndroidWebView:
|
|
type: object
|
|
properties:
|
|
pid: int
|
|
pkg: string
|
|
socketName: string
|
|
|
|
AndroidSelector:
|
|
type: object
|
|
properties:
|
|
checkable: boolean?
|
|
checked: boolean?
|
|
clazz: string?
|
|
clickable: boolean?
|
|
depth: int?
|
|
desc: string?
|
|
enabled: boolean?
|
|
focusable: boolean?
|
|
focused: boolean?
|
|
hasChild:
|
|
type: object?
|
|
properties:
|
|
androidSelector: AndroidSelector
|
|
hasDescendant:
|
|
type: object?
|
|
properties:
|
|
androidSelector: AndroidSelector
|
|
maxDepth: int?
|
|
longClickable: boolean?
|
|
pkg: string?
|
|
res: string?
|
|
scrollable: boolean?
|
|
selected: boolean?
|
|
text: string?
|
|
|
|
AndroidElementInfo:
|
|
type: object
|
|
properties:
|
|
children:
|
|
type: array?
|
|
items: AndroidElementInfo
|
|
clazz: string
|
|
desc: string
|
|
res: string
|
|
pkg: string
|
|
text: string
|
|
bounds: Rect
|
|
checkable: boolean
|
|
checked: boolean
|
|
clickable: boolean
|
|
enabled: boolean
|
|
focusable: boolean
|
|
focused: boolean
|
|
longClickable: boolean
|
|
scrollable: boolean
|
|
selected: boolean
|