[Checkins] SVN: zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/ real testbrowser now prints out the DOCTYPE and html tags if available when

Sebastian Wehrmann sw at gocept.com
Fri Jul 4 09:46:21 EDT 2008


Log message for revision 87999:
  real testbrowser now prints out the DOCTYPE and html tags if available when
  using browser.contents
  

Changed:
  U   zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/README.txt
  A   zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/ftests/doctype.html
  U   zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.js
  U   zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.py

-=-
Modified: zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/README.txt
===================================================================
--- zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/README.txt	2008-07-04 13:45:39 UTC (rev 87998)
+++ zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/README.txt	2008-07-04 13:46:20 UTC (rev 87999)
@@ -44,7 +44,15 @@
     >>> '<h1>Simple Page</h1>' in browser.contents
     True
 
+For pages with doctype definitions :
 
+    >>> browser.open('doctype.html')
+    >>> print browser.contents
+    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+    <html>
+    <head>...
+
+
 Checking for HTML
 -----------------
 

Added: zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/ftests/doctype.html
===================================================================
--- zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/ftests/doctype.html	                        (rev 0)
+++ zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/ftests/doctype.html	2008-07-04 13:46:20 UTC (rev 87999)
@@ -0,0 +1,9 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+  <head>
+    <title>Doctype Test</title>
+  </head>
+  <body>
+    <h1>Doctype Test</h1>
+  </body>
+</html>


Property changes on: zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/ftests/doctype.html
___________________________________________________________________
Name: svn:keywords
   + Id Rev Date
Name: svn:eol-style
   + native

Modified: zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.js
===================================================================
--- zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.js	2008-07-04 13:45:39 UTC (rev 87998)
+++ zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.js	2008-07-04 13:46:20 UTC (rev 87999)
@@ -571,3 +571,20 @@
     }
     return tokens;
 }
+
+function tb_get_contents() {
+    // get doctype
+    var node = content.document.firstChild;
+    var contents = '';
+    while (node) {
+      if (node.nodeType == node.DOCUMENT_TYPE_NODE) {
+        contents += '<!DOCTYPE ' + node.name.toLowerCase() + ' PUBLIC "' +
+          node.publicId + '" "' + node.systemId + '">\n';
+      } else if (node.nodeType == node.ELEMENT_NODE) {
+        var name = node.nodeName.toLowerCase();
+        contents += '<' + name + '>\n' + node.innerHTML + '</' + name + '>';
+      }
+      node = node.nextSibling;
+    }
+    return contents;
+}

Modified: zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.py
===================================================================
--- zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.py	2008-07-04 13:45:39 UTC (rev 87998)
+++ zc.testbrowser/branches/sweh-mozlab0.1.9/src/zc/testbrowser/real.py	2008-07-04 13:46:20 UTC (rev 87999)
@@ -134,7 +134,7 @@
         self.expect()
         self.telnet.write(js)
         i, match, text = self.expect()
-        #if '!!!' in text: import pdb;pdb.set_trace() # XXX debug only, remove
+        if '!!!' in text: import pdb;pdb.set_trace() # XXX debug only, remove
         if '!!!' in text: raise Exception('FAILED: ' + js)
         result = text.rsplit('\n', 1)
         if len(result) == 1:
@@ -224,7 +224,7 @@
         if base == 'text' and 'html' not in sub:
             return self.execute(
                 "content.document.getElementsByTagName('pre')[0].innerHTML")
-        return self.execute('content.document.documentElement.innerHTML')
+        return self.execute('tb_get_contents()')
 
     def reload(self):
         self.execute('content.document.location = content.document.location')



More information about the Checkins mailing list