Exemple #1
0
def test_expand_fragments():
    """Testcase for expanding XML fragments (ticket #145)."""
    template = """<div xmlns:py="http://purl.org/kid/ns#"
        py:replace="stream" />"""
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#">
            <div py:for="i in range(3)">
                <p>Hello World #$i</p>
            </div>
        </div>""")
    s = t.serialize(fragment=True)
    expected = """<div>
            <div>
                <p>Hello World #0</p>
            </div><div>
                <p>Hello World #1</p>
            </div><div>
                <p>Hello World #2</p>
            </div>
        </div>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True)
    assert s2 == s
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#" py:for="i in range(3)">
            <p>Hello World #$i</p>
        </div>""")
    s = t.serialize(fragment=True)
    expected = """<div>
            <p>Hello World #0</p>
        </div><div>
            <p>Hello World #1</p>
        </div><div>
            <p>Hello World #2</p>
        </div>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True)
    assert s2 == s
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#">
            <div py:strip="True">
                <p>Hello World</p>
            </div>
        </div>""")
    s = t.serialize(fragment=True)
    expected = """<div>
                <p>Hello World</p>
        </div>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True)
    assert s2 == s
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#" py:strip="True">
            <p>Hello World</p>
        </div>""")
    s = t.serialize(fragment=True).strip()
    expected = """<p>Hello World</p>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True).strip()
    assert s2 == s
Exemple #2
0
def test_expand_fragments():
    """Testcase for expanding XML fragments (ticket #145)."""
    template = """<div xmlns:py="http://purl.org/kid/ns#"
        py:replace="stream" />"""
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#">
            <div py:for="i in range(3)">
                <p>Hello World #$i</p>
            </div>
        </div>""")
    s = t.serialize(fragment=True)
    expected = """<div>
            <div>
                <p>Hello World #0</p>
            </div><div>
                <p>Hello World #1</p>
            </div><div>
                <p>Hello World #2</p>
            </div>
        </div>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True)
    assert s2 == s
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#" py:for="i in range(3)">
            <p>Hello World #$i</p>
        </div>""")
    s = t.serialize(fragment=True)
    expected = """<div>
            <p>Hello World #0</p>
        </div><div>
            <p>Hello World #1</p>
        </div><div>
            <p>Hello World #2</p>
        </div>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True)
    assert s2 == s
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#">
            <div py:strip="True">
                <p>Hello World</p>
            </div>
        </div>""")
    s = t.serialize(fragment=True)
    expected = """<div>
                <p>Hello World</p>
        </div>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True)
    assert s2 == s
    t = Template("""\
        <div xmlns:py="http://purl.org/kid/ns#" py:strip="True">
            <p>Hello World</p>
        </div>""")
    s = t.serialize(fragment=True).strip()
    expected = """<p>Hello World</p>"""
    assert s == expected
    stream = ElementStream(t.transform()).expand()
    t2 = Template(source=template, stream=stream)
    s2 = t2.serialize(fragment=True).strip()
    assert s2 == s