changeset 862:37fb3988647a

Make the output tests skip the encoding step.
author cmlenz
date Thu, 12 Nov 2009 20:58:12 +0000
parents e098d29c4de1
children 72d56a8441e8
files genshi/core.py genshi/tests/core.py genshi/tests/output.py
diffstat 3 files changed, 49 insertions(+), 45 deletions(-) [+]
line wrap: on
line diff
--- a/genshi/core.py
+++ b/genshi/core.py
@@ -663,7 +663,7 @@
         return hash(self.uri)
 
     def __repr__(self):
-        return 'Namespace(%s)' % stringrepr(self.uri)
+        return '%s(%s)' % (type(self).__name__, stringrepr(self.uri))
 
     def __str__(self):
         return self.uri.encode('utf-8')
@@ -724,4 +724,4 @@
         return (self.lstrip('{'),)
 
     def __repr__(self):
-        return 'QName(%s)' % stringrepr(self.lstrip('{'))
+        return '%s(%s)' % (type(self).__name__, stringrepr(self.lstrip('{')))
--- a/genshi/tests/core.py
+++ b/genshi/tests/core.py
@@ -57,7 +57,7 @@
         pickle.dump(xml, buf, 2)
         buf.seek(0)
         xml = pickle.load(buf)
-        self.assertEquals('<li>Foo</li>', xml.render())
+        self.assertEquals('<li>Foo</li>', xml.render(encoding=None))
 
 
 class MarkupTestCase(unittest.TestCase):
--- a/genshi/tests/output.py
+++ b/genshi/tests/output.py
@@ -25,7 +25,7 @@
 
     def test_with_xml_decl(self):
         stream = Stream([(Stream.XML_DECL, ('1.0', None, -1), (None, -1, -1))])
-        output = stream.render(XMLSerializer, doctype='xhtml')
+        output = stream.render(XMLSerializer, doctype='xhtml', encoding=None)
         self.assertEqual('<?xml version="1.0"?>\n'
                          '<!DOCTYPE html PUBLIC '
                          '"-//W3C//DTD XHTML 1.0 Strict//EN" '
@@ -34,7 +34,7 @@
 
     def test_doctype_in_stream(self):
         stream = Stream([(Stream.DOCTYPE, DocType.HTML_STRICT, (None, -1, -1))])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual('<!DOCTYPE html PUBLIC '
                          '"-//W3C//DTD HTML 4.01//EN" '
                          '"http://www.w3.org/TR/html4/strict.dtd">\n',
@@ -44,7 +44,7 @@
         stream = Stream([(Stream.DOCTYPE,
                          ('html', '-//W3C//DTD HTML 4.01//EN', None),
                          (None, -1, -1))])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual('<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">\n',
                          output)
 
@@ -54,7 +54,7 @@
              ('html', None, 'http://www.w3.org/TR/html4/strict.dtd'),
              (None, -1, -1))
         ])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual('<!DOCTYPE html SYSTEM '
                          '"http://www.w3.org/TR/html4/strict.dtd">\n',
                          output)
@@ -62,12 +62,13 @@
     def test_doctype_in_stream_no_pubid_or_sysid(self):
         stream = Stream([(Stream.DOCTYPE, ('html', None, None),
                          (None, -1, -1))])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual('<!DOCTYPE html>\n', output)
 
     def test_serializer_doctype(self):
         stream = Stream([])
-        output = stream.render(XMLSerializer, doctype=DocType.HTML_STRICT)
+        output = stream.render(XMLSerializer, doctype=DocType.HTML_STRICT,
+                               encoding=None)
         self.assertEqual('<!DOCTYPE html PUBLIC '
                          '"-//W3C//DTD HTML 4.01//EN" '
                          '"http://www.w3.org/TR/html4/strict.dtd">\n',
@@ -77,7 +78,8 @@
         stream = Stream([
             (Stream.DOCTYPE, ('html', None, None), (None, -1, -1))
         ])
-        output = stream.render(XMLSerializer, doctype=DocType.HTML_STRICT)
+        output = stream.render(XMLSerializer, doctype=DocType.HTML_STRICT,
+                               encoding=None)
         self.assertEqual('<!DOCTYPE html PUBLIC '
                          '"-//W3C//DTD HTML 4.01//EN" '
                          '"http://www.w3.org/TR/html4/strict.dtd">\n',
@@ -85,12 +87,12 @@
 
     def test_comment(self):
         stream = Stream([(Stream.COMMENT, 'foo bar', (None, -1, -1))])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual('<!--foo bar-->', output)
 
     def test_processing_instruction(self):
         stream = Stream([(Stream.PI, ('python', 'x = 2'), (None, -1, -1))])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual('<?python x = 2?>', output)
 
     def test_nested_default_namespaces(self):
@@ -111,7 +113,7 @@
             (Stream.END, QName('http://example.org/}div'), (None, -1, -1)),
             (Stream.END_NS, '', (None, -1, -1))
         ])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual("""<div xmlns="http://example.org/">
           <p/>
           <p/>
@@ -135,7 +137,7 @@
             (Stream.END, QName('http://example.org/}div'), (None, -1, -1)),
             (Stream.END_NS, 'x', (None, -1, -1))
         ])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual("""<x:div xmlns:x="http://example.org/">
           <x:p/>
           <x:p/>
@@ -157,7 +159,7 @@
             (Stream.TEXT, '\n        ', (None, -1, -1)),
             (Stream.END, QName('div'), (None, -1, -1)),
         ])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual("""<div>
           <p xmlns="http://example.org/"/>
           <p xmlns="http://example.org/"/>
@@ -179,7 +181,7 @@
             (Stream.TEXT, '\n        ', (None, -1, -1)),
             (Stream.END, QName('div'), (None, -1, -1)),
         ])
-        output = stream.render(XMLSerializer)
+        output = stream.render(XMLSerializer, encoding=None)
         self.assertEqual("""<div>
           <x:p xmlns:x="http://example.org/"/>
           <x:p xmlns:x="http://example.org/"/>
@@ -197,7 +199,7 @@
             </subtitle>
             <icon/>
         </feed>"""
-        output = XML(text).render(XMLSerializer)
+        output = XML(text).render(XMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
 
@@ -205,7 +207,7 @@
 
     def test_xml_decl_dropped(self):
         stream = Stream([(Stream.XML_DECL, ('1.0', None, -1), (None, -1, -1))])
-        output = stream.render(XHTMLSerializer, doctype='xhtml')
+        output = stream.render(XHTMLSerializer, doctype='xhtml', encoding=None)
         self.assertEqual('<!DOCTYPE html PUBLIC '
                          '"-//W3C//DTD XHTML 1.0 Strict//EN" '
                          '"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\n',
@@ -214,7 +216,7 @@
     def test_xml_decl_included(self):
         stream = Stream([(Stream.XML_DECL, ('1.0', None, -1), (None, -1, -1))])
         output = stream.render(XHTMLSerializer, doctype='xhtml',
-                               drop_xml_decl=False)
+                               drop_xml_decl=False, encoding=None)
         self.assertEqual('<?xml version="1.0"?>\n'
                          '<!DOCTYPE html PUBLIC '
                          '"-//W3C//DTD XHTML 1.0 Strict//EN" '
@@ -223,36 +225,36 @@
 
     def test_xml_lang(self):
         text = '<p xml:lang="en">English text</p>'
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual('<p lang="en" xml:lang="en">English text</p>', output)
 
     def test_xml_lang_nodup(self):
         text = '<p xml:lang="en" lang="en">English text</p>'
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual('<p xml:lang="en" lang="en">English text</p>', output)
 
     def test_textarea_whitespace(self):
         content = '\nHey there.  \n\n    I am indented.\n'
         stream = XML('<textarea name="foo">%s</textarea>' % content)
-        output = stream.render(XHTMLSerializer)
+        output = stream.render(XHTMLSerializer, encoding=None)
         self.assertEqual('<textarea name="foo">%s</textarea>' % content, output)
 
     def test_pre_whitespace(self):
         content = '\nHey <em>there</em>.  \n\n    I am indented.\n'
         stream = XML('<pre>%s</pre>' % content)
-        output = stream.render(XHTMLSerializer)
+        output = stream.render(XHTMLSerializer, encoding=None)
         self.assertEqual('<pre>%s</pre>' % content, output)
 
     def test_xml_space(self):
         text = '<foo xml:space="preserve"> Do not mess  \n\n with me </foo>'
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual('<foo> Do not mess  \n\n with me </foo>', output)
 
     def test_empty_script(self):
         text = """<html xmlns="http://www.w3.org/1999/xhtml">
             <script src="foo.js" />
         </html>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual("""<html xmlns="http://www.w3.org/1999/xhtml">
             <script src="foo.js"></script>
         </html>""", output)
@@ -261,28 +263,28 @@
         text = """<script>/*<![CDATA[*/
             if (1 < 2) { alert("Doh"); }
         /*]]>*/</script>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
     def test_script_escaping_with_namespace(self):
         text = """<script xmlns="http://www.w3.org/1999/xhtml">/*<![CDATA[*/
             if (1 < 2) { alert("Doh"); }
         /*]]>*/</script>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
     def test_style_escaping(self):
         text = """<style>/*<![CDATA[*/
             html > body { display: none; }
         /*]]>*/</style>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
     def test_style_escaping_with_namespace(self):
         text = """<style xmlns="http://www.w3.org/1999/xhtml">/*<![CDATA[*/
             html > body { display: none; }
         /*]]>*/</style>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
     def test_embedded_svg(self):
@@ -295,14 +297,14 @@
             </button>
           </body>
         </html>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
     def test_xhtml_namespace_prefix(self):
         text = """<div xmlns="http://www.w3.org/1999/xhtml">
             <strong>Hello</strong>
         </div>"""
-        output = XML(text).render(XHTMLSerializer)
+        output = XML(text).render(XHTMLSerializer, encoding=None)
         self.assertEqual(text, output)
 
     def test_nested_default_namespaces(self):
@@ -323,7 +325,7 @@
             (Stream.END, QName('div'), (None, -1, -1)),
             (Stream.END_NS, '', (None, -1, -1))
         ])
-        output = stream.render(XHTMLSerializer)
+        output = stream.render(XHTMLSerializer, encoding=None)
         self.assertEqual("""<div xmlns="http://example.org/">
           <p></p>
           <p></p>
@@ -347,7 +349,7 @@
             (Stream.END, QName('div'), (None, -1, -1)),
             (Stream.END_NS, 'x', (None, -1, -1))
         ])
-        output = stream.render(XHTMLSerializer)
+        output = stream.render(XHTMLSerializer, encoding=None)
         self.assertEqual("""<div xmlns:x="http://example.org/">
           <p></p>
           <p></p>
@@ -355,7 +357,8 @@
 
     def test_html5_doctype(self):
         stream = HTML('<html></html>')
-        output = stream.render(XHTMLSerializer, doctype=DocType.HTML5)
+        output = stream.render(XHTMLSerializer, doctype=DocType.HTML5,
+                               encoding=None)
         self.assertEqual('<!DOCTYPE html>\n<html></html>', output)
 
 
@@ -363,39 +366,39 @@
 
     def test_xml_lang(self):
         text = '<p xml:lang="en">English text</p>'
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual('<p lang="en">English text</p>', output)
 
     def test_xml_lang_nodup(self):
         text = '<p lang="en" xml:lang="en">English text</p>'
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual('<p lang="en">English text</p>', output)
 
     def test_textarea_whitespace(self):
         content = '\nHey there.  \n\n    I am indented.\n'
         stream = XML('<textarea name="foo">%s</textarea>' % content)
-        output = stream.render(HTMLSerializer)
+        output = stream.render(HTMLSerializer, encoding=None)
         self.assertEqual('<textarea name="foo">%s</textarea>' % content, output)
 
     def test_pre_whitespace(self):
         content = '\nHey <em>there</em>.  \n\n    I am indented.\n'
         stream = XML('<pre>%s</pre>' % content)
-        output = stream.render(HTMLSerializer)
+        output = stream.render(HTMLSerializer, encoding=None)
         self.assertEqual('<pre>%s</pre>' % content, output)
 
     def test_xml_space(self):
         text = '<foo xml:space="preserve"> Do not mess  \n\n with me </foo>'
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual('<foo> Do not mess  \n\n with me </foo>', output)
 
     def test_empty_script(self):
         text = '<script src="foo.js" />'
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual('<script src="foo.js"></script>', output)
 
     def test_script_escaping(self):
         text = '<script>if (1 &lt; 2) { alert("Doh"); }</script>'
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual('<script>if (1 < 2) { alert("Doh"); }</script>',
                          output)
 
@@ -403,14 +406,14 @@
         text = """<script xmlns="http://www.w3.org/1999/xhtml">
             if (1 &lt; 2) { alert("Doh"); }
         </script>"""
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual("""<script>
             if (1 < 2) { alert("Doh"); }
         </script>""", output)
 
     def test_style_escaping(self):
         text = '<style>html &gt; body { display: none; }</style>'
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual('<style>html > body { display: none; }</style>',
                          output)
 
@@ -418,14 +421,15 @@
         text = """<style xmlns="http://www.w3.org/1999/xhtml">
             html &gt; body { display: none; }
         </style>"""
-        output = XML(text).render(HTMLSerializer)
+        output = XML(text).render(HTMLSerializer, encoding=None)
         self.assertEqual("""<style>
             html > body { display: none; }
         </style>""", output)
 
     def test_html5_doctype(self):
         stream = HTML('<html></html>')
-        output = stream.render(HTMLSerializer, doctype=DocType.HTML5)
+        output = stream.render(HTMLSerializer, doctype=DocType.HTML5,
+                               encoding=None)
         self.assertEqual('<!DOCTYPE html>\n<html></html>', output)
 
 
Copyright (C) 2012-2017 Edgewall Software