Here are the examples of the java api com.vaadin.testbench.TestBenchElement taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
87 Examples
19
Source : UpdatableModelPropertiesIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private WebElement getElement(String id) {
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
return template.$(TestBenchElement.clreplaced).id(id);
}
19
Source : TwoWayPolymerBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void initialModelValueIsPresentAndModelUpdatesNormally() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
WebElement input = template.$(TestBenchElement.clreplaced).id("input");
// The initial client-side value should be sent from the client to the
// model
waitUntil(driver -> "Value: foo".equals(getStatusMessage()));
// now make explicit updates from the client side
input.clear();
input.sendKeys("a");
replacedert.replacedertEquals("Value: a", getStatusMessage());
input.sendKeys("b");
replacedert.replacedertEquals("Value: ab", getStatusMessage());
// Reset the model value from the server-side
template.$(TestBenchElement.clreplaced).id("reset").click();
replacedert.replacedertEquals("Value:", getStatusMessage());
replacedert.replacedertEquals("", getValueProperty(input));
input.sendKeys("c");
replacedert.replacedertEquals("Value: c", getStatusMessage());
}
19
Source : TwoWayPolymerBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private String getStatusMessage() {
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
return template.$(TestBenchElement.clreplaced).id("status").getText();
}
19
Source : TemplateWithConnectedCallbacksIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void replacedertMessageIsWrittenFromServer() {
waitForElementPresent(By.tagName("template-with-connected-callbacks"));
TestBenchElement element = $("template-with-connected-callbacks").first();
TestBenchElement messageElement = element.$(TestBenchElement.clreplaced).id("connectedMessage");
replacedert.replacedertEquals("Connected (checked from server side)", messageElement.getText());
}
19
Source : TemplatesVisibilityIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void grandParentVisibility_descendantsAreBound() {
open();
TestBenchElement grandParent = $("js-grand-parent").first();
TestBenchElement subTemplate = grandParent.$("js-sub-template").first();
// Check child and grand child property values. They shouldn't be set
// since the elements are not bound
TestBenchElement subTemplateProp = subTemplate.$(TestBenchElement.clreplaced).id("prop");
TestBenchElement grandChild = subTemplate.$(TestBenchElement.clreplaced).id("js-grand-child");
WebElement grandChildFooProp = grandChild.$(TestBenchElement.clreplaced).id("foo-prop");
WebElement grandChildProp = replacedertInitialPropertyValues(subTemplateProp, grandChild, grandChildFooProp);
// make parent visible
findElement(By.id("grand-parent-visibility")).click();
// now all descendants should be bound and JS is executed for the
// grandchild
replacedertBound(subTemplateProp, grandChildFooProp, grandChildProp);
}
19
Source : TemplatesVisibilityIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void subTemplateVisibility_grandChildIsBound() {
open();
TestBenchElement grandParent = $("js-grand-parent").first();
TestBenchElement subTemplate = grandParent.$("js-sub-template").first();
// make sub template invisible
findElement(By.id("sub-template-visibility")).click();
// nothing has changed: parent is not bound -> descendants are still not
// bound
TestBenchElement subTemplateProp = subTemplate.$(TestBenchElement.clreplaced).id("prop");
TestBenchElement grandChild = subTemplate.$(TestBenchElement.clreplaced).id("js-grand-child");
WebElement grandChildFooProp = grandChild.$(TestBenchElement.clreplaced).id("foo-prop");
replacedertInitialPropertyValues(subTemplateProp, grandChild, grandChildFooProp);
// make parent visible
findElement(By.id("grand-parent-visibility")).click();
// sub template is invisible now, again: all properties have no values
WebElement grandChildProp = replacedertInitialPropertyValues(subTemplateProp, grandChild, grandChildFooProp);
// make sub template visible
findElement(By.id("sub-template-visibility")).click();
// now everything is bound
replacedertBound(subTemplateProp, grandChildFooProp, grandChildProp);
}
19
Source : TemplateMappingDetectorIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void replacedertMappedComponentsAreMarkedProperly(TestBenchElement container, boolean templateInTemplate) {
TestBenchElement mappedComponent = container.$(TestBenchElement.clreplaced).id("detector1");
replacedert.replacedertEquals("Template mapped: true", mappedComponent.getText());
TestBenchElement standaloneComponent = container.$(TestBenchElement.clreplaced).id("detector2");
replacedert.replacedertEquals("Template mapped: false", standaloneComponent.getText());
TestBenchElement standaloneComposite = container.$(TestBenchElement.clreplaced).id("detector3");
replacedert.replacedertEquals("Composite template mapped: false Template mapped: false", standaloneComposite.getText());
TestBenchElement theTemplateItself = container.$(TestBenchElement.clreplaced).id("detector4");
replacedert.replacedertEquals("The template itself: " + templateInTemplate, theTemplateItself.getText());
}
19
Source : TemplateMappingDetectorIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void composite_mappedComponentsAreMarkedreplaceduch() {
open();
TestBenchElement container = $(TestBenchElement.clreplaced).id("composite");
replacedertMappedComponentsAreMarkedProperly(container, false);
}
19
Source : TemplateMappingDetectorIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void templateInTemplate_mappedComponentsAreMarkedreplaceduch() {
open();
TestBenchElement parentTemplate = $("template-mapping-detector-parent").first();
TestBenchElement container = parentTemplate.$(TestBenchElement.clreplaced).id("detector");
replacedertMappedComponentsAreMarkedProperly(container, true);
}
19
Source : TemplateMappingDetectorIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void regularTemplate_mappedComponentsAreMarkedreplaceduch() {
open();
TestBenchElement container = $("template-mapping-detector").first();
replacedertMappedComponentsAreMarkedProperly(container, false);
}
19
Source : TemplateHasInjectedSubTemplateIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void injectedSubTemplate_injectedInstanceWorks() throws InterruptedException {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
TestBenchElement child = template.$(TestBenchElement.clreplaced).id("child");
TestBenchElement text = child.$(TestBenchElement.clreplaced).id("text");
replacedert.replacedertEquals("foo", text.getText());
template.$(TestBenchElement.clreplaced).id("button").click();
waitUntil(driver -> "bar".equals(text.getText()));
}
19
Source : PolymerPropertyChangeEventIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void propertyChangeEvent() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
template.$(TestBenchElement.clreplaced).id("input").sendKeys("foo");
List<WebElement> changeEvents = findElements(By.clreplacedName("change-event"));
replacedert.replacedertTrue("Expected property change event is not fired. " + "Element with expected old and new value is not found", changeEvents.stream().anyMatch(event -> "New property value: 'foo', old property value: 'fo'".equals(event.getText())));
}
19
Source : PolymerPropertiesIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void propertyAdd_propertyBecomesAvailable() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
template.$(TestBenchElement.clreplaced).id("set-property").click();
TestBenchElement name = template.$(TestBenchElement.clreplaced).id("name");
replacedert.replacedertEquals("foo", name.getText());
}
19
Source : OneWayPolymerBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void checkInitialState(TestBenchElement template) {
String messageDivText = template.$(TestBenchElement.clreplaced).id("messageDiv").getText();
String replacedleDivText = template.$(TestBenchElement.clreplaced).id("replacedleDiv").getText();
replacedert.replacedertEquals(OneWayPolymerBindingView.MESSAGE, messageDivText);
replacedert.replacedertEquals("", replacedleDivText);
}
19
Source : OneWayPolymerBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void checkStateAfterClick(TestBenchElement template) {
String changedMessageDivText = template.$(TestBenchElement.clreplaced).id("messageDiv").getText();
String replacedleDivText = template.$(TestBenchElement.clreplaced).id("replacedleDiv").getText();
replacedert.replacedertEquals(OneWayPolymerBindingView.NEW_MESSAGE, changedMessageDivText);
replacedert.replacedertEquals("", replacedleDivText);
}
19
Source : OneWayPolymerBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void checkTemplateModel(TestBenchElement template) {
replacedertTrue(template.$(TestBenchElement.clreplaced).attribute("id", "replacedleDivConditional").all().size() > 0);
replacedert.replacedertEquals(0, template.$(TestBenchElement.clreplaced).attribute("id", "nonExistingProperty").all().size());
}
19
Source : OneWayPolymerBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
// Numerous tests are carried out in the single test case, because it's
// expensive to launch numerous Chrome instances
@Test
public void initialModelValueIsPresentAndModelUpdatesNormally() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
checkInitialState(template);
checkTemplateModel(template);
template.$(TestBenchElement.clreplaced).id("changeModelValue").click();
checkStateAfterClick(template);
checkTemplateModel(template);
}
19
Source : LazyWidgetIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void lazyLoadedPolymerTemplateWorksAsElement() {
open();
// template is lazy loaded,
waitForElementVisible(By.id("template"));
// need some time to load
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
String input = "InputMaster";
replacedert.replacedertFalse("No greeting should be present before we press the button", isPresentInShadowRoot(template, By.id("greeting")));
template.$(TestBenchElement.clreplaced).id("input").sendKeys(input);
template.$(TestBenchElement.clreplaced).id("button").click();
replacedert.replacedertEquals("Greeting is different from expected", String.format(LazyWidgetView.GREETINGS_TEMPLATE, input), template.$(TestBenchElement.clreplaced).id("greeting").getText());
}
19
Source : HiddenTemplateIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void initiallyNotHiddenElementChangesItsVisibility() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
WebElement hidden = template.$(TestBenchElement.clreplaced).id("hidden");
hidden.click();
WebElement child = template.$(TestBenchElement.clreplaced).id("child");
replacedert.replacedertNull(child.getAttribute("hidden"));
WebElement visibility = template.$(TestBenchElement.clreplaced).id("visibility");
visibility.click();
replacedert.replacedertNotNull(child.getAttribute("hidden"));
visibility.click();
replacedert.replacedertNull(child.getAttribute("hidden"));
}
19
Source : HiddenTemplateIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void initiallyHiddenElementStaysHidden() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
WebElement child = template.$(TestBenchElement.clreplaced).id("child");
replacedert.replacedertNotNull(child.getAttribute("hidden"));
WebElement visibility = template.$(TestBenchElement.clreplaced).id("visibility");
visibility.click();
replacedert.replacedertNotNull(child.getAttribute("hidden"));
visibility.click();
replacedert.replacedertNotNull(child.getAttribute("hidden"));
}
19
Source : ExceptionsDuringPropertyUpdatesIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void exceptionInMapSyncDoesNotCauseInternalError() {
open();
TestBenchElement template = $("exceptions-property-update").first();
template.$("button").id("set-properties").click();
replacedertNoSystemErrors();
TestBenchElement msg = template.$("div").id("message");
replacedert.replacedertEquals("Name is updated to bar", msg.getText());
List<TestBenchElement> errors = template.$("div").attribute("clreplaced", "error").all();
Set<String> errorMsgs = errors.stream().map(TestBenchElement::getText).collect(Collectors.toSet());
replacedert.replacedertEquals(2, errorMsgs.size());
replacedert.replacedertTrue(errorMsgs.contains("An error occurred: java.lang.RuntimeException: Intentional exception in property sync handler for 'text'"));
replacedert.replacedertTrue(errorMsgs.contains("An error occurred: java.lang.IllegalStateException: Intentional exception in property sync handler for 'replacedle'"));
}
19
Source : EventHandlerIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void handleEventOnServer() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
template.$(TestBenchElement.clreplaced).id("handle").click();
replacedert.replacedertTrue("Unable to find server event handler invocation confirmation. " + "Looks like 'click' event handler has not been invoked on the server side", isElementPresent(By.id("event-handler-result")));
template.$(TestBenchElement.clreplaced).id("send").click();
TestBenchElement container = $(TestBenchElement.clreplaced).id("event-data");
List<TestBenchElement> divs = container.$("div").all();
replacedert.replacedertEquals("Unexpected 'button' event data in the received event handler parameter", "button: 0", divs.get(1).getText());
replacedert.replacedertEquals("Unexpected 'type' event data in the received event handler parameter", "type: click", divs.get(2).getText());
replacedert.replacedertEquals("Unexpected 'tag' event data in the received event handler parameter", "tag: button", divs.get(3).getText());
// Check event functionality for event with both client and server
// handler
template.$(TestBenchElement.clreplaced).id("overridden").click();
replacedert.replacedertTrue("Unable to find server event handler invocation confirmation.", isElementPresent(By.id("overridden-event-handler-result")));
replacedert.replacedertEquals("Received result wasn't updated by client!", "Overridden server event was invoked with result: ClientSide handler", findElement(By.id("overridden-event-handler-result")).getText());
}
19
Source : DomRepeatIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void checkThatIndicesAreCorrect() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
for (int i = 0; i < DomRepeatView.NUMBER_OF_EMPLOYEES; i++) {
template.$(TestBenchElement.clreplaced).id(DomRepeatView.TR_ID_PREFIX + i).click();
String eventIndex = template.$(TestBenchElement.clreplaced).id(DomRepeatView.EVENT_INDEX_ID).getText();
String repeatIndex = template.$(TestBenchElement.clreplaced).id(DomRepeatView.REPEAT_INDEX_ID).getText();
replacedert.replacedertEquals(eventIndex, repeatIndex);
replacedert.replacedertEquals(i, Integer.parseInt(repeatIndex));
}
}
19
Source : ConvertToBeanIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void convertToBean_valuesAreUpdated() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
template.$(TestBenchElement.clreplaced).id("day").sendKeys("2");
template.$(TestBenchElement.clreplaced).id("month").sendKeys("5");
template.$(TestBenchElement.clreplaced).id("year").sendKeys("2000");
template.$(TestBenchElement.clreplaced).id("click").click();
String text = template.$(TestBenchElement.clreplaced).id("msg").getText();
replacedert.replacedertEquals("02.05.2000", text);
}
19
Source : ModelListIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
public clreplaced ModelLisreplaced extends ChromeBrowserTest {
private TestBenchElement modelList;
@Before
public void init() {
open();
modelList = $("model-list").first();
}
@Test
public void clickOnOldItems_itemsAreUpdated() {
DivElement repeat1 = findRepeatByID("repeat-1");
DivElement repeat2 = findRepeatByID("repeat-2");
DivElement repeat3 = findRepeatByID("repeat-3");
DivElement repeat4 = findRepeatByID("repeat-4");
replacedertClickedStates();
repeat1.findElements(By.tagName("div")).get(0).click();
replacedertClickedStates(0);
repeat2.findElements(By.tagName("div")).get(0).click();
replacedertClickedStates(0, 2);
repeat3.findElements(By.tagName("div")).get(0).click();
replacedertClickedStates(0, 2, 4);
repeat3.findElements(By.tagName("div")).get(2).click();
replacedertClickedStates(0, 2, 4, 6);
repeat4.findElements(By.tagName("div")).get(0).click();
replacedertClickedStates(0, 2, 4, 6, 8);
findRepeatByID("item-with-item-div").click();
replacedertClickedStates(0, 2, 4, 6, 8, 10);
}
@Test
public void clickOnAddedItems_itemsAreUpdated() {
DivElement repeat1 = findRepeatByID("repeat-1");
DivElement repeat2 = findRepeatByID("repeat-2");
DivElement repeat3 = findRepeatByID("repeat-3");
DivElement repeat4 = findRepeatByID("repeat-4");
replacedertClickedStates();
repeat1.findElements(By.tagName("div")).get(1).click();
replacedertClickedStates(1);
repeat2.findElements(By.tagName("div")).get(1).click();
replacedertClickedStates(1, 3);
repeat3.findElements(By.tagName("div")).get(1).click();
replacedertClickedStates(1, 3, 5);
repeat3.findElements(By.tagName("div")).get(3).click();
replacedertClickedStates(1, 3, 5, 7);
repeat4.findElements(By.tagName("div")).get(1).click();
replacedertClickedStates(1, 3, 5, 7, 9);
}
@Test
public void setNullValues_itemsAreUpdated() {
DivElement repeat1 = findRepeatByID("repeat-1");
DivElement repeat2 = findRepeatByID("repeat-2");
DivElement repeat3 = findRepeatByID("repeat-3");
DivElement repeat4 = findRepeatByID("repeat-4");
replacedertClickedStates();
modelList.$(NativeButtonElement.clreplaced).id("set-null").click();
List<WebElement> repeated1 = repeat1.findElements(By.tagName("div"));
List<WebElement> repeated2 = repeat2.findElements(By.tagName("div"));
List<WebElement> repeated3 = repeat3.findElements(By.tagName("div"));
List<WebElement> repeated4 = repeat4.findElements(By.tagName("div"));
replacedert.replacedertEquals("false", repeated1.get(0).getText());
replacedert.replacedertEquals("false", repeated1.get(1).getText());
replacedert.replacedertEquals("false", repeated2.get(0).getText());
replacedert.replacedertEquals("false", repeated2.get(1).getText());
replacedert.replacedertEquals("false", repeated3.get(0).getText());
replacedert.replacedertEquals("false", repeated3.get(1).getText());
replacedert.replacedertEquals("false", repeated4.get(0).getText());
replacedert.replacedertEquals("false", repeated4.get(1).getText());
}
private void replacedertClickedStates(int... clicked) {
DivElement repeat1 = findRepeatByID("repeat-1");
DivElement repeat2 = findRepeatByID("repeat-2");
DivElement repeat3 = findRepeatByID("repeat-3");
DivElement repeat4 = findRepeatByID("repeat-4");
List<DivElement> divs = new ArrayList<>();
divs.addAll(repeat1.$(DivElement.clreplaced).all());
divs.addAll(repeat2.$(DivElement.clreplaced).all());
divs.addAll(repeat3.$(DivElement.clreplaced).all());
divs.addAll(repeat4.$(DivElement.clreplaced).all());
divs.add(findRepeatByID("item-with-item-div"));
for (int i = 0; i < divs.size(); i++) {
int index = i;
boolean clickedState = IntStream.of(clicked).anyMatch(x -> x == index);
replacedert.replacedertThat(divs.get(index).getText(), CoreMatchers.startsWith(String.valueOf(clickedState)));
}
}
private DivElement findRepeatByID(String id) {
return modelList.$(DivElement.clreplaced).id(id);
}
}
19
Source : ListInsideListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void checkAllElementsUpdated(TestBenchElement template, int initialSize) {
template.$(TestBenchElement.clreplaced).id("updateAllElements").click();
List<TestBenchElement> msgs = template.$(TestBenchElement.clreplaced).attribute("clreplaced", "submsg").all();
replacedert.replacedertEquals("Wrong amount of nested messages", initialSize, msgs.size());
msgs.forEach(msg -> replacedert.replacedertEquals("Message was not updated", ListInsideListBindingView.UPDATED_TEXT, msg.getText()));
}
19
Source : ListInsideListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void listDataBinding() {
int initialSize = 4;
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
checkMessagesRemoval(template, initialSize);
template.$(TestBenchElement.clreplaced).id("reset").click();
checkAllElementsUpdated(template, initialSize);
}
19
Source : ListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private List<String> getMessages(TestBenchElement template) {
return template.$(TestBenchElement.clreplaced).attribute("clreplaced", "msg").all().stream().map(WebElement::getText).collect(Collectors.toList());
}
19
Source : ListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void resetState(TestBenchElement template) {
template.$(TestBenchElement.clreplaced).id("reset").click();
replacedert.replacedertEquals(ListBindingView.RESET_STATE, getMessages(template));
}
19
Source : ListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void listDataBinding() {
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
checkInitialState(template);
checkModelItemWorks(template);
// Before running those methods list is set to ["1", "2", "3"]
// see (ListBindingView.INITIAL_STATE)
replacedertMethodWorksCorrectly("addElement", template, "1", "2", "3", "4");
replacedertMethodWorksCorrectly("addElementByIndex", template, "4", "1", "2", "3");
replacedertMethodWorksCorrectly("addNumerousElements", template, "1", "2", "3", "4", "5");
replacedertMethodWorksCorrectly("addNumerousElementsByIndex", template, "4", "5", "1", "2", "3");
replacedertMethodWorksCorrectly("clearList", template);
replacedertMethodWorksCorrectly("removeSecondElementByIndex", template, "1", "3");
replacedertMethodWorksCorrectly("removeFirstElementWithIterator", template, "2", "3");
replacedertMethodWorksCorrectly("swapFirstAndSecond", template, "2", "1", "3");
replacedertMethodWorksCorrectly("sortDescending", template, "3", "2", "1");
replacedertMethodWorksCorrectly("setInitialStateToEachMessage", template, ListBindingView.INITIAL_STATE, ListBindingView.INITIAL_STATE, ListBindingView.INITIAL_STATE);
}
19
Source : ListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void checkModelItemWorks(TestBenchElement template) {
resetState(template);
List<TestBenchElement> msgs = template.$(TestBenchElement.clreplaced).attribute("clreplaced", "msg").all();
// Click b message
msgs.get(1).click();
// replacedert that the message was gotten correctly on the server side
replacedert.replacedertEquals("Couldn't validate element click selection.", template.$(TestBenchElement.clreplaced).id("selection").getText(), "Clicked message: " + msgs.get(1).getText());
}
19
Source : ListBindingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void replacedertMethodWorksCorrectly(String handlerName, TestBenchElement template, String... expectedMessages) {
resetState(template);
template.$(TestBenchElement.clreplaced).id(handlerName).click();
replacedert.replacedertEquals(Arrays.asList(expectedMessages), getMessages(template));
}
19
Source : ClearListIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void checkThatListCanBeClearedWithModelHavingNoDefaultConstructor() {
checkThatModelHasNoDefaultConstructor();
open();
TestBenchElement template = $(TestBenchElement.clreplaced).id("template");
List<String> initialMessages = getMessages(template);
replacedert.replacedertEquals("Initial page does not contain expected messages", Arrays.asList("1", "2"), initialMessages);
template.$(TestBenchElement.clreplaced).id("clearList").click();
replacedert.replacedertTrue("Page should not contain elements after we've cleared them", getMessages(template).isEmpty());
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
/**
* Tests for validating the {@code removeAll()} feature, that should clear all
* the server nodes and also the client nodes that the server doesn't know
* about.
*
* @author Vaadin Ltd
* @since 1.0.
*/
public clreplaced ClearNodeChildrenIT extends ChromeBrowserTest {
private TestBenchElement root;
private TestBenchElement message;
@Before
public void init() {
open();
waitForElementPresent(By.id("root"));
root = $(TestBenchElement.clreplaced).id("root");
message = root.$(TestBenchElement.clreplaced).id("message");
}
@Test
public void clearContainerWithClientSideNodes_allNodesAreRemoved() {
processContainerWithClientSideNodes_allNodesAreRemoved("clearContainer1", "Div 'containerWithElementChildren' cleared.", "");
}
@Test
public void setTextToContainerWithClientSideNodes_allNodesAreRemoved() {
processContainerWithClientSideNodes_allNodesAreRemoved("setTextToContainer1", "Div 'containerWithElementChildren' text set to 'Hello World'.", "Hello World");
}
private void processContainerWithClientSideNodes_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
String oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
@Test
public void addTextNode_clearContainerWithClientSideNodes_allNodesAreRemoved() {
addTextNode_processContainerWithClientSideNodes_allNodesAreRemoved("clearContainer1", "Div 'containerWithElementChildren' cleared.", "");
}
@Test
public void addTextNode_setTextToContainerWithClientSideNodes_allNodesAreRemoved() {
addTextNode_processContainerWithClientSideNodes_allNodesAreRemoved("setTextToContainer1", "Div 'containerWithElementChildren' text set to 'Hello World'.", "Hello World");
}
private void addTextNode_processContainerWithClientSideNodes_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement addTextNode = root.$(TestBenchElement.clreplaced).id("addTextNodeToContainer1");
String oldTtext = message.getText();
addTextNode.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Added 'Text node' to div with id 'containerWithElementChildren'.");
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
@Test
public void clearContainerWithClientAndServerSideNodes_allNodesAreRemoved_serverNodesAreDetached() {
processContainerWithClientAndServerSideNodes_allNodesAreRemoved_serverNodesAreDetached("clearContainer1", "Div 'Server div 1' detached.\nDiv 'containerWithElementChildren' cleared.", "");
}
@Test
public void setTextToContainerWithClientAndServerSideNodes_allNodesAreRemoved_serverNodesAreDetached() {
processContainerWithClientAndServerSideNodes_allNodesAreRemoved_serverNodesAreDetached("setTextToContainer1", "Div 'Server div 1' detached.\nDiv 'containerWithElementChildren' text set to 'Hello World'.", "Hello World");
}
private void processContainerWithClientAndServerSideNodes_allNodesAreRemoved_serverNodesAreDetached(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addChildToContainer1");
String oldTtext = message.getText();
add.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(3, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
@Test
public void clearContainerWithTextNodes_allNodesAreRemoved() {
processContainerWithTextNodes_allNodesAreRemoved("clearContainer2", "Div 'containerWithMixedChildren' cleared.", "");
}
@Test
public void setTextToContainerWithTextNodes_allNodesAreRemoved() {
processContainerWithTextNodes_allNodesAreRemoved("setTextToContainer2", "Div 'containerWithMixedChildren' text set to 'Hello World'.", "Hello World");
}
private void processContainerWithTextNodes_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithMixedChildren");
replacedert.replacedertThat(container.getText(), CoreMatchers.allOf(CoreMatchers.containsString("Some text 1"), CoreMatchers.containsString("Some text 2"), CoreMatchers.containsString("Some text 3")));
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
String oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
@Test
public void addClientSideChildren_clearContainer_allNodesAreRemoved() {
addClientSideChildren_processContainer_allNodesAreRemoved("clearContainer3", "Div 'containerWithClientSideChildren' cleared.", "");
}
@Test
public void addClientSideChildren_setTextToContainer_allNodesAreRemoved() {
addClientSideChildren_processContainer_allNodesAreRemoved("setTextToContainer3", "Div 'containerWithClientSideChildren' text set to 'Hello World'.", "Hello World");
}
private void addClientSideChildren_processContainer_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithClientSideChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addClientSideChild");
add.click();
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(1, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
String oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
@Test
public void addClienAndServertSideChildren_clearContainer_allNodesAreRemoved_serverNodesAreDetached() {
addClienAndServertSideChildren_processContainer_allNodesAreRemoved_serverNodesAreDetached("clearContainer3", "Div 'Server div 1' detached.\nDiv 'containerWithClientSideChildren' cleared.", "");
}
@Test
public void addClienAndServertSideChildren_setTextToContainer_allNodesAreRemoved_serverNodesAreDetached() {
addClienAndServertSideChildren_processContainer_allNodesAreRemoved_serverNodesAreDetached("setTextToContainer3", "Div 'Server div 1' detached.\nDiv 'containerWithClientSideChildren' text set to 'Hello World'.", "Hello World");
}
private void addClienAndServertSideChildren_processContainer_allNodesAreRemoved_serverNodesAreDetached(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithClientSideChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement addClientNode = root.$(TestBenchElement.clreplaced).id("addClientSideChild");
addClientNode.click();
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(1, divs.size());
TestBenchElement addServerNode = root.$(TestBenchElement.clreplaced).id("addChildToContainer3");
String oldTtext = message.getText();
addServerNode.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
@Test
public void addNodeToSlot_clearContainer_allNodesAreRemoved_serverNodesAreDetached() {
addNodeToSlot_processContainer_allNodesAreRemoved_serverNodesAreDetached("clear", "Div 'Server div 1' detached.\nDiv 'root' cleared.", "");
}
@Test
public void addNodeToSlot_setTextToContainer_allNodesAreRemoved_serverNodesAreDetached() {
addNodeToSlot_processContainer_allNodesAreRemoved_serverNodesAreDetached("setText", "Div 'Server div 1' detached.\nDiv 'root' text set to 'Hello World'.", "Hello World");
}
private void addNodeToSlot_processContainer_allNodesAreRemoved_serverNodesAreDetached(String buttonToClick, String expectedMessage, String expectedInnerText) {
List<WebElement> divs = root.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addChildToSlot");
String oldTtext = message.getText();
add.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = root.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, root.getAttribute("innerText"));
}
@Test
public void addNodeToNestedContainer_clearParentContainer_allNodesAreRemoved() {
addNodeToNestedContainer_processParentContainer_allNodesAreRemoved("clearContainer4", "Div 'containerWithContainer' cleared.", "");
}
@Test
public void addNodeToNestedContainer_setTextToParentContainer_allNodesAreRemoved() {
addNodeToNestedContainer_processParentContainer_allNodesAreRemoved("setTextToContainer4", "Div 'containerWithContainer' text set to 'Hello World'.", "Hello World");
}
private void addNodeToNestedContainer_processParentContainer_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("nestedContainer");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addChildToNestedContainer");
String oldTtext = message.getText();
add.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(1, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
/*
* Note that in this setup, the server-side components are not detached.
*/
replacedertMessageEndsWith(expectedMessage);
container = root.$(TestBenchElement.clreplaced).id("containerWithContainer");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getText());
}
private void replacedertMessageEndsWith(String text) {
replacedert.replacedertThat(message.getText(), CoreMatchers.endsWith(text));
}
private void waitForMessageToChange(String oldText) {
waitUntilNot(driver -> message.getText().equals(oldText));
}
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void addClienAndServertSideChildren_processContainer_allNodesAreRemoved_serverNodesAreDetached(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithClientSideChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement addClientNode = root.$(TestBenchElement.clreplaced).id("addClientSideChild");
addClientNode.click();
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(1, divs.size());
TestBenchElement addServerNode = root.$(TestBenchElement.clreplaced).id("addChildToContainer3");
String oldTtext = message.getText();
addServerNode.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void addTextNode_processContainerWithClientSideNodes_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement addTextNode = root.$(TestBenchElement.clreplaced).id("addTextNodeToContainer1");
String oldTtext = message.getText();
addTextNode.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Added 'Text node' to div with id 'containerWithElementChildren'.");
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void processContainerWithClientSideNodes_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
String oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void addNodeToSlot_processContainer_allNodesAreRemoved_serverNodesAreDetached(String buttonToClick, String expectedMessage, String expectedInnerText) {
List<WebElement> divs = root.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addChildToSlot");
String oldTtext = message.getText();
add.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = root.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, root.getAttribute("innerText"));
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void addClientSideChildren_processContainer_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithClientSideChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addClientSideChild");
add.click();
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(1, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
String oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void processContainerWithClientAndServerSideNodes_allNodesAreRemoved_serverNodesAreDetached(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementChildren");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addChildToContainer1");
String oldTtext = message.getText();
add.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(3, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void addNodeToNestedContainer_processParentContainer_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("nestedContainer");
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
TestBenchElement add = root.$(TestBenchElement.clreplaced).id("addChildToNestedContainer");
String oldTtext = message.getText();
add.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith("Div 'Server div 1' attached.");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(1, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
/*
* Note that in this setup, the server-side components are not detached.
*/
replacedertMessageEndsWith(expectedMessage);
container = root.$(TestBenchElement.clreplaced).id("containerWithContainer");
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getText());
}
19
Source : ClearNodeChildrenIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void processContainerWithTextNodes_allNodesAreRemoved(String buttonToClick, String expectedMessage, String expectedInnerText) {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithMixedChildren");
replacedert.replacedertThat(container.getText(), CoreMatchers.allOf(CoreMatchers.containsString("Some text 1"), CoreMatchers.containsString("Some text 2"), CoreMatchers.containsString("Some text 3")));
List<WebElement> divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(2, divs.size());
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToClick);
String oldTtext = message.getText();
button.click();
waitForMessageToChange(oldTtext);
replacedertMessageEndsWith(expectedMessage);
divs = container.findElements(By.tagName("div"));
replacedert.replacedertEquals(0, divs.size());
replacedert.replacedertEquals(expectedInnerText, container.getAttribute("innerText"));
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
/**
* Tests to validate the ordering of server-side nodes when added alongside
* client-side nodes.
*
* @author Vaadin Ltd
* @since 1.0.
*/
public clreplaced ChildOrderIT extends ChromeBrowserTest {
private TestBenchElement root;
@Before
public void init() {
open();
waitForElementPresent(By.id("root"));
root = $(TestBenchElement.clreplaced).id("root");
}
@Test
public void appendElementsFromServer_elementsAreAddedAfterExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElement");
replacedertNodeOrder(container, "Client child");
clickAndWaitForContainerToChange(container, "addChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1");
clickAndWaitForContainerToChange(container, "addChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2", "Client child");
/*
* Client side nodes added after the server side ones are not considered
* in the counting, so they are left behind
*/
clickAndWaitForContainerToChange(container, "addChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2", "Server child 3", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Client child");
}
@Test
public void prependElementsFromServer_elementsAreAddedBeforeExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElement");
replacedertNodeOrder(container, "Client child");
clickAndWaitForContainerToChange(container, "prependChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1");
clickAndWaitForContainerToChange(container, "prependChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 2", "Server child 1");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 2", "Server child 1", "Client child");
clickAndWaitForContainerToChange(container, "prependChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 3", "Server child 2", "Server child 1", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 3", "Server child 2", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 3", "Client child");
}
@Test
public void appendTextsFromServer_textsAreAddedAfterExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithText");
replacedertNodeOrder(container, "Client text");
clickAndWaitForContainerToChange(container, "addChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1");
clickAndWaitForContainerToChange(container, "addChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2", "Client text");
/*
* Client side nodes added after the server side ones are not considered
* in the counting, so they are left behind
*/
clickAndWaitForContainerToChange(container, "addChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2", "Server text 3", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Client text");
}
@Test
public void prependTextsFromServer_textsAreAddedBeforeExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithText");
replacedertNodeOrder(container, "Client text");
clickAndWaitForContainerToChange(container, "prependChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1");
clickAndWaitForContainerToChange(container, "prependChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 2", "Server text 1");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 2", "Server text 1", "Client text");
clickAndWaitForContainerToChange(container, "prependChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 3", "Server text 2", "Server text 1", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 3", "Server text 2", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 3", "Client text");
}
@Test
public void containerWithElementAddedOnConstructor_orderIsPreserved() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementAddedOnConstructor");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2");
}
private void clickAndWaitForContainerToChange(WebElement container, String buttonToclick) {
String innertText = container.getAttribute("innerText");
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToclick);
button.click();
waitUntilNot(driver -> container.getAttribute("innerText").equals(innertText));
}
private void replacedertNodeOrder(WebElement container, String... nodes) {
String texts = container.getText();
texts = texts.replace("\n", " ");
String expected = Stream.of(nodes).collect(Collectors.joining(" "));
replacedert.replacedertEquals(expected, texts);
}
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void containerWithElementAddedOnConstructor_orderIsPreserved() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElementAddedOnConstructor");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2");
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void appendTextsFromServer_textsAreAddedAfterExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithText");
replacedertNodeOrder(container, "Client text");
clickAndWaitForContainerToChange(container, "addChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1");
clickAndWaitForContainerToChange(container, "addChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2", "Client text");
/*
* Client side nodes added after the server side ones are not considered
* in the counting, so they are left behind
*/
clickAndWaitForContainerToChange(container, "addChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2", "Server text 3", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Server text 2", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1", "Client text");
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void appendElementsFromServer_elementsAreAddedAfterExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElement");
replacedertNodeOrder(container, "Client child");
clickAndWaitForContainerToChange(container, "addChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1");
clickAndWaitForContainerToChange(container, "addChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2", "Client child");
/*
* Client side nodes added after the server side ones are not considered
* in the counting, so they are left behind
*/
clickAndWaitForContainerToChange(container, "addChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2", "Server child 3", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Server child 2", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1", "Client child");
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
private void clickAndWaitForContainerToChange(WebElement container, String buttonToclick) {
String innertText = container.getAttribute("innerText");
TestBenchElement button = root.$(TestBenchElement.clreplaced).id(buttonToclick);
button.click();
waitUntilNot(driver -> container.getAttribute("innerText").equals(innertText));
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void prependTextsFromServer_textsAreAddedBeforeExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithText");
replacedertNodeOrder(container, "Client text");
clickAndWaitForContainerToChange(container, "prependChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 1");
clickAndWaitForContainerToChange(container, "prependChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 2", "Server text 1");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 2", "Server text 1", "Client text");
clickAndWaitForContainerToChange(container, "prependChildToContainer2");
replacedertNodeOrder(container, "Client text", "Server text 3", "Server text 2", "Server text 1", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 3", "Server text 2", "Client text");
clickAndWaitForContainerToChange(container, "removeChildFromContainer2");
replacedertNodeOrder(container, "Client text", "Server text 3", "Client text");
}
19
Source : ChildOrderIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void prependElementsFromServer_elementsAreAddedBeforeExistingOnes() {
TestBenchElement container = root.$(TestBenchElement.clreplaced).id("containerWithElement");
replacedertNodeOrder(container, "Client child");
clickAndWaitForContainerToChange(container, "prependChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 1");
clickAndWaitForContainerToChange(container, "prependChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 2", "Server child 1");
clickAndWaitForContainerToChange(container, "addClientSideChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 2", "Server child 1", "Client child");
clickAndWaitForContainerToChange(container, "prependChildToContainer1");
replacedertNodeOrder(container, "Client child", "Server child 3", "Server child 2", "Server child 1", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 3", "Server child 2", "Client child");
clickAndWaitForContainerToChange(container, "removeChildFromContainer1");
replacedertNodeOrder(container, "Client child", "Server child 3", "Client child");
}
19
Source : BeanInListingIT.java
with MIT License
from mcollovati
with MIT License
from mcollovati
@Test
public void beanInTwoWayBinding() throws InterruptedException {
open();
TestBenchElement selected = $(TestBenchElement.clreplaced).id("template").$(TestBenchElement.clreplaced).id("selected");
replacedertSelectionValue("user-item", selected, "foo");
replacedertSelectionValue("user-item", selected, "bar");
replacedertSelectionValue("msg-item", selected, "baz");
replacedertSelectionValue("msg-item", selected, "msg");
}
See More Examples