[z3-checkins] r33393 - in z3/deliverance/branches/packaged/deliverance: . test-data

cabraham at codespeak.net cabraham at codespeak.net
Tue Oct 17 22:49:24 CEST 2006


Author: cabraham
Date: Tue Oct 17 22:49:22 2006
New Revision: 33393

Added:
   z3/deliverance/branches/packaged/deliverance/test-data/test_xinclude.xml
   z3/deliverance/branches/packaged/deliverance/test-data/xincluderules.xml
Modified:
   z3/deliverance/branches/packaged/deliverance/tests.py
Log:
added test for rules xinclude that doesn't use wsgi; modified tests.py to accomodate this functionality

Added: z3/deliverance/branches/packaged/deliverance/test-data/test_xinclude.xml
==============================================================================
--- (empty file)
+++ z3/deliverance/branches/packaged/deliverance/test-data/test_xinclude.xml	Tue Oct 17 22:49:22 2006
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deliverance-test-suite>
+
+<!-- tests xinclude in the rules --> 
+<deliverance-test>
+  <rules xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.plone.org/deliverance">
+    <xi:include href="xincluderules.xml" />
+  </rules>
+
+  <theme base="http://example.com"> 
+    <html><head><title>Blah</title></head><body><div></div><div id="foo">Dummy Content<p>HI!</p></div>
+    </body></html>
+  </theme>
+
+  <content> 
+    <html><body><div class="bar">Real Content</div><span class="bar">1</span><span class="quux">2</span><p>zzz</p><span class="bar">3</span></body></html>
+  </content>
+  
+  <output>
+    <html><head><title>Blah</title></head><body><div></div>
+	<div id="foo">Dummy Content<p>HI!</p><span class="bar">1</span><span class="bar">3</span></div></body></html>
+  </output> 
+</deliverance-test>
+
+
+
+</deliverance-test-suite>

Added: z3/deliverance/branches/packaged/deliverance/test-data/xincluderules.xml
==============================================================================
--- (empty file)
+++ z3/deliverance/branches/packaged/deliverance/test-data/xincluderules.xml	Tue Oct 17 22:49:22 2006
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<rules xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="http://www.plone.org/deliverance">
+  <append theme=".//div[@id='foo']" content=".//span[@class='bar']" />
+</rules>

Modified: z3/deliverance/branches/packaged/deliverance/tests.py
==============================================================================
--- z3/deliverance/branches/packaged/deliverance/tests.py	(original)
+++ z3/deliverance/branches/packaged/deliverance/tests.py	Tue Oct 17 22:49:22 2006
@@ -5,6 +5,7 @@
 from deliverance.interpreter import Renderer
 #from deliverance.xslt import Renderer
 import copy 
+import urllib
 
 class DeliveranceTestCase:
 
@@ -17,10 +18,20 @@
         self.output = output
 
     def __call__(self, name):
+        def reference_resolver(href, parse, encoding=None):
+            f = urllib.urlopen(href)
+            content = f.read()
+            f.close()
+            if parse == "xml":
+                return etree.XML(content)
+            elif encoding:
+                return content.decode(encoding)
+
         renderer = Renderer(
             theme=self.theme,
             theme_uri=self.theme_uri,
-            rule=self.rules, rule_uri=self.rules_uri)
+            rule=self.rules, rule_uri=self.rules_uri,
+            reference_resolver=reference_resolver)
         actual = renderer.render(self.content)
         reporter = []
         result = xml_compare(actual, self.output, reporter.append)
@@ -80,10 +91,9 @@
             outputbody = copy.deepcopy(output[0])
         output[:] = []
 
-
         case = DeliveranceTestCase(
             rules=rules,
-            rules_uri = fn, # not sure about this
+            rules_uri = fn,
             theme=themebody,
             theme_uri=el.find('theme').attrib['base'],
             content=contentbody,


More information about the z3-checkins mailing list