Constants¶
Virtual Remote Control (VRC) button key codes¶
VRC buttons are used via suitest.VRC.*
, *
being a key code from below. For
example suitest.VRC.FAST_FWD
.
Code | Key name | IR-controlled | Android TV | Xbox One | Apple TV | Roku |
---|---|---|---|---|---|---|
ENTER | Enter | ✓ | - | - | - | - |
OK | Ok | ✓ | ✓ | - | - | ✓ |
BACK | Back | ✓ | ✓ | - | - | ✓ |
UP | Up | ✓ | ✓ | - | ✓ | ✓ |
DOWN | Down | ✓ | ✓ | - | ✓ | ✓ |
RIGHT | Right | ✓ | ✓ | - | ✓ | ✓ |
LEFT | Left | ✓ | ✓ | - | ✓ | ✓ |
RED | Red | ✓ | - | - | - | ✓ |
GREEN | Green | ✓ | - | - | - | ✓ |
YELLOW | Yellow | ✓ | - | - | - | - |
BLUE | Blue | ✓ | - | - | - | - |
NUM_0 | Numpad 0 | ✓ | - | - | - | - |
NUM_1 | Numpad 1 | ✓ | - | - | - | - |
NUM_2 | Numpad 2 | ✓ | - | - | - | - |
NUM_3 | Numpad 3 | ✓ | - | - | - | - |
NUM_4 | Numpad 4 | ✓ | - | - | - | - |
NUM_5 | Numpad 5 | ✓ | - | - | - | - |
NUM_6 | Numpad 6 | ✓ | - | - | - | - |
NUM_7 | Numpad 7 | ✓ | - | - | - | - |
NUM_8 | Numpad 8 | ✓ | - | - | - | - |
NUM_9 | Numpad 9 | ✓ | - | - | - | - |
FAST_FWD | Fast forward | ✓ | ✓ | - | - | - |
REWIND | Rewind | ✓ | ✓ | - | - | - |
STOP | Stop | ✓ | ✓ | - | - | - |
PLAY | Play | ✓ | ✓ | - | - | - |
PAUSE | Pause | ✓ | ✓ | - | - | - |
PLAY_PAUSE | Play or pause in one button | ✓ | ✓ | - | ✓ | ✓ |
RECORD | Record | ✓ | - | - | - | - |
VOL_UP | Volume up | ✓ | - | - | - | ✓ |
VOL_DOWN | Volume down | ✓ | - | - | - | ✓ |
MUTE | Mute | ✓ | - | - | - | - |
SETTINGS | Settings | ✓ | - | - | - | ✓ |
TELETEXT | Teletext | ✓ | - | - | - | - |
MENU | Menu | ✓ | - | ✓ | ✓ | - |
SOURCE | Source | ✓ | - | - | - | - |
SMART | Smart | ✓ | - | - | - | - |
GUIDE | Guide | ✓ | - | - | - | - |
EXIT | Exit | ✓ | - | - | - | ✓ |
POWER | Power | ✓ | - | - | - | - |
CH_UP | Channel up | ✓ | - | - | - | - |
CH_DOWN | Channel down | ✓ | - | - | - | - |
A | A (Green) button | - | - | ✓ | - | - |
B | B (Red) button | - | - | ✓ | - | - |
X | X (Blue) button | - | - | ✓ | - | - |
Y | Y (Yellow) button | - | - | ✓ | - | - |
LEFT_TRIGGER | Left trigger | - | - | ✓ | - | - |
RIGHT_TRIGGER | Right trigger | - | - | ✓ | - | - |
LEFT_BUMPER | Left bumper | - | - | ✓ | - | - |
RIGHT_BUMPER | Right bumper | - | - | ✓ | - | - |
LEFT_THUMBSTICK_LEFT | Left thumbstick left | - | - | ✓ | - | - |
LEFT_THUMBSTICK_RIGHT | Left thumbstick right | - | - | ✓ | - | - |
LEFT_THUMBSTICK_UP | Left thumbstick up | - | - | ✓ | - | - |
LEFT_THUMBSTICK_DOWN | Left thumbstick down | - | - | ✓ | - | - |
LEFT_THUMBSTICK_BUTTON | Left thumbstick button | - | - | ✓ | - | - |
RIGHT_THUMBSTICK_RIGHT | Right thumbstick right | - | - | ✓ | - | - |
RIGHT_THUMBSTICK_LEFT | Right thumbstick left | - | - | ✓ | - | - |
RIGHT_THUMBSTICK_UP | Right thumbstick up | - | - | ✓ | - | - |
RIGHT_THUMBSTICK_DOWN | Right thumbstick down | - | - | ✓ | - | - |
RIGHT_THUMBSTICK_BUTTON | Right thumbstick button | - | - | ✓ | - | - |
DPAD_RIGHT | D-pad right | - | - | ✓ | - | - |
DPAD_LEFT | D-pad left | - | - | ✓ | - | - |
DPAD_UP | D-pad up | - | - | ✓ | - | - |
DPAD_DOWN | D-pad down | - | - | ✓ | - | - |
VIEW | View | - | - | ✓ | - | - |
HOME | Home | - | - | ✓ | ✓ | - |
SELECT | Select | - | - | - | ✓ | - |
REPLAY | Replay | - | - | - | - | ✓ |
Element properties¶
Element properties are used via suitest.PROP.*
, *
being a key code from
below. For example suitest.PROP.CLASS
.
Code | Property description | HTML-based | Android TV | Xbox One Native | tvOS | Roku |
---|---|---|---|---|---|---|
ACCESSIBILITY_IDENTIFIER | unique identifier for element in scripts using UI Automation interface | - | - | - | ✓ | - |
ALPHA | Transparency level from 0 to 1 | - | ✓ | - | ✓ | - |
AUTOMATION_ID | Uniquely identifies the element in UI automation tools | - | - | ✓ | - | - |
AUTOMATION_NAME | Name of an element used in UI automation tools | - | - | ✓ | - | - |
BAR_TINT_COLOR | color applied to the bar's background | - | - | - | ✓ | - |
BG_COLOR | Color applied to the element background | ✓ | ✓ | ✓ | ✓ | - |
BORDER_COLOR | Color applied to the border line of the element | ✓ | ✓ | ✓ | - | - |
BORDER_STYLE | Variant of the border line | ✓ | - | - | ✓ | - |
BORDER_WIDTH | Width of the border line | ✓ | - | ✓ | - | - |
CLASS | Class attribute | ✓ | - | - | - | - |
CONTENT_DESCRIPTION | Value for accessibility services | - | ✓ | - | - | - |
CONTENT_MODE | states how element's content layout changes when bounds change | - | - | - | ✓ | - |
FOCUS_MARGIN | Only if UseSystemFocusVisuals is enabled | - | - | ✓ | - | - |
FOCUS_PRIMARY_COLOR | Only if UseSystemFocusVisuals is enabled | - | - | ✓ | - | - |
FOCUS_PRIMARY_WIDTH | Only if UseSystemFocusVisuals is enabled | - | - | ✓ | - | - |
FOCUS_SECONDARY_COLOR | Only if UseSystemFocusVisuals is enabled | - | - | ✓ | - | - |
FOCUS_SECONDARY_WIDTH | Only if UseSystemFocusVisuals is enabled | - | - | ✓ | - | - |
FONT_FAMILY | Font of text | - | - | ✓ | ✓ | - |
FONT_NAME | name of the font name | - | - | - | ✓ | - |
FONT_SIZE | Size of text | - | - | ✓ | ✓ | - |
FONT_URI | URI of font | - | - | - | - | ✓ |
FONT_WEIGHT | Font weight of text | - | - | ✓ | - | - |
HAS_FOCUS | Does the element have focus | - | ✓ | - | - | - |
HAS_META_DATA | video property has metadata | - | - | - | ✓ | - |
HAS_NAV_MARKERS | video property has navigation markers groups | - | - | - | ✓ | - |
HEIGHT | Height of an element | ✓ | ✓ | ✓ | ✓ | ✓ |
HINT | Default text for editable text fields | - | ✓ | - | - | - |
HREF | if the element is a link the href attribute will hold the URL | ✓ | - | - | - | - |
ID | Id attribute of the element | ✓ | - | ✓ | - | ✓ |
IMAGE | URL of an image | ✓ | - | ✓ | - | ✓ |
IMAGE_HASH | Base64 string of the image converted to MD5 hash | - | - | ✓ | ✓ | - |
IMAGE_LOAD_STATE | current status of the image state | ✓ | - | - | - | - |
IS_CHECKED | If the element is in a checked state | - | ✓ | ✓ | - | - |
IS_CLICKABLE | If the element is clickable (reacts to click events) | - | ✓ | - | - | - |
IS_COMPLETELY_DISPLAYED | If the complete view width and height is visible | - | ✓ | - | - | - |
IS_ENABLED | If the element is in an enabled state | - | ✓ | ✓ | ✓ | - |
IS_FOCUSABLE | If the element is able to change to a focus state | - | ✓ | - | - | - |
IS_FOCUSED | is the element currently focused | - | - | - | ✓ | - |
IS_OPAQUE | is the element currently opaque | - | - | - | ✓ | - |
IS_SELECTED | If the element is currently in the selected state | - | ✓ | ✓ | - | - |
IS_TOUCHABLE | If the element has a touchable area | - | ✓ | - | - | - |
LEFT | relative horizontal position to the parent element (in pixels) | ✓ | ✓ | ✓ | ✓ | ✓ |
LEFT_ABSOLUTE | element's left coordinate according to window origin | - | - | ✓ | ✓ | - |
MARGIN | Value of the margin space around the element | - | - | ✓ | - | - |
NAME | Name given to the element | - | - | ✓ | ✓ | - |
NUMBER_OF_SEGMENTS | the number of segments in Segmented Control | - | - | - | ✓ | - |
OPACITY | Opacity of the element | ✓ | - | ✓ | - | ✓ |
PACKAGE_NAME | Name-space of the view | - | ✓ | - | - | - |
PADDING | Value of the element's padding in all directions | - | ✓ | ✓ | - | - |
PIVOT_X | The X coordinate around which the element is rotated | - | ✓ | - | - | - |
PIVOT_Y | The Y coordinate around which the element is rotated | - | ✓ | - | - | - |
PLACEHOLDER | string that is displayed when no text is in the input field | - | - | - | ✓ | - |
PROPOSAL_URL | video element that is proposed to be played next | - | - | - | ✓ | - |
SCALE_X | The X coordinate around which the element is scaled | - | ✓ | - | - | - |
SCALE_Y | The Y coordinate around which the element is scaled | - | ✓ | - | - | - |
SELECTED_IMAGE_TINT_COLOR | color applied to selected tab bar item | - | - | - | ✓ | - |
STATE | constant describing the state of the element | - | - | - | ✓ | - |
TAG | String representation of the elements tag | - | ✓ | - | - | - |
TAG_INT | non-unique identifier for view objects | - | - | - | ✓ | - |
TEXT_ALIGNMENT | alignment of text inside the element | - | - | - | ✓ | - |
TEXT_COLOR | Color of the text | ✓ | ✓ | ✓ | - | - |
TEXT_CONTENT | Plain text of an element | ✓ | ✓ | ✓ | - | ✓ |
TEXT_SIZE | Size of the elements text in pixels | - | ✓ | - | - | - |
TINT_COLOR | Color tint of the element | - | - | - | ✓ | - |
TOP | Relative vertical position to the parent element (in pixels) | ✓ | ✓ | ✓ | ✓ | ✓ |
TOP_ABSOLUTE | element's top coordinate according to the window origin | - | - | ✓ | ✓ | - |
TRANSLATION_X | The horizontal location of the element relative to its left position | - | ✓ | - | - | - |
TRANSLATION_Y | The vertical location of the element relative to its top position | - | ✓ | - | - | - |
URL | URL of WebView component | - | - | ✓ | - | - |
VIDEO_LENGTH | Total length of a video | ✓ | ✓ | ✓ | ✓ | ✓ |
VIDEO_POSITION | Current position of a video | ✓ | ✓ | ✓ | ✓ | ✓ |
VIDEO_STATE | Current state of a video | ✓ | ✓ | ✓ | ✓ | ✓ |
VIDEO_URL | URL of a video | ✓ | ✓ | ✓ | ✓ | ✓ |
VISIBILITY | If the element is visible on screen | - | ✓ | ✓ | - | ✓ |
WIDTH | Width of the element | ✓ | ✓ | ✓ | ✓ | ✓ |
Z_INDEX | Value of the CSS z-index property | ✓ | - | - | - | ✓ |
Property comparators¶
Code | Comparator description |
---|---|
EQUAL | = |
NOT_EQUAL | != |
APPROX | Approximately |
CONTAIN | Contains |
NOT_CONTAIN | Does not contain |
GREATER | > |
EQUAL_GREATER | >= |
LESSER | < |
EQUAL_LESSER | <= |
START | Starts with |
NOT_START | Does not start with |
END | Ends with |
NOT_END | Does not end with |
Element special values¶
Code | Special value description |
---|---|
REPO | Value for element property is taken from Element repository |
Video states¶
Video states can be found in suitest.VIDEO_STATE
.
Code | State description | HTML-Based | Android TV | Xbox One Native | Apple TV | Roku |
---|---|---|---|---|---|---|
STOPPED | Playback stopped | ✓ | - | ✓ | - | ✓ |
ERROR | Error occurred during video initialization or playback | ✓ | ✓ | ✓ | ✓ | ✓ |
PLAYING | Playing | ✓ | ✓ | ✓ | ✓ | ✓ |
PAUSED | Paused | ✓ | ✓ | ✓ | ✓ | ✓ |
CONNECTING | Player is trying to connect to video source | ✓ | - | ✓ | - | ✓ |
BUFFERING | Player is downloading video source over network to create a buffer | ✓ | ✓ | - | ✓ | - |
FINISHED | Playback has finished, video source was played till the end | ✓ | - | ✓ | ✓ | ✓ |
IDLE | Video is in pre-preparing phase | - | ✓ | - | - | - |
PREPARING | Video is being prepared for playback | - | ✓ | - | - | - |
PREPARED | Video is prepared for playback | - | ✓ | - | - | - |
PLAYBACK_COMPLETED | Playback has finished, video source was played till the end | - | ✓ | - | - | - |
UNKNOWN | State cannot be obtained | - | ✓ | - | - | - |
REVERSING | Video is being played in reverse | - | - | - | ✓ | - |
Element visibility states¶
Element visibility states can be found in suitest.VISIBILITY_STATE
.
Code | State description | Android TV | Xbox One Native |
---|---|---|---|
VISIBLE | Element is visible | ✓ | ✓ |
INVISIBLE | Element is not visible | ✓ | ✓ |
GONE | Element is not visible | ✓ | ✓ |
COLLAPSED | Element is not visible | ✓ | ✓ |
Session types¶
Code | Session name |
---|---|
AUTOMATED | Automated mode |
INTERACTIVE | Interactive mode |
ACCESS_TOKEN | Access token |
Network properties¶
Network properties can be found in suitest.NETWORK_PROP
.
Code |
---|
BODY |
METHOD |
STATUS |
Network methods¶
Network methods can be found in suitest.NETWORK_METHOD
.
Code |
---|
GET |
POST |
PUT |
HEAD |
DELETE |
CONNECT |
OPTIONS |
TRACE |
PATCH |
Border style¶
Border style properties can be found in suitest.BORDER_STYLE
.
Code | HTML-Based | Apple TV |
---|---|---|
BEZEL | - | ✓ |
RECTANGLE | - | ✓ |
NONE | ✓ | ✓ |
ROUNDED | - | ✓ |
HIDDEN | ✓ | - |
DOTTED | ✓ | - |
DASHED | ✓ | - |
SOLID | ✓ | - |
DOUBLE | ✓ | - |
GROOVE | ✓ | - |
RIDGE | ✓ | - |
INSET | ✓ | - |
OUTSET | ✓ | - |
INITIAL | ✓ | - |
INHERIT | ✓ | - |
Content Mode (Apple TV)¶
Content modes can be found in suitest.CONTENT_MODE
.
Code |
---|
SCALE_TO_FILL |
SCALE_ASPECT_FIT |
SCALE_ASPECT_FILL |
REDRAW |
CENTER |
TOP |
BOTTOM |
BOTTOM_LEFT |
BOTTOM_RIGHT |
LEFT |
RIGHT |
TOP_LEFT |
TOP_RIGHT |
State (Apple TV)¶
States can be found in suitest.ELEMENT_STATE
. Check the Apple Developer guide for Focus and Selection for some visual examples.
Code |
---|
SELECTED |
HIGHLIGHTED |
DISABLED |
NORMAL |
APPLICATION |
FOCUSED |
RESERVED |
Text Alignment (Apple TV)¶
Text alignment states can be found in suitest.TEXT_ALIGNMENT
.
Code |
---|
CENTER |
JUSTIFIED |
LEFT |
RIGHT |
NATURAL |