Mercurial > genshi > genshi-test
diff genshi/template/tests/text.py @ 500:0742f421caba experimental-inline
Merged revisions 487-603 via svnmerge from
http://svn.edgewall.org/repos/genshi/trunk
author | cmlenz |
---|---|
date | Fri, 01 Jun 2007 17:21:47 +0000 |
parents | 55cf81951686 |
children | 1837f39efd6f |
line wrap: on
line diff
--- a/genshi/template/tests/text.py +++ b/genshi/template/tests/text.py @@ -12,14 +12,24 @@ # history and logs, available at http://genshi.edgewall.org/log/. import doctest +import os +import shutil +import tempfile import unittest +from genshi.template.loader import TemplateLoader from genshi.template.text import TextTemplate class TextTemplateTestCase(unittest.TestCase): """Tests for text template processing.""" + def setUp(self): + self.dirname = tempfile.mkdtemp(suffix='markup_test') + + def tearDown(self): + shutil.rmtree(self.dirname) + def test_escaping(self): tmpl = TextTemplate('\\#escaped') self.assertEqual('#escaped', str(tmpl.generate())) @@ -37,7 +47,7 @@ #if foo bar #end 'if foo'""") - self.assertEqual('\n', str(tmpl.generate())) + self.assertEqual('\n', str(tmpl.generate(foo=False))) def test_latin1_encoded(self): text = u'$foo\xf6$bar'.encode('iso-8859-1') @@ -74,7 +84,28 @@ """, tmpl.generate(items=range(3)).render('text')) + def test_include(self): + file1 = open(os.path.join(self.dirname, 'tmpl1.txt'), 'w') + try: + file1.write("Included\n") + finally: + file1.close() + file2 = open(os.path.join(self.dirname, 'tmpl2.txt'), 'w') + try: + file2.write("""----- Included data below this line ----- + #include tmpl1.txt + ----- Included data above this line -----""") + finally: + file2.close() + + loader = TemplateLoader([self.dirname]) + tmpl = loader.load('tmpl2.txt', cls=TextTemplate) + self.assertEqual("""----- Included data below this line ----- +Included + ----- Included data above this line -----""", + tmpl.generate().render()) + def suite(): suite = unittest.TestSuite() suite.addTest(doctest.DocTestSuite(TextTemplate.__module__))