[KSS-checkins] r50377 - in kukit/kss.core/trunk/kss/core: . browser plugins/core/demo plugins/core/demo/selenium_tests tests

jvloothuis at codespeak.net jvloothuis at codespeak.net
Sun Jan 6 15:24:58 CET 2008


Author: jvloothuis
Date: Sun Jan  6 15:24:58 2008
New Revision: 50377

Added:
   kukit/kss.core/trunk/kss/core/plugins/core/demo/selenium_tests/protocol.html
Modified:
   kukit/kss.core/trunk/kss/core/browser/errorresponse.pt
   kukit/kss.core/trunk/kss/core/commands.py
   kukit/kss.core/trunk/kss/core/plugins/core/demo/protocol.pt
   kukit/kss.core/trunk/kss/core/tests/kukitresponse_test.pt
   kukit/kss.core/trunk/kss/core/tests/test_browserview.py
   kukit/kss.core/trunk/kss/core/tests/test_kssview_core.py
Log:

Increased the version number of all responses to 1.1 as discussed with
Godefroid and Balazs since we currently put HTML inside CDATA nodes
(we previously made HTML part of the response DOM).

Fixed problems in the protocol due to improper escaping

Fixed a problem with the protocol and Firefox where Firefox splits
text nodes larger than 4K


Modified: kukit/kss.core/trunk/kss/core/browser/errorresponse.pt
==============================================================================
--- kukit/kss.core/trunk/kss/core/browser/errorresponse.pt	(original)
+++ kukit/kss.core/trunk/kss/core/browser/errorresponse.pt	Sun Jan  6 15:24:58 2008
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
-<kukit xmlns="http://www.kukit.org/commands/1.0"
+<kukit xmlns="http://www.kukit.org/commands/1.1"
       xmlns:tal="http://xml.zope.org/namespaces/tal"
       xmlns:metal="http://xml.zope.org/namespaces/metal">
 <commands>

Modified: kukit/kss.core/trunk/kss/core/commands.py
==============================================================================
--- kukit/kss.core/trunk/kss/core/commands.py	(original)
+++ kukit/kss.core/trunk/kss/core/commands.py	Sun Jan  6 15:24:58 2008
@@ -22,6 +22,7 @@
 in the defined format
 '''
 
+from xml.sax.saxutils import escape as xml_escape
 from zope.interface import implements
 from zope.app.pagetemplate.viewpagetemplatefile import ViewPageTemplateFile
 from interfaces import IKSSCommands, IKSSCommand, IKSSParam, IKSSCommandView
@@ -106,6 +107,16 @@
     # just send complex data types directly with AddParam
 
     def addParam(self, name, content=''):
+        # Check for the size of the content. Larger than 4K will give
+        # problems with Firefox (which splits text nodes). Therefore
+        # we give this special treatment.
+        if len(content) > 4096:
+            return self.addCdataParam(name, content)
+        else:
+            # Escape all XML characters
+            return self._addParam(name, content=xml_escape(content))
+
+    def _addParam(self, name, content=''):
         'Add the param as is'
         param = KSSParam(name, content)
         self.params.append(param)
@@ -115,14 +126,14 @@
     # Some helpers
     #
 
-    def addUnicodeParam(self, name, content=''):
+    def addUnicodeParam(self, name, content=u''):
         'Add the param as unicode'
-        self.addParam(name, content=content)
+        self.addParam(name, content)
 
-    def addStringParam(self, name, content='', encoding='utf'):
+    def addStringParam(self, name, content='', encoding='utf8'):
         'Add the param as an encoded string, by default UTF-8'
-        content = unicode(content, 'utf')
-        self.addParam(name, content=content)
+        content = unicode(content, encoding)
+        self.addUnicodeParam(name, content=content)
 
     def addHtmlParam(self, name, content=''):
         'Add the param as an HTML content.'
@@ -134,12 +145,14 @@
     def addXmlParam(self, name, content=''):
         'Add the param as XML content'
         content = XmlParser(content)().encode('ascii', 'xmlcharrefreplace')
-        self.addParam(name, content=content)
+        self._addParam(name, content=content)
 
     def addCdataParam(self, name, content=''):
         'Add the param as a CDATA node'
-        content = '<![CDATA[%s]]>' % (content, )
-        self.addParam(name, content=content)
+        # Replace `>` part of `]]>` with the entity ref so it won't
+        # accidentally close the CDATA (required by the XML spec)
+        content = '<![CDATA[%s]]>' % content.replace(']]>', ']]&gt;')
+        self._addParam(name, content=content)
 
 
     # --

Modified: kukit/kss.core/trunk/kss/core/plugins/core/demo/protocol.pt
==============================================================================
--- kukit/kss.core/trunk/kss/core/plugins/core/demo/protocol.pt	(original)
+++ kukit/kss.core/trunk/kss/core/plugins/core/demo/protocol.pt	Sun Jan  6 15:24:58 2008
@@ -29,6 +29,9 @@
       <li><a href="#" id="small-dataset">Small dataset</a></li>
       <li><a href="#" id="large-dataset">Large dataset</a></li>
     </ol>
+    <div id="dataset-output">
+      The contents of this node will change
+    </div>
 
     <p>Currently kss.core treats non-HTML commands differently from
     others. The following examples show why I think this to be a

Added: kukit/kss.core/trunk/kss/core/plugins/core/demo/selenium_tests/protocol.html
==============================================================================
--- (empty file)
+++ kukit/kss.core/trunk/kss/core/plugins/core/demo/selenium_tests/protocol.html	Sun Jan  6 15:24:58 2008
@@ -0,0 +1,169 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>protocol</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">protocol</td></tr>
+</thead><tbody>
+<tr>
+	<td>open</td>
+	<td>/demo/client-server-protocol</td>
+	<td></td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>small-dataset</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForText</td>
+	<td>css=#dataset-output em</td>
+	<td>Worked</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>large-dataset</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForText</td>
+	<td>css=#dataset-output em</td>
+	<td>really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really large text</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>small-attribute</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForAttribute</td>
+	<td>attribute-output at class</td>
+	<td>some smallattr</td>
+</tr>
+<tr>
+	<td>verifyAttribute</td>
+	<td>attribute-output at class</td>
+	<td>some smallattr</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>large-attribute</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForAttribute</td>
+	<td>attribute-output at class</td>
+	<td>h h1 h22 h333 h4444 h55555 h666666 h7777777 h88888888 h999999999 haaaaaaaaaa hbbbbbbbbbbb hcccccccccccc hddddddddddddd heeeeeeeeeeeeee hfffffffffffffff h10101010101010101010101010101010 h1111111111111111111111111111111111 h121212121212121212121212121212121212 h13131313131313131313131313131313131313 h1414141414141414141414141414141414141414 h151515151515151515151515151515151515151515 h16161616161616161616161616161616161616161616 h1717171717171717171717171717171717171717171717 h181818181818181818181818181818181818181818181818 h19191919191919191919191919191919191919191919191919 h1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a h1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b h1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c h1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d h1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e h1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f h2020202020202020202020202020202020202020202020202020202020202020 h212121212121212121212121212121212121212121212121212121212121212121 h22222222222222222222222222222222222222222222222222222222222222222222 h2323232323232323232323232323232323232323232323232323232323232323232323 h242424242424242424242424242424242424242424242424242424242424242424242424 h25252525252525252525252525252525252525252525252525252525252525252525252525 h2626262626262626262626262626262626262626262626262626262626262626262626262626 h272727272727272727272727272727272727272727272727272727272727272727272727272727 h28282828282828282828282828282828282828282828282828282828282828282828282828282828 h2929292929292929292929292929292929292929292929292929292929292929292929292929292929 h2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a h2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b h2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c h2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d h2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e h2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f h303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030 h31313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131 h3232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232 h333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333 h34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434 h3535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535 h363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636 h37373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737 h3838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838 h393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939 h3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a h3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b h3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c h3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d h3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e h3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f h40404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040 h4141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141 h424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242 h43434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343 h4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444 h454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545 largeattr</td>
+</tr>
+<tr>
+	<td>verifyAttribute</td>
+	<td>attribute-output at class</td>
+	<td>h h1 h22 h333 h4444 h55555 h666666 h7777777 h88888888 h999999999 haaaaaaaaaa hbbbbbbbbbbb hcccccccccccc hddddddddddddd heeeeeeeeeeeeee hfffffffffffffff h10101010101010101010101010101010 h1111111111111111111111111111111111 h121212121212121212121212121212121212 h13131313131313131313131313131313131313 h1414141414141414141414141414141414141414 h151515151515151515151515151515151515151515 h16161616161616161616161616161616161616161616 h1717171717171717171717171717171717171717171717 h181818181818181818181818181818181818181818181818 h19191919191919191919191919191919191919191919191919 h1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a h1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b h1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c h1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d h1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e h1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f h2020202020202020202020202020202020202020202020202020202020202020 h212121212121212121212121212121212121212121212121212121212121212121 h22222222222222222222222222222222222222222222222222222222222222222222 h2323232323232323232323232323232323232323232323232323232323232323232323 h242424242424242424242424242424242424242424242424242424242424242424242424 h25252525252525252525252525252525252525252525252525252525252525252525252525 h2626262626262626262626262626262626262626262626262626262626262626262626262626 h272727272727272727272727272727272727272727272727272727272727272727272727272727 h28282828282828282828282828282828282828282828282828282828282828282828282828282828 h2929292929292929292929292929292929292929292929292929292929292929292929292929292929 h2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a h2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b h2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c h2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d h2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e h2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f h303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030 h31313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131 h3232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232 h333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333 h34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434 h3535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535 h363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636 h37373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737 h3838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838 h393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939 h3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a h3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b h3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c h3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d h3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e h3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f h40404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040 h4141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141 h424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242 h43434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343 h4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444 h454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545 largeattr</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>amp</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForText</td>
+	<td>character-output</td>
+	<td>text & stuff</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>lt</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForText</td>
+	<td>character-output</td>
+	<td>text &lt; stuff</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>gt</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForText</td>
+	<td>character-output</td>
+	<td>text &gt; stuff</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>endcdata</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForText</td>
+	<td>character-output</td>
+	<td>before ]]&gt; after</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>attr-amp</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>text & stuff</td>
+</tr>
+<tr>
+	<td>verifyAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>text & stuff</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>attr-lt</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>text &lt; stuff</td>
+</tr>
+<tr>
+	<td>verifyAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>text &lt; stuff</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>attr-gt</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>text &gt; stuff</td>
+</tr>
+<tr>
+	<td>verifyAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>text &gt; stuff</td>
+</tr>
+<tr>
+	<td>click</td>
+	<td>attr-endcdata</td>
+	<td></td>
+</tr>
+<tr>
+	<td>waitForAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>before ]]&gt; after</td>
+</tr>
+<tr>
+	<td>verifyAttribute</td>
+	<td>character-attr-output at title</td>
+	<td>before ]]&gt; after</td>
+</tr>
+
+</tbody></table>
+</body>
+</html>

Modified: kukit/kss.core/trunk/kss/core/tests/kukitresponse_test.pt
==============================================================================
--- kukit/kss.core/trunk/kss/core/tests/kukitresponse_test.pt	(original)
+++ kukit/kss.core/trunk/kss/core/tests/kukitresponse_test.pt	Sun Jan  6 15:24:58 2008
@@ -1,5 +1,5 @@
 <?xml version="1.0" ?>
-<kukit xmlns="http://www.kukit.org/commands/1.0"
+<kukit xmlns="http://www.kukit.org/commands/1.1"
       xmlns:tal="http://xml.zope.org/namespaces/tal"
       xmlns:metal="http://xml.zope.org/namespaces/metal">
   <commands>

Modified: kukit/kss.core/trunk/kss/core/tests/test_browserview.py
==============================================================================
--- kukit/kss.core/trunk/kss/core/tests/test_browserview.py	(original)
+++ kukit/kss.core/trunk/kss/core/tests/test_browserview.py	Sun Jan  6 15:24:58 2008
@@ -31,7 +31,7 @@
         header = response.getHeader('x-ksscommands')
         self.assert_('the_&amp;lt;&amp;gt;message' in header)   # no < > in the message
         self.assert_('\n' not in header)   # no /n in the payload: would destroy the page
-        self.assertEqual(header, '<?xml version="1.0"?> <kukit xmlns="http://www.kukit.org/commands/1.0"> <commands> \t<command name="error"> \t\t<param name="type">system</param> \t\t<param name="message">TheError: the_&amp;lt;&amp;gt;message  </param> \t</command> </commands> </kukit> ')
+        self.assertEqual(header, '<?xml version="1.0"?> <kukit xmlns="http://www.kukit.org/commands/1.1"> <commands> \t<command name="error"> \t\t<param name="type">system</param> \t\t<param name="message">TheError: the_&amp;lt;&amp;gt;message  </param> \t</command> </commands> </kukit> ')
 
 def test_suite():
     suites = []

Modified: kukit/kss.core/trunk/kss/core/tests/test_kssview_core.py
==============================================================================
--- kukit/kss.core/trunk/kss/core/tests/test_kssview_core.py	(original)
+++ kukit/kss.core/trunk/kss/core/tests/test_kssview_core.py	Sun Jan  6 15:24:58 2008
@@ -100,7 +100,7 @@
     def _wrapped_commands(self, inline):
         header = textwrap.dedent(u'''\
                 <?xml version="1.0" ?>
-                <kukit xmlns="http://www.kukit.org/commands/1.0">
+                <kukit xmlns="http://www.kukit.org/commands/1.1">
                 <commands>
                 ''')
         footer = textwrap.dedent('''\


More information about the Kukit-checkins mailing list