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 real
 ly really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really
  really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really r
 eally really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really rea
 lly really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really really really really really really really really really 
really really really 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>[EMAIL PROTECTED]</td>
+       <td>some smallattr</td>
+</tr>
+<tr>
+       <td>verifyAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>some smallattr</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>large-attribute</td>
+       <td></td>
+</tr>
+<tr>
+       <td>waitForAttribute</td>
+       <td>[EMAIL PROTECTED]</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 
h20202020202020202020202020202020202020202020202
 02020202020202020 
h212121212121212121212121212121212121212121212121212121212121212121 
h22222222222222222222222222222222222222222222222222222222222222222222 
h2323232323232323232323232323232323232323232323232323232323232323232323 
h242424242424242424242424242424242424242424242424242424242424242424242424 
h25252525252525252525252525252525252525252525252525252525252525252525252525 
h2626262626262626262626262626262626262626262626262626262626262626262626262626 
h272727272727272727272727272727272727272727272727272727272727272727272727272727 
h28282828282828282828282828282828282828282828282828282828282828282828282828282828
 
h2929292929292929292929292929292929292929292929292929292929292929292929292929292929
 
h2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
 
h2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
 
h2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c
 h2d2d2d2d2d2d2d2d2d2d2d
 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 
h2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e
 
h2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f
 
h303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030
 
h31313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131
 
h3232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232
 
h333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
 
h34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434
 
h3535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535
 
h363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636
 h3
 
7373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737
 
h3838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838
 
h393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939
 
h3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a
 
h3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b
 
h3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c
 
h3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d
 
h3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e
 h3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f
 
3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f
 
h40404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040
 
h4141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141
 
h424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242
 
h43434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343
 
h4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444
 
h454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545
 largeattr</td>
+</tr>
+<tr>
+       <td>verifyAttribute</td>
+       <td>[EMAIL PROTECTED]</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 
h20202020202020202020202020202020202020202020202
 02020202020202020 
h212121212121212121212121212121212121212121212121212121212121212121 
h22222222222222222222222222222222222222222222222222222222222222222222 
h2323232323232323232323232323232323232323232323232323232323232323232323 
h242424242424242424242424242424242424242424242424242424242424242424242424 
h25252525252525252525252525252525252525252525252525252525252525252525252525 
h2626262626262626262626262626262626262626262626262626262626262626262626262626 
h272727272727272727272727272727272727272727272727272727272727272727272727272727 
h28282828282828282828282828282828282828282828282828282828282828282828282828282828
 
h2929292929292929292929292929292929292929292929292929292929292929292929292929292929
 
h2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
 
h2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
 
h2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c
 h2d2d2d2d2d2d2d2d2d2d2d
 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 
h2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e
 
h2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f
 
h303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030
 
h31313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131
 
h3232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232
 
h333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
 
h34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434
 
h3535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535
 
h363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636
 h3
 
7373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737
 
h3838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838
 
h393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939
 
h3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a
 
h3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b
 
h3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c
 
h3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d
 
h3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e
 h3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f
 
3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f
 
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>[EMAIL PROTECTED]</td>
+       <td>text & stuff</td>
+</tr>
+<tr>
+       <td>verifyAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>text & stuff</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>attr-lt</td>
+       <td></td>
+</tr>
+<tr>
+       <td>waitForAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>text &lt; stuff</td>
+</tr>
+<tr>
+       <td>verifyAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>text &lt; stuff</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>attr-gt</td>
+       <td></td>
+</tr>
+<tr>
+       <td>waitForAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>text &gt; stuff</td>
+</tr>
+<tr>
+       <td>verifyAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>text &gt; stuff</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>attr-endcdata</td>
+       <td></td>
+</tr>
+<tr>
+       <td>waitForAttribute</td>
+       <td>[EMAIL PROTECTED]</td>
+       <td>before ]]&gt; after</td>
+</tr>
+<tr>
+       <td>verifyAttribute</td>
+       <td>[EMAIL PROTECTED]</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('''\
_______________________________________________
Kukit-checkins mailing list
[email protected]
http://codespeak.net/mailman/listinfo/kukit-checkins

Reply via email to