async def test_add_df(self): self.df.append(self.c1, self.c2, 'text') self.tag.appendChild(self.df) await self.wait_for_element(self.c1) await self.wait_for_element(self.c2) self.assertEqual(await self.get_text(), 'child1child2text') df = DocumentFragment() df.append(self.c3, 'text2') self.tag.appendChild(df) await self.wait_for_element(self.c3) self.assertEqual(await self.get_text(), 'child1child2textchild3text2')
def __init__(self, *args: Any, element_factory: _T_ElementFactory = None, **kwargs: Any) -> None: """Initialize parser.""" super().__init__(*args, **kwargs) # type: ignore from wdom.node import DocumentFragment from wdom.document import create_element self.elm = DocumentFragment() # type: ParentNode self.root = self.elm self.current_tag = '' self.element_factory = element_factory or create_element
def get_elements(self): self.root = WdomElement('div') self.tag = WdomElement('span', parent=self.root) self.df = DocumentFragment() self.c1 = WdomElement('c1') self.c2 = WdomElement('c2') self.c3 = WdomElement('c3') self.c4 = WdomElement('c4') self.c1.textContent = 'child1' self.c2.textContent = 'child2' self.c3.textContent = 'child3' self.c4.textContent = 'child4' return self.root
def test_add_df(self): self.set_element(self.tag) self.df.append(self.c1, self.c2, 'text') self.tag.appendChild(self.df) self.wait_until(lambda: self.element.text == 'child1child2text') self.assertEqual(self.element.text, 'child1child2text') df = DocumentFragment() df.append(self.c3, 'text2') self.tag.appendChild(df) self.wait_until( lambda: self.element.text == 'child1child2textchild3text2') self.assertEqual(self.element.text, 'child1child2textchild3text2')
def test_insert_df(self): self.set_element(self.tag) self.tag.appendChild(self.c1) self.df.append(self.c2, self.c3, 'text') self.tag.insertBefore(self.df, self.c1) self.wait_until(lambda: self.element.text == 'child2child3textchild1') self.assertEqual(self.element.text, 'child2child3textchild1') df = DocumentFragment() df.append(self.c4, 'text2') self.tag.insertBefore(df, self.c3) self.wait_until( lambda: self.element.text == 'child2child4text2child3textchild1') self.assertEqual(self.element.text, 'child2child4text2child3textchild1')
async def test_insert_df(self): self.tag.appendChild(self.c1) await self.wait_for_element(self.c1) self.df.append(self.c2, self.c3, 'text') self.tag.insertBefore(self.df, self.c1) await self.wait_for_element(self.c2) await self.wait_for_element(self.c3) self.assertEqual(await self.get_text(), 'child2child3textchild1') df = DocumentFragment() df.append(self.c4, 'text2') self.tag.insertBefore(df, self.c3) await self.wait_for_element(self.c4) self.assertEqual(await self.get_text(), 'child2child4text2child3textchild1') # noqa
def setUp(self): self.df = DocumentFragment() self.elm = Element('a') self.c1 = Element('c1') self.c2 = Element('c2') self.c3 = Element('c3')
def setUp(self): self.node = Node() self.df = DocumentFragment() self.tnode = Text('text')
def createDocumentFragment(self) -> DocumentFragment: """Create empty document fragment.""" return DocumentFragment()