@Test
public void testChangeTexts() {
final Element root = new Element(NAME);
root.addText("hello", false);
root.addText("HELLO", false);
root.changeTexts(String::toUpperCase);
assertEquals(2, root.getChildrenCount());
assertEquals("HELLO", root.getChildAt(Text.class, 0).getContent());
assertEquals("HELLO", root.getChildAt(Text.class, 1).getContent());
root.removeChildren();
final Element child1 = root.addElement(NAME1);
final Element child2 = root.addElement(NAME2);
final Element child3 = root.addElement(NAME1);
child1.addText("hello");
child2.addText("hello");
child3.addText("hel");
child3.addText("lo", false);
assertEquals(2, child3.getChildrenCount());
root.changeTexts(String::toUpperCase);
assertEquals(2, child3.getChildrenCount());
root.changeNamedTexts(NAME1, String::toUpperCase);
assertEquals(1, child3.getChildrenCount());
assertEquals("HELLO", child1.getText());
assertEquals("HELLO", child3.getText());
}