Index: genshi/template/tests/loader.py
===================================================================
--- genshi/template/tests/loader.py	(revision 462)
+++ genshi/template/tests/loader.py	(working copy)
@@ -189,7 +189,44 @@
         loader = TemplateLoader([self.dirname], default_encoding='utf-8')
         loader.load('tmpl.html', encoding='iso-8859-1')
 
+    def test_fallback_when_include_found(self):
+        file1 = open(os.path.join(self.dirname, 'tmpl1.html'), 'w')
+        try:
+            file1.write("""<div>Included</div>""")
+        finally:
+            file1.close()
 
+        file2 = open(os.path.join(self.dirname, 'tmpl2.html'), 'w')
+        try:
+            file2.write("""<html xmlns:xi="http://www.w3.org/2001/XInclude">
+              <xi:include href="tmpl1.html"><xi:fallback>
+                Missing</xi:fallback></xi:include>
+            </html>""")
+        finally:
+            file2.close()
+
+        loader = TemplateLoader([self.dirname])
+        tmpl = loader.load('tmpl2.html')
+        self.assertEqual("""<html>
+              <div>Included</div>
+            </html>""", tmpl.generate().render())
+
+    def test_fallback_when_include_not_found(self):
+        file2 = open(os.path.join(self.dirname, 'tmpl2.html'), 'w')
+        try:
+            file2.write("""<html xmlns:xi="http://www.w3.org/2001/XInclude">
+              <xi:include href="tmpl1.html"><xi:fallback>
+              Missing</xi:fallback></xi:include>
+            </html>""")
+        finally:
+            file2.close()
+
+        loader = TemplateLoader([self.dirname])
+        tmpl = loader.load('tmpl2.html')
+        self.assertEqual("""<html>
+              Missing
+            </html>""", tmpl.generate().render())
+
 def suite():
     suite = unittest.TestSuite()
     suite.addTest(doctest.DocTestSuite(TemplateLoader.__module__))
