/* * Copyright 2000-2016 Vaadin Ltd. * * 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. */ package com.vaadin.testbench.elements; import java.util.Arrays; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.NoSuchElementException; import org.openqa.selenium.WebElement; import com.vaadin.testbench.TestBenchElement; import com.vaadin.testbench.elementsbase.ServerClass; /** * Testbench Element API for {@code Tree}. *
* Note: This TreeElement is for the Vaadin 8 version of Tree.
* Use {@link com.vaadin.v7.testbench.elements.TreeElement} for the
* compatibility version.
*
* @author Vaadin Ltd.
* @since 8.1
*/
@ServerClass("com.vaadin.ui.Tree")
public class TreeElement extends AbstractComponentElement {
/**
* Expands the row at the given index in the tree.
*
* @param index
* 0-based row index to expand
*/
public void expand(int index) {
if (isExpanded(index)) {
throw new IllegalStateException(
"The element at row " + index + " was expanded already");
}
getExpandElement(index).click();
}
/**
* Returns whether the row at the given index is expanded or not.
*
* @param index
* 0-based row index
* @return {@code true} if expanded, {@code false} if collapsed
*/
public boolean isExpanded(int index) {
WebElement expandElement = getExpandElement(index);
List