Open topic with navigation

# AgGridTO

Supported in LeanFT versions 14.51 and later.

## Web. AgGridTO

AgGridTO

## Constructor

## new AgGridTO()

A Web AgGrid containing a variable number of rows and columns.

### Members

## displayName

Returns the object display name defined in the Application Model.

### Methods

## $(selector, objTypeopt) → {*}

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 | Attributes | Default | Description
--- | --- | --- | --- | ---
`selector` | Description | string |  |  | 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.
`objType` | Description | <optional> | Web.Element() | The type of test object to use when supplying a CSS string for the selector.

##### Returns:

the new child test object with the provided description.

Type
  *

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

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

##### Parameters:

Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`selector` | Description | string |  |  | 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>>

## $x(xpath, childTypeopt) → {*}

Creates a child test object of this test object based on the specified xpath. 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 | Attributes | Default | Description
--- | --- | --- | --- | ---
`xpath` | string |  |  | The xpath that will be used as the description for the new child test object.
`childType` | Description | <optional> | Web.Element() | The test object type for the new child test object.

##### Returns:

the new child test object with the provided xpath as its description.

Type
  *

## absoluteLocation() → {Promise.<Point>}

Returns the object's absolute coordinates relative to the screen (in pixels), format: {x,y}.
Remark: 0,0 is always the top-left corner of the (primary) monitor.

##### Returns:

a promise that is fulfilled with the object's absolute coordinates.

Type
  Promise.<Point>

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

Returns this object's accessibilityName property.

##### Returns:

a promise that is fulfilled with this object's accessibilityName property.

Type
  Promise.<string>

## attributes() → {Promise.<object>}

Returns a copy of the attribute collection that is attached to this object. For example: 'id','class', etc.

##### Returns:

the object keys are the attribute names and the corresponding values are the attribute values.

Type
  Promise.<object>

## cells(rowopt, colopt) → {Promise.<(Array.<Array.<Web.TableCell>>|Array.<Web.TableCell>)>|Web.TableCell}

When row and col are both provided, returns a specific cell
When only a row is provided, returns a promise resolved with all the cells in a row
When no row is provided, returns a promise resolved with all the cells in the table.
Important Note:
When both row and col are provided, the resulted cell may be out of bounds and trying to use it will result in error.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`row` | number | <optional> | The row index.
`col` | number | <optional> | The column index in the row, specified by the row parameter.

##### Returns:

a specific cell when row and col are provided;
a promise resolved to all the cells in a row when only a row is provided;
a promise resolved with all cells in the table when no row is provided.

Type
  Promise.<(Array.<Array.<Web.TableCell>>|Array.<Web.TableCell>)> | Web.TableCell

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

Returns the object's CSS class.

##### Returns:

the object's CSS class.

Type
  Promise.<string>

## click(argsopt) → {Promise.<void>}

Clicks on this object using the definitions from the supplied args object. If you do not provide the args object, the click is performed in the center of the object using the left mouse button.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`args` | Object | <optional> | The arguments for the click operation. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`button` | MouseButton | <optional> | MouseButton.left | The mouse button to use for the click.
`anchor` | Position | <optional> | Position.center | The position within the object from which the offset is taken.
`offset` | Object | <optional> |  | The offset from the anchor position. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`x` | number | <optional> | 0 | The x-coordinate of the offset.
`y` | number | <optional> | 0 | The y-coordinate of the offset.

##### Returns:

a promise that is fulfilled when the click operation ends.

Type
  Promise.<void>

## columnHeaders() → {Promise.<Array.<string>>}

A collection of column headers.

##### Returns:

a promise that is fulfilled with the collection of column headers.

Type
  Promise.<Array.<string>>

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

Returns the path to this object in CSS format. For example: tr.BPTRow input.

##### Returns:

a promise that is fulfilled with the path to this object in CSS format.

Type
  Promise.<string>

## 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
  *

## doubleClick(webDoubleClickArgsopt) → {Promise.<void>}

Clicks this object twice according to the specified behavior.
Remark: If you are testing a Web or hybrid mobile application on a Mobile device, this method is equivalent to performing a DoubleTap gesture.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`webDoubleClickArgs` | Object | <optional> | Arguments that define additional behavior for double-click operations. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`location` | Location | <optional> |  | The location to perform the double-click.
`interval` | number | <optional> | 0.2 | The number of seconds between the first click and the second click.

##### Returns:

a promise that is fulfilled when the method is called.

Type
  Promise.<void>

## dragAndDropOn(target, dragOptionsopt) → {Promise.<void>}

Drags and drops a test object onto the specified target object according to the specified DragOptions behavior.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`target` | TestObject | Object |  | The target object on which this object is dropped.
`dragOptions` | Object | <optional> | The drag and drop behavior to apply. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`button` | MouseButton | <optional> | MouseButton.left | The mouse button used to drag the object.
`dragLocation` | Location | <optional> |  | The point on the source object where the drag operation begins.
`dropLocation` | Location | <optional> |  | The point on the target object where the drag and drop operation ends.

##### Returns:

a promise that is fulfilled when the drop operation ends.

Type
  Promise.<void>

## 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>

## findRow(cellText, column, startFromRowopt) → {Promise.<Array.<TableCell>>}

Finds the first row with the specified text in the specified column, starting from the specified row.

##### Parameters:

Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`cellText` | string |  |  | Text to find.
`column` | number | string |  |  | The 0-based column index or column header.
`startFromRow` | number | <optional> | 0 | The index from which to start the search.

##### Returns:

a promise that is fulfilled either with an array of cells for the requested row, or fulfilled with null if no match was found.

Type
  Promise.<Array.<TableCell>>

## findRowByTextMatch(textMatch, columnToSearch) → {Promise.<Array.<TableCell>>}

Finds the row with the specified text in the specified column, in cases where the text or columnHeader may appear more than once. Scrolls to the found row if one exists.
Usage examples:
// This example finds the 2nd occurrence of the text "Portuguese" in the 3rd column
var row = grid.findRowByTextMatch({ text: "Portuguese", occurrence: 1 }, { column: 2 } );
// This example finds the 3rd occurrence of the text "Portuguese" in the 2nd column with the header "Language"
var row = grid.findRowByTextMatch({ text: "Portuguese", occurrence: 2 }, { column: "Language", occurrence: 1} );

##### Parameters:

Name | Type | Description
--- | --- | ---
`textMatch` | object | Description of the text we are looking for, format: ###### Properties
Name | Type | Attributes | Description
--- | --- | --- | ---
`text` | string |  | The text to search for.
`occurrence` | number | <optional> | 0-based ordinal number of the text's occurrence.
`columnToSearch` | object | The column number or column header in which to search for the text, format: ###### Properties
Name | Type | Attributes | Description
--- | --- | --- | ---
`column` | string | number |  | 0-based column index or column's name
`occurrence` | number | <optional> | 0-based ordinal number of the column name's appearance. Used only if column header is specified, and the table has multiple columns with the same name.

##### Throws:

Error if the requested row cannot be found or error occurs during execution.

##### Returns:

a promise that is fulfilled with an array of cells for the requested row if one exists.

Type
  Promise.<Array.<TableCell>>

## fireEvent(event) → {Promise.<void>}

Triggers the specified event on this object.

##### Parameters:

Name | Type | Description
--- | --- | ---
`event` | Web.Event | Web.MouseEvent | The event object describing the event to trigger. The event can be any HTML DOM event. For details, see: http://www.w3schools.com/jsref/dom_obj_event.asp

##### Returns:

a promise that is fulfilled with the triggered event.

Type
  Promise.<void>

## getAttribute(attributeName) → {Promise.<string>}

Returns the value of the specified attribute.

##### Parameters:

Name | Type | Description
--- | --- | ---
`attributeName` | string | The attribute name of the value to retrieve.

##### Returns:

the value of the specified attribute; null if the attribute does not exist.

Type
  Promise.<string>

## getComputedStyle(stylePropertyName) → {Promise.<string>}

Returns the value of the specified style.

##### Parameters:

Name | Type | Description
--- | --- | ---
`stylePropertyName` | string | The style name of the value to retrieve.

##### Returns:

the value of the specified style. Null if the style does not exist.

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>

## 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>

## hoverTap(locationopt) → {Promise.<void>}

When hover is supported, places the pointer on this object. Otherwise, taps the object at the specified location. If 'location' is not provided, the tap is performed at the center of the object.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`location` | Location | <optional> | The arguments for the hover-tap operation.

##### Returns:

a promise that is fulfilled when the method is called.

Type
  Promise.<void>

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

Returns the object's HTML identifier.

##### Returns:

the object's HTML identifier.

Type
  Promise.<string>

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

Returns the HTML code contained between the object's start and end tags.

##### Returns:

the HTML code contained between the object's start and end tags.

Type
  Promise.<string>

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

Returns the text contained between the object's start and end tags.

##### Returns:

the text contained between the object's start and end tags.

Type
  Promise.<string>

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

Indicates whether the current element is visible.

##### Returns:

true if the current element is visible, otherwise false.

Type
  Promise.<boolean>

## location() → {Promise.<Point>}

Returns the object's coordinates relative to the parent window (in pixels), format: {x,y}.

##### Returns:

a promise that is fulfilled with the object's relative coordinates.

Type
  Promise.<Point>

## longPress(webLongPressArgsopt) → {Promise.<void>}

Presses and holds this object according to the specified behavior.
Remark: This method is not supported in Internet Explorer.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`webLongPressArgs` | Object | <optional> | Arguments object that defines the behavior of the longPress operation. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`duration` | number | <optional> | 0.25 | The number of seconds to continue pressing.
`location` | Location | <optional> |  | The location where the operation is performed.

##### Returns:

a promise that is fulfilled after pressing the center of the object or the specified location for the number of seconds defined by the user.

Type
  Promise.<void>

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

Returns the object's name property.

##### Returns:

the object's name property.

Type
  Promise.<string>

## nativeObject() → {Promise.<Object>}

Returns the native application object that is represented by this test object instance, enabling you to access the native properties and methods provided by that object.

##### Returns:

a promise that is fulfilled with the native application object that is represented by this test object instance.

Type
  Promise.<Object>

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

Returns the object's HTML code and its content.

##### Returns:

the object's HTML code and its content.

Type
  Promise.<string>

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

Returns the object's text.

##### Returns:

the object's text.

Type
  Promise.<string>

## pan(deltaXopt, deltaYopt, webPanArgsopt) → {Promise.<void>}

Performs a pan gesture on this object according to the specified distance parameters.
Remark: This method is not supported in Internet Explorer.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`deltaX` | number | <optional> | The distance moved on the x-axis.
`deltaY` | number | <optional> | The distance moved on the y-axis.
`webPanArgs` | Object | <optional> | Arguments object that defines the behavior of the pan operation. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`location` | Location | <optional> |  | The location at which to perform operation.
`duration` | number | <optional> | 0.5 | The number of seconds to perform the pan.

##### Returns:

a promise that is fulfilled after the pan has occurred.

Type
  Promise.<void>

## 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
  *

## pinch(scaleopt, pinchArgsopt) → {Promise.<void>}

Performs a pinch gesture on this object according to the scale or specified behavior.
Remark: This method is not supported in Internet Explorer.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`scale` | number | <optional> | The scale for the pinch gesture. This number is the ratio between the start distance and the end distance between the two touch points used for the pinch. For example, if you were to touch a screen with your fingers 6 cm apart, and pinch until your fingers were 3 cm apart, the scale would be 0.5.
`pinchArgs` | Object | <optional> | Arguments object that defines the behavior of the pinch operation. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`location` | Location | <optional> |  | The location at which to perform the operation.
`duration` | number | <optional> | 1 | The number of seconds to perform the pinch.

##### Returns:

a promise that is fulfilled after the pinch has occurred.

Type
  Promise.<void>

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

Returns this object's role property.

##### Returns:

a promise that is fulfilled with this object's role property.

Type
  Promise.<string>

## size() → {Promise.<Size>}

Returns the object's size (in pixels).

##### Returns:

a promise that is fulfilled with the object's size.

Type
  Promise.<Size>

## 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>

## styles() → {Promise.<object>}

Returns a copy of the style collection that is attached to this object.

##### Returns:

the object keys are the attribute names and the corresponding values are the attribute values.

Type
  Promise.<object>

## swipe(swipeDirectionopt, webSwipeArgsopt) → {Promise.<void>}

Swipes the object in the specified direction or according to the specified behavior.
Remark: This method is not supported in Internet Explorer.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`swipeDirection` | SwipeDirection | <optional> | The direction of the swipe.
`webSwipeArgs` | object | <optional> | Arguments object that defines the behavior of the swipe operation. ###### Properties
Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`location` | Location | <optional> |  | The location where the operation is performed.
`duration` | number | <optional> | 0.25 | The number of seconds to perform the swipe.
`distance` | number | <optional> | 200 | The distance (in pixels) to swipe.

##### Returns:

a promise that is fulfilled after the swipe has occurred.

Type
  Promise.<void>

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

Returns the object's HTML tag.

##### Returns:

the object's HTML tag.

Type
  Promise.<string>

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

Returns the element's title attribute.

##### Returns:

the element's title attribute.

Type
  Promise.<string>

## 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>

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

Waits until the test object becomes visible or the timeout elapses. This method is useful for synchronizing your test with your application.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`timeout` | number | <optional> | The length of time to wait (in milliseconds) for the test object to become visible.

##### Returns:

a promise fulfilled with true if test object becomes visible before the timeout is reached; otherwise, false.

Type
  Promise.<boolean>

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

Returns the path to this object in XPath format. For example: //TR[@id='LeanFT']/*\/INPUT

##### Returns:

a promise that is fulfilled with the path to this object in XPath format.

Type
  Promise.<string>