changeset 969:b839b6c91dbe trunk

Add a test that demonstrates that absolute includes work (see #465).
author hodgestar
date Sat, 29 Dec 2012 20:18:24 +0000
parents 2ed9827596a4
children 84088f426c52
files genshi/template/tests/loader.py
diffstat 1 files changed, 23 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/genshi/template/tests/loader.py
+++ b/genshi/template/tests/loader.py
@@ -273,6 +273,29 @@
               <div>Included from sub</div>
             </html>""", tmpl.generate().render(encoding=None))
 
+    def test_absolute_include(self):
+        file1 = open(os.path.join(self.dirname, 'tmpl1.html'), 'w')
+        try:
+            file1.write("""<div>Included</div>""")
+        finally:
+            file1.close()
+
+        os.mkdir(os.path.join(self.dirname, 'sub'))
+        file2 = open(os.path.join(self.dirname, 'sub', 'tmpl2.html'), 'w')
+        try:
+            file2.write("""<html xmlns:xi="http://www.w3.org/2001/XInclude">
+              <xi:include href="%s/tmpl1.html" />
+            </html>""" % self.dirname)
+        finally:
+            file2.close()
+
+        loader = TemplateLoader()
+        tmpl = loader.load(os.path.abspath(os.path.join(self.dirname, 'sub',
+                                                        'tmpl2.html')))
+        self.assertEqual("""<html>
+              <div>Included</div>
+            </html>""", tmpl.generate().render(encoding=None))
+
     def test_abspath_caching(self):
         abspath = os.path.join(self.dirname, 'abs')
         os.mkdir(abspath)
Copyright (C) 2012-2017 Edgewall Software