use of com.vaadin.flow.dom.Element in project flow by vaadin.
the class TemplateElementStateProviderTest method textInChildSlot.
@Test
public void textInChildSlot() {
Element parent = createElement("<div>@child@</div>");
Element child = Element.createText("The text");
parent.getNode().getFeature(TemplateMap.class).setChild(child.getNode());
Assert.assertEquals(1, parent.getChildCount());
Assert.assertEquals(1, parent.getChildren().count());
Assert.assertEquals(parent, child.getParent());
Assert.assertEquals("The text", parent.getTextRecursively());
}
use of com.vaadin.flow.dom.Element in project flow by vaadin.
the class TemplateElementStateProviderTest method populatedChildSlot.
@Test
public void populatedChildSlot() {
Element div = createElement("<div><span>@child@</span></div>");
Element span = div.getChild(0);
Element child = ElementFactory.createSpan("child");
div.getNode().getFeature(TemplateMap.class).setChild(child.getNode());
Assert.assertEquals(1, span.getChildCount());
Assert.assertEquals(child, span.getChild(0));
Assert.assertEquals(span, child.getParent());
}
use of com.vaadin.flow.dom.Element in project flow by vaadin.
the class TemplateElementStateProviderTest method clearChildSlot_resetChild.
public void clearChildSlot_resetChild() {
Element parent = createElement("<div>@child@</div>");
Element child = ElementFactory.createSpan("child");
TemplateMap templateMap = parent.getNode().getFeature(TemplateMap.class);
templateMap.setChild(child.getNode());
Assert.assertEquals(1, parent.getChildCount());
templateMap.setChild(null);
Assert.assertEquals(0, parent.getChildCount());
Assert.assertEquals(0, parent.getChildren().count());
Assert.assertNull(child.getParent());
}
use of com.vaadin.flow.dom.Element in project flow by vaadin.
the class TemplateElementStateProviderTest method removeAttribute_templateHasAttribute_hasNoAttribute.
@Test
public void removeAttribute_templateHasAttribute_hasNoAttribute() {
TemplateNode node = TemplateParser.parse("<div foo='bar'></div>", new NullTemplateResolver());
Element element = createElement(node);
element.removeAttribute("foo");
Assert.assertFalse(element.hasAttribute("foo"));
List<String> attrs = element.getAttributeNames().collect(Collectors.toList());
Assert.assertEquals(0, attrs.size());
}
use of com.vaadin.flow.dom.Element in project flow by vaadin.
the class TemplateElementStateProviderTest method testAppendOverrideChild.
@Test
public void testAppendOverrideChild() {
Element child = ElementFactory.createAnchor();
Element parent = createElement("<div></div>");
parent.appendChild(child);
List<Element> children = parent.getChildren().collect(Collectors.toList());
Assert.assertEquals(1, children.size());
Assert.assertEquals(child, children.get(0));
Assert.assertEquals(parent, child.getParent());
}
Aggregations