Open topic with navigation

# DeviceTO

# Mobile. DeviceTO

DeviceTO

# Constructor

## new DeviceTO()

Device orientation settings.

### Members

## displayName

Returns the object display name defined in the Application Model.

### Methods

## $(description) → {*}

Creates a child test object of this test object. This operation does not cause LeanFT to search for the object in the AUT. LeanFT interacts with the application only when a step runs that performs an operation on the AUT object.

##### Parameters:

Name | Type | Description
--- | --- | ---
`description` | Description | The description of the test object. Can be a full test object description or a string. If a string is provided, it is interpreted as a CSS selector with a default test object type of WebElement.

##### Returns:

the new child test object with the provided description.

Type
  *

## $$(description, dontFilterByTypeopt ) → {Promise.<Array.<TestObject>>}

Returns all child objects of this object that match the supplied test object description.

##### Parameters:

Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`description` |  |  |  | A description object that defines the test object type and the set of properties and values that should be common to all objects that are returned.
`dontFilterByType` | boolean | <optional> | false | Set this parameter to true to avoid limiting the returned objects to a specific test object type.

##### Returns:

a promise that is fulfilled with an array of test objects that match the supplied description.

Type
  Promise.<Array.<TestObject>>

## back() → {Promise.<void>}

Presses the device's Back button (Android only).

##### Returns:

a promise that is fulfilled when the Back button is pressed.

Type
  Promise.<void>

## closeViewer() → {Promise.<void>}

Closes the RDP window for the device (if open).
Note: Calling this method does not release the device if it is locked.

##### Returns:

a promise that is fulfilled when the RDP window for the device is closed.

Type
  Promise.<void>

## description() → {*}

Returns the description for this test object. The test object must be obtained using the $ method, otherwise, this method returns null.

##### Returns:

the description for this test object.

Type
  *

## exists(timeoutopt ) → {Promise.<boolean>}

Checks whether this object exists in the AUT.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`timeout` | number | <optional> | The time (in seconds) to wait for this object before returning a result of true or false. By default, uses the object synchronization timeout defined in the runtime engine settings.

##### Returns:

a promise that is fulfilled with a boolean indicating whether the object exists.

Type
  Promise.<boolean>

## getLogs() → {Promise.<string>}

Returns the device logs collected since the device was locked.

##### Returns:

a promise that is fulfilled with the device logs collected since the device was locked.

Type
  Promise.<string>

## getTextLocations(text, rectangleopt ) → {Promise.<Object>}

Returns all rectangular areas containing the specified text within this object.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`text` | string |  | The text to search for in the test object.
`rectangle` | Object | <optional> | The rectangular area in the test object to search for the text.

##### Returns:

a promise that is fulfilled with an array of rectangles containing all rectangular areas containing the specified text within this object.

Type
  Promise.<Object>

## getVisibleText(rectangleopt ) → {Promise.<string>}

Returns all visible text from this object.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`rectangle` | Object | <optional> | The rectangular area in the test object to return the text from.

##### Returns:

a promise that is fulfilled with all the visible text from this object.

Type
  Promise.<string>

## getVitals() → {Promise.<string>}

Returns an accumulation of the device vitals from the time the device was locked, in one second intervals.

##### Returns:

a promise that is fulfilled with the device vitals collected since the device was locked.

Type
  Promise.<string>

## highlight() → {Promise.<void>}

Highlights this object in the AUT.
Remark: This may be useful when debugging a test.

##### Returns:

a promise that is fulfilled when the highlighting operation ends.

Type
  Promise.<void>

## highlightMatches(description, dontFilterByTypeopt ) → {Promise.<number>}

Highlights all children that match the supplied test object description.

##### Parameters:

Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`description` |  |  |  | A description object that defines the test object type and the set of properties and values that should be common to all objects that are highlighted.
`dontFilterByType` | boolean | <optional> | false | Set this parameter to true to avoid limiting the highlighted objects to a specific test object type.

##### Returns:

a promise that is fulfilled with the number of matches that are found and highlighted.

Type
  Promise.<number>

## home() → {Promise.<void>}

Presses the device's Home button (Android only).

##### Returns:

a promise that is fulfilled when the Home button is pressed.

Type
  Promise.<void>

## id() → {Promise.<string>}

Returns the ID of the device in the Mobile Center lab.

##### Returns:

a promise that is fulfilled with the ID of the device in the Mobile Center lab.

Type
  Promise.<string>

## isViewerOpen() → {Promise.<boolean>}

Checks if the RDP window for the device is open.

##### Returns:

a promise that is fulfilled with an indication of whether an RDP window for the device is open.

Type
  Promise.<boolean>

## manufacturer() → {Promise.<string>}

Returns the manufacturer of the device.

##### Returns:

a promise that is fulfilled with the manufacturer of the device.

Type
  Promise.<string>

## menu() → {Promise.<void>}

Presses the device's Menu button (Android only).

##### Returns:

a promise that is fulfilled when the Menu button is pressed.

Type
  Promise.<void>

## model() → {Promise.<string>}

Returns the model name of the device.

##### Returns:

a promise that is fulfilled with the model name of the device.

Type
  Promise.<string>

## name() → {Promise.<string>}

Returns the name of the device as defined in Mobile Center.

##### Returns:

a promise that is fulfilled with the name of the device as defined in Mobile Center.

Type
  Promise.<string>

## networkVirtualizationEnd() → {Promise.<void>}

Stops the Network Virtualization service.

##### Returns:

a promise that is fulfilled when the Network Virtualization service is stopped.

Type
  Promise.<void>

## networkVirtualizationStart(profile) → {Promise.<void>}

Starts the Network Virtualization service using the specified network profile.

##### Parameters:

Name | Type | Description
--- | --- | ---
`profile` | string | The name of the profile containing the conditions that you want to apply to the virtualized network. The profile must be set up in Network Virtualization.

##### Returns:

a promise that is fulfilled when the Network Virtualization service is started.

Type
  Promise.<void>

## openViewer() → {Promise.<void>}

Opens an RDP window for the device.
Note: If a window for the device is open already, another window will not be opened.

##### Returns:

a promise that is fulfilled when an RDP window for the device is opened.

Type
  Promise.<void>

## osType() → {Promise.<string>}

Returns the operating system currently running on the device.

##### Returns:

a promise that is fulfilled with the operating system currently running on the device.

Type
  Promise.<string>

## osVersion() → {Promise.<string>}

Returns the version of the operating system currently running on the device.

##### Returns:

a promise that is fulfilled with the version of the operating system currently running on the device.

Type
  Promise.<string>

## parent() → {*}

Returns the parent test object of this test object. The child object must be obtained using the $ method, otherwise, this method returns null.

##### Returns:

the parent test object of this test object.

Type
  *

## recentApps() → {Promise.<void>}

Opens the list of recent applications (Android only).

##### Returns:

a promise that is fulfilled when the list of recent applications is opened.

Type
  Promise.<void>

## sendCustomKey(keyId, durationopt ) → {Promise.<void>}

Simulate pressing a custom device key.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`keyId` | string |  | The ID of the key as defined by the device manufacturer.
`duration` | number | <optional> | The time (in milliseconds) to keep the key pressed. The default is 0 (zero).

##### Returns:

a promise that is fulfilled when the sendCustomKey operation is performed.

Type
  Promise.<void>

## sendKey(key, durationopt ) → {Promise.<void>}

Simulates pressing a special key in the device keyboard, with the option to define the time to keep the key pressed.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`key` | Mobile.Device.Keys |  | The key to be pressed.
`duration` | number | <optional> | The time (in milliseconds) to keep the key pressed. The default is 0 (zero).

##### Returns:

a promise that is fulfilled when the sendKey operation is performed.

Type
  Promise.<void>

## sendString(text, intervalopt ) → {Promise.<void>}

Simulates entering text (a string) using the device keyboard, with the option to send each of the string characters in intervals of n milliseconds.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`text` | string |  | The text to send to the device.
`interval` | number | <optional> | The time (in milliseconds) to wait before injecting each subsequent character. The value must be between 200 and 3000, or 0 (default), otherwise an exception is thrown.

##### Returns:

a promise that is fulfilled when the sendString operation is performed.

Type
  Promise.<void>

## setOrientation(orientation) → {Promise.<void>}

Sets the device orientation.

##### Parameters:

Name | Type | Description
--- | --- | ---
`orientation` | Mobile.Device.DeviceOrientation | The orientation to set. You can use the DeviceOrientation object or just pass 'portrait' or 'landscape' as a string.

##### Returns:

a promise that is fulfilled when the device orientation is set.

Type
  Promise.<void>

## shake() → {Promise.<void>}

Performs a Shake gesture on the device (iOS only).

##### Returns:

a promise that is fulfilled when the Shake gesture is performed.

Type
  Promise.<void>

## simulateGPS(latitude, longitude) → {Promise.<void>}

Simulates a change in the device's GPS location (Android only).

##### Parameters:

Name | Type | Description
--- | --- | ---
`latitude` | number | The latitude coordinate of the location.
`longitude` | number | The longitude coordinate of the location.

##### Returns:

a promise that is fulfilled when the GPS location is changed.

Type
  Promise.<void>

## simulateIncomingCall(from, eventResponseArgsopt ) → {Promise.<void>}

Simulates an incoming call.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`from` | string |  | The caller ID of the incoming call.
`eventResponseArgs` | object | <optional> | The simulated user response to the incoming call that interrupts the flow of the application. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`timeInBackground` | number | <optional> | 10 | The time (in seconds) that the application remains in the background while the event is being handled.
`respondToEvent` | boolean | <optional> | false | Indicates whether there is a response to the simulated event. Default: false.

##### Returns:

a promise that is fulfilled when the call is simulated.

Type
  Promise.<void>

## simulateIncomingSMS(from, text, eventResponseArgsopt ) → {Promise.<void>}

Simulates an incoming SMS.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`from` | string |  | The caller ID of the incoming SMS message.
`text` | string |  | The text of the incoming SMS message.
`eventResponseArgs` | object | <optional> | The simulated user response to the incoming SMS that interrupts the flow of the application. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`timeInBackground` | number | <optional> | 10 | The time (in seconds) that the application remains in the background while the event is being handled.
`respondToEvent` | boolean | <optional> | false | Indicates whether there is a response to the simulated event. Default: false.

##### Returns:

a promise that is fulfilled when the incoming SMS is simulated.

Type
  Promise.<void>

## snapshot(optionsopt ) → {Promise.<string>}

Captures and returns a Base64 representation of this test object.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`options` | Object | <optional> | An options object that defines the image capture preferences. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`format` | string | <optional> | "png" | The format of the image. Possible values: png, bmp.

##### Returns:

a promise that is fulfilled with the Base64 string of the test object's image.

Type
  Promise.<string>

## source() → {Promise.<Mobile.DeviceSource>}

Returns the source of the device.

##### Returns:

a promise that is fulfilled with the source of the device.

Type
  Promise.<Mobile.DeviceSource>

## swipe(direction, startLocationopt ) → {Promise.<void>}

Swipes the device in the specified direction starting from the specified location.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`direction` | SwipeDirection |  | The direction of the swipe (the SwipeDirection object can be used).
`startLocation` | Location | <optional> | The coordinates from which to start the swipe. Default value: the leading edge of the element or device.

##### Returns:

a promise that is fulfilled when the swipe operation is performed.

Type
  Promise.<void>

## touch(x, y) → {Promise.<void>}

Touches the device at the specified coordinates (Android only).

##### Parameters:

Name | Type | Description
--- | --- | ---
`x` | number | The x coordinate to touch.
`y` | number | The y coordinate to touch.

##### Returns:

a promise that is fulfilled when the touch operation is performed.

Type
  Promise.<void>

## unlock() → {Promise.<void>}

Unlocks the device in Mobile Center if the device is not locked by another device object. This method also closes the RDP window.

##### Returns:

a promise that is fulfilled when the device is unlocked.

Type
  Promise.<void>

## uploadMedia(mediaInfo, mediaId, optionsopt ) → {Promise.<void>}

Upload the media object data to the device for camera or video simulation, with the option to save the file. The files are deleted when the device is released.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`mediaInfo` | Object |  | The MediaInfo of the media file to upload. ###### Properties
Name | Type | Description
--- | --- | ---
`Base64Data` | string | A base64 string representation of the media file (image or video).
`MimeType` | string | The mime type of the media file. Possible values: For BMP media type: "image/bmp" For GIF media type: "image/gif" For JPG media type: "image/jpeg" For PNG media type: "image/png" For TIF (iOS only) media type: "image/tiff" For MP4 media type: "video/mp4" For 3GP (Android only) media type: "video/3gpp" For MKV (Android only) media type: "video/x-matroska" For MOV (iOS only) media type: "video/quicktime" For M4V (iOS only) media type: "video/mp4"
`mediaId` | string |  | The unique ID of the uploaded media. The ID is used to start the simulation using Application.startCameraSimulationMode.
`options` | Object | <optional> | Upload options. ###### Properties
Name | Type | Attributes | Description
--- | --- | --- | ---
`saveToPicturesFolder` | boolean | <optional> | Boolean Indicates whether the uploaded media file is saved to the Pictures folder or not.

##### Returns:

a promise that is fulfilled when the uploadMedia operation is performed.

Type
  Promise.<void>

## uploadMediaUrl(mediaUrl, mediaId, optionsopt ) → {Promise.<void>}

Upload a media file to the device for camera or video simulation, with the option to save the file. The files are deleted when the device is released.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`mediaUrl` | string |  | The URL, including the extention, of the media file (image or video). Supported formats: JPG, GIF, PNG, BMP, TIF (iOS only), MP4, 3GP (Android only), MKV (Android only), MOV (iOS only), M4V (iOS only).
`mediaId` | string |  | The unique ID of the uploaded media. The ID is used to start the simulation using Application.startCameraSimulationModeWiredName.
`options` | Object | <optional> | Upload options. ###### Properties
Name | Type | Attributes | Description
--- | --- | --- | ---
`saveToPicturesFolder` | boolean | <optional> | Boolean indicating whether the uploaded media file is saved to the Pictures folder or not.

##### Returns:

a promise that is fulfilled when the uploadMediaUrl operation is performed.

Type
  Promise.<void>

## verifyImageExists(imageToFind, similarityopt ) → {Promise.<Object>}

Checks whether a snapshot of this object contains the supplied image.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`imageToFind` | string |  | A Base64 string representation of the image to look for within the test object's snapshot.
`similarity` | number | <optional> | The minimum similarity between the two images (as a percentage), above which the find is considered a match. Default = 100.

##### Returns:

a promise that is fulfilled with an object representing the point where the image was located, or null if it was not found.

Type
  Promise.<Object>

## verifyImageMatch(expectedImage, pixelToleranceopt , rgbToleranceopt ) → {Promise.<boolean>}

Checks whether a snapshot of this object and the supplied image are a match.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`expectedImage` | string |  | A Base64 string representation of the image to compare to the test object snapshot.
`pixelTolerance` | number | <optional> | The percentage of pixels that can differ between the two images, and still be considered a match. Default = 0.
`rgbTolerance` | number | <optional> | The percentage by which the RGB values of the pixels in the two images can differ, and still be considered a match. Default = 0.

##### Returns:

a promise that is fulfilled with a boolean representing the comparison result.

Type
  Promise.<boolean>

## verifyImageMatchWithMask(expectedImage, maskAreaImage, pixelToleranceopt , rgbToleranceopt ) → {Promise.<boolean>}

Checks whether a snapshot of this object and the supplied image are a match.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`expectedImage` | string |  | A Base64 string representation of the image to compare to the test object snapshot.
`maskAreaImage` | string |  | A Base64 string representation of the image mask area to use in the image comparison.
`pixelTolerance` | number | <optional> | The percentage of pixels that can differ between the two images, and still be considered a match. Default = 0.
`rgbTolerance` | number | <optional> | The percentage by which the RGB values of the pixels in the two images can differ, and still be considered a match. Default = 0.

##### Returns:

a promise that is fulfilled with a boolean representing the comparison result.

Type
  Promise.<boolean>

## waitUntilExists(timeoutopt ) → {Promise.<boolean>}

Waits until this test object exists or until the specified timeout elapses. This method is useful for synchronizing your test with your application.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`timeout` | number | <optional> | The time (in milliseconds) to wait for this object to exist. By default, uses the object synchronization timeout defined in the runtime engine settings.

##### Returns:

a promise that is fulfilled with a boolean indicating whether the object exists.

Type
  Promise.<boolean>