use of com.vaadin.testbench.TestBenchElement in project flow by vaadin.
the class LazyWidgetIT method lazyLoadedPolymerTemplateWorksAsElement.
@Test
public void lazyLoadedPolymerTemplateWorksAsElement() {
open();
// template is lazy loaded,
waitForElementVisible(By.id("template"));
// need some time to load
TestBenchElement template = $(TestBenchElement.class).id("template");
String input = "InputMaster";
Assert.assertFalse("No greeting should be present before we press the button", template.$("*").attribute("id", "greeting").exists());
template.$(TestBenchElement.class).id("input").sendKeys(input);
template.$(TestBenchElement.class).id("button").click();
Assert.assertEquals("Greeting is different from expected", String.format(LazyWidgetView.GREETINGS_TEMPLATE, input), template.$(TestBenchElement.class).id("greeting").getText());
}
use of com.vaadin.testbench.TestBenchElement in project flow by vaadin.
the class PolymerModelPropertiesIT method propertySyncWithModel.
@Test
public void propertySyncWithModel() {
open();
WebElement initial = findElement(By.id("property-value"));
Assert.assertEquals("Property value:foo, model value: foo", initial.getText());
TestBenchElement template = $(TestBenchElement.class).id("template");
TestBenchElement input = template.$(TestBenchElement.class).id("input");
input.clear();
input.sendKeys("x" + Keys.TAB);
// property update event comes immediately
List<WebElement> propertyUpdates = findElements(By.id("property-update-event"));
WebElement propertyUpdate = propertyUpdates.get(propertyUpdates.size() - 1);
Assert.assertEquals("Property value:x, model value: x", propertyUpdate.getText());
// now move focus out of the input and check that value change event is
// fired
propertyUpdate.click();
List<WebElement> valueUpdates = findElements(By.id("value-update"));
WebElement valueUpdate = valueUpdates.get(valueUpdates.size() - 1);
Assert.assertEquals("Property value:x, model value: x", valueUpdate.getText());
}
use of com.vaadin.testbench.TestBenchElement in project flow by vaadin.
the class TemplateInTemplateIT method childTemplateInstanceHandlesEvent.
@Test
public void childTemplateInstanceHandlesEvent() {
open();
TestBenchElement template = $(TestBenchElement.class).id("template");
TestBenchElement child = template.$(TestBenchElement.class).id("child");
child.getPropertyElement("shadowRoot", "firstElementChild").click();
Assert.assertTrue(isElementPresent(By.id("click-handler")));
WebElement text = child.$(TestBenchElement.class).id("text");
Assert.assertEquals("foo", text.getText());
}
use of com.vaadin.testbench.TestBenchElement in project flow by vaadin.
the class TemplateMappingDetectorIT method assertMappedComponentsAreMarkedProperly.
private void assertMappedComponentsAreMarkedProperly(TestBenchElement container, boolean templateInTemplate) {
TestBenchElement mappedComponent = container.$(TestBenchElement.class).id("detector1");
Assert.assertEquals("Template mapped: true", mappedComponent.getText());
TestBenchElement standaloneComponent = container.$(TestBenchElement.class).id("detector2");
Assert.assertEquals("Template mapped: false", standaloneComponent.getText());
TestBenchElement standaloneComposite = container.$(TestBenchElement.class).id("detector3");
Assert.assertEquals("Composite template mapped: false Template mapped: false", standaloneComposite.getText());
TestBenchElement theTemplateItself = container.$(TestBenchElement.class).id("detector4");
Assert.assertEquals("The template itself: " + templateInTemplate, theTemplateItself.getText());
}
use of com.vaadin.testbench.TestBenchElement in project flow by vaadin.
the class TemplateWithConnectedCallbacksIT method assertMessageIsWrittenFromServer.
private void assertMessageIsWrittenFromServer() {
waitForElementPresent(By.tagName("template-with-connected-callbacks"));
TestBenchElement element = $("template-with-connected-callbacks").first();
TestBenchElement messageElement = element.$(TestBenchElement.class).id("connectedMessage");
Assert.assertEquals("Connected (checked from server side)", messageElement.getText());
}
Aggregations