コード例 #1
0
ファイル: test_serialization.py プロジェクト: Ismatov/gsl-en
def test_transpose_lower():
    serializer = HTMLSerializer()
    serializer.doctype = None
    serializer.inject_type = False
    serializer.transpose = string.lower
    t = kid.Template("<HTML><HEAD /></HTML>")
    t.serializer = serializer
    expected = '<html><head></head></html>'
    rslt = t.serialize()
    assert rslt == expected
コード例 #2
0
ファイル: test_serialization.py プロジェクト: Ismatov/gsl-en
def test_transpose_off():
    serializer = HTMLSerializer()
    serializer.doctype = None
    serializer.inject_type = False
    serializer.transpose = None
    t = kid.Template("<HTML><HEAD /></HTML>")
    t.serializer = serializer
    expected = '<HTML><HEAD></HEAD></HTML>'
    rslt = t.serialize()
    assert rslt == expected
def test_transpose_off():
    serializer = HTMLSerializer()
    serializer.doctype = None
    serializer.inject_type = False
    serializer.transpose = None
    t = kid.Template("<HTML><HEAD /></HTML>")
    t.serializer = serializer
    expected = '<HTML><HEAD></HEAD></HTML>'
    rslt = t.serialize()
    assert rslt == expected
コード例 #4
0
ファイル: test_serialization.py プロジェクト: Ismatov/gsl-en
def test_strip_lang():
    serializer = HTMLSerializer(transpose=True)
    serializer.doctype = doctypes['html-strict']
    t = kid.Template("<html xml:lang='en' lang='en' />")
    t.serializer = serializer
    expected = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"' \
        ' "http://www.w3.org/TR/html4/strict.dtd">\n' \
        '<HTML LANG="en"></HTML>'
    rslt = t.serialize()
    assert rslt == expected
def test_transpose_lower():
    serializer = HTMLSerializer()
    serializer.doctype = None
    serializer.inject_type = False
    serializer.transpose = string.lower
    t = kid.Template("<HTML><HEAD /></HTML>")
    t.serializer = serializer
    expected = '<html><head></head></html>'
    rslt = t.serialize()
    assert rslt == expected
def test_strip_lang():
    serializer = HTMLSerializer(transpose=True)
    serializer.doctype = doctypes['html-strict']
    t = kid.Template("<html xml:lang='en' lang='en' />")
    t.serializer = serializer
    expected = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"' \
        ' "http://www.w3.org/TR/html4/strict.dtd">\n' \
        '<HTML LANG="en"></HTML>'
    rslt = t.serialize()
    assert rslt == expected
def test_html_transpose():
    t = kid.Template('<HtMl/>')
    t.serializer = HTMLSerializer()
    rslt = t.serialize()
    assert rslt.endswith('<html></html>')
    t.serializer = HTMLSerializer(transpose=False)
    rslt = t.serialize()
    assert rslt.endswith('<html></html>')
    t.serializer = HTMLSerializer(transpose=True)
    rslt = t.serialize()
    assert rslt.endswith('<HTML></HTML>')
    t.serializer = HTMLSerializer(transpose=None)
    rslt = t.serialize()
    assert rslt.endswith('<HtMl></HtMl>')

    def transpose(s):
        return s.capitalize()

    t.serializer = HTMLSerializer(transpose=transpose)
    rslt = t.serialize()
    assert rslt.endswith('<Html></Html>')
def test_doctype_and_injection():
    serializer = HTMLSerializer(encoding='utf-8', transpose=True)
    serializer.doctype = doctypes['html-strict']
    serializer.inject_type = True
    source = "<html><head /></html>"
    t = kid.Template(source)
    t.serializer = serializer
    from kid.format import Format
    format = Format(no_empty_lines=True)
    rslt = t.serialize(format=format)
    rslt = rslt.replace('\n', '')
    expected = (
        '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'
        ' "http://www.w3.org/TR/html4/strict.dtd">'
        '<HTML><HEAD>'
        '<META CONTENT="text/html; charset=utf-8" HTTP-EQUIV="content-type">'
        '</HEAD></HTML>')
    assert rslt == expected
    serializer = HTMLSerializer(encoding='ascii', transpose=False)
    serializer.doctype = None
    serializer.inject_type = True
    source = ('<html><head>'
              '<meta content="Reiner Wahnsinn" name="author"/>'
              '<meta content="nonsense" http-equiv="content-type"/>'
              '<meta content="garbage" name="keywords"/>'
              '<title>Content</title>'
              '</head><body><h1>Hello, World!</h1></body></html>')
    t = kid.Template(source)
    t.serializer = serializer
    rslt = t.serialize()
    expected = source.replace('/>', '>')
    assert rslt == expected
    source = source.replace('content-type', 'garbage-type')
    t = kid.Template(source)
    t.serializer = serializer
    rslt = t.serialize()
    rslt = rslt.replace('\n', '')
    expected = source.replace('/>', '>').replace(
        '<title>', '<meta content="text/html; charset=ascii"'
        ' http-equiv="content-type"><title>')
    assert rslt == expected
コード例 #9
0
ファイル: test_serialization.py プロジェクト: Ismatov/gsl-en
def test_doctype_and_injection():
    serializer = HTMLSerializer(encoding='utf-8', transpose=True)
    serializer.doctype = doctypes['html-strict']
    serializer.inject_type = True
    source = "<html><head /></html>"
    t = kid.Template(source)
    t.serializer = serializer
    from kid.format import Format
    format=Format(no_empty_lines=True)
    rslt = t.serialize(format=format)
    rslt = rslt.replace('\n', '')
    expected = ('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'
        ' "http://www.w3.org/TR/html4/strict.dtd">'
        '<HTML><HEAD>'
        '<META CONTENT="text/html; charset=utf-8" HTTP-EQUIV="content-type">'
        '</HEAD></HTML>')
    assert rslt == expected
    serializer = HTMLSerializer(encoding='ascii', transpose=False)
    serializer.doctype = None
    serializer.inject_type = True
    source = ('<html><head>'
        '<meta content="Reiner Wahnsinn" name="author"/>'
        '<meta content="nonsense" http-equiv="content-type"/>'
        '<meta content="garbage" name="keywords"/>'
        '<title>Content</title>'
        '</head><body><h1>Hello, World!</h1></body></html>')
    t = kid.Template(source)
    t.serializer = serializer
    rslt = t.serialize()
    expected = source.replace('/>', '>')
    assert rslt == expected
    source = source.replace('content-type', 'garbage-type')
    t = kid.Template(source)
    t.serializer = serializer
    rslt = t.serialize()
    rslt = rslt.replace('\n', '')
    expected = source.replace('/>', '>').replace('<title>',
        '<meta content="text/html; charset=ascii"'
        ' http-equiv="content-type"><title>')
    assert rslt == expected

# create some default serializers...
output_methods = {
    'xml':
    XMLSerializer(decl=True),
    'wml':
    XMLSerializer(decl=True, doctype='wml'),
    'xhtml-strict':
    XHTMLSerializer(decl=False, doctype='xhtml-strict'),
    'xhtml':
    XHTMLSerializer(decl=False, doctype='xhtml'),
    'xhtml-frameset':
    XHTMLSerializer(decl=False, doctype='xhtml-frameset'),
    'html-strict':
    HTMLSerializer(doctype='html-strict'),
    'html':
    HTMLSerializer(doctype='html'),
    'html-frameset':
    HTMLSerializer(doctype='html-frameset'),
    'html-quirks':
    HTMLSerializer(doctype='html-quirks'),
    'html-frameset-quirks':
    HTMLSerializer(doctype='html-frameset-quirks'),
    'HTML-strict':
    HTMLSerializer(doctype='html-strict', transpose=True),
    'HTML':
    HTMLSerializer(doctype='html', transpose=True),
    'HTML-frameset':
    HTMLSerializer(doctype='html-frameset', transpose=True),
    'HTML-quirks':
コード例 #11
0
ファイル: test_serialization.py プロジェクト: Ismatov/gsl-en
def test_html_quirks_output_method():
    t = kid.Template('<html><p>test</p><br /></html>')
    rslt = t.serialize(output='HTML-quirks')
    expected = serialize_doctype(doctypes['html-quirks']) + \
               '\n<HTML><P>test</P><BR></HTML>'
    assert rslt == expected

def test_xml_output_method():
    t = kid.Template('<html><p>test</p><br/></html>')
    rslt = t.serialize(output='xml')
    expected = '<?xml version="1.0" encoding="utf-8"?>\n' + \
               '<html><p>test</p><br /></html>'
    assert rslt == expected

from kid.serialization import HTMLSerializer, XMLSerializer, XHTMLSerializer
serializer = HTMLSerializer()
serializer.doctype = None
serializer.inject_type = False

def HTMLTemplate(text, **kw):
    t = kid.Template(text, **kw)
    t.serializer = serializer
    return t

def test_html_transpose():
    t = kid.Template('<HtMl/>')
    t.serializer = HTMLSerializer()
    rslt = t.serialize()
    assert rslt.endswith('<html></html>')
    t.serializer = HTMLSerializer(transpose=False)
    rslt = t.serialize()
    rslt = t.serialize(output='HTML-quirks')
    expected = serialize_doctype(doctypes['html-quirks']) + \
               '\n<HTML><P>test</P><BR></HTML>'
    assert rslt == expected


def test_xml_output_method():
    t = kid.Template('<html><p>test</p><br/></html>')
    rslt = t.serialize(output='xml')
    expected = '<?xml version="1.0" encoding="utf-8"?>\n' + \
               '<html><p>test</p><br /></html>'
    assert rslt == expected


from kid.serialization import HTMLSerializer, XMLSerializer, XHTMLSerializer
serializer = HTMLSerializer()
serializer.doctype = None
serializer.inject_type = False


def HTMLTemplate(text, **kw):
    t = kid.Template(text, **kw)
    t.serializer = serializer
    return t


def test_html_transpose():
    t = kid.Template('<HtMl/>')
    t.serializer = HTMLSerializer()
    rslt = t.serialize()
    assert rslt.endswith('<html></html>')