2010-07-21 Adam Barth <abarth@webkit.org>
authorabarth@webkit.org <abarth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 21 Jul 2010 21:41:28 +0000 (21:41 +0000)
committerabarth@webkit.org <abarth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 21 Jul 2010 21:41:28 +0000 (21:41 +0000)
        Reviewed by Eric Seidel.

        Pull HTML5lib test suite from upstream
        https://bugs.webkit.org/show_bug.cgi?id=42776

        Grab a bunch of new tests from html5lib upstream.  Also, upstream
        tweaked some of our tests, so I've updated our tests to match the
        upstream tweaks.

        * html5lib/resources/adoption01.dat:
        * html5lib/resources/doctype01.dat:
        * html5lib/resources/scripted/adoption01.dat: Added.
        * html5lib/resources/scripted/webkit01.dat: Added.
        * html5lib/resources/tests1.dat:
        * html5lib/resources/tests17.dat: Added.
        * html5lib/resources/tests18.dat: Added.
        * html5lib/resources/tests19.dat: Added.
        * html5lib/resources/tests2.dat:
        * html5lib/resources/tests20.dat: Added.
        * html5lib/resources/tricky01.dat:
        * html5lib/resources/webkit01.dat:
        * html5lib/runner-expected-html5.txt:
        * html5lib/runner-expected.txt:
        * html5lib/runner.html:
        * html5lib/webkit-resumer-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@63858 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 files changed:
LayoutTests/ChangeLog
LayoutTests/html5lib/resources/adoption01.dat
LayoutTests/html5lib/resources/doctype01.dat
LayoutTests/html5lib/resources/scripted/adoption01.dat [new file with mode: 0644]
LayoutTests/html5lib/resources/scripted/webkit01.dat [new file with mode: 0644]
LayoutTests/html5lib/resources/tests1.dat
LayoutTests/html5lib/resources/tests17.dat [new file with mode: 0644]
LayoutTests/html5lib/resources/tests18.dat [new file with mode: 0644]
LayoutTests/html5lib/resources/tests19.dat [new file with mode: 0644]
LayoutTests/html5lib/resources/tests2.dat
LayoutTests/html5lib/resources/tests20.dat [new file with mode: 0644]
LayoutTests/html5lib/resources/tricky01.dat
LayoutTests/html5lib/resources/webkit01.dat
LayoutTests/html5lib/runner-expected-html5.txt
LayoutTests/html5lib/runner-expected.txt
LayoutTests/html5lib/runner.html
LayoutTests/html5lib/webkit-resumer-expected.txt

index 5dd5454..048d896 100644 (file)
@@ -1,3 +1,31 @@
+2010-07-21  Adam Barth  <abarth@webkit.org>
+
+        Reviewed by Eric Seidel.
+
+        Pull HTML5lib test suite from upstream
+        https://bugs.webkit.org/show_bug.cgi?id=42776
+
+        Grab a bunch of new tests from html5lib upstream.  Also, upstream
+        tweaked some of our tests, so I've updated our tests to match the
+        upstream tweaks.
+
+        * html5lib/resources/adoption01.dat:
+        * html5lib/resources/doctype01.dat:
+        * html5lib/resources/scripted/adoption01.dat: Added.
+        * html5lib/resources/scripted/webkit01.dat: Added.
+        * html5lib/resources/tests1.dat:
+        * html5lib/resources/tests17.dat: Added.
+        * html5lib/resources/tests18.dat: Added.
+        * html5lib/resources/tests19.dat: Added.
+        * html5lib/resources/tests2.dat:
+        * html5lib/resources/tests20.dat: Added.
+        * html5lib/resources/tricky01.dat:
+        * html5lib/resources/webkit01.dat:
+        * html5lib/runner-expected-html5.txt:
+        * html5lib/runner-expected.txt:
+        * html5lib/runner.html:
+        * html5lib/webkit-resumer-expected.txt:
+
 2010-07-21  Tony Chang  <tony@chromium.org>
 
         Reviewed by Adam Barth.
index ca6d1d4..0362f37 100644 (file)
 |   <body>
 |     <a>
 |       "1"
-|       <button>
+|     <button>
+|       <a>
 |         "2"
-|     "3"
+|       "3"
 
 #data
 <a>1<b>2</a>3</b>
 |       "5"
 
 #data
-<p><b id="A"><script>document.getElementById("A").id = "B"</script></p>TEXT</b>
-#errors
-#document
-| <html>
-|   <head>
-|   <body>
-|     <p>
-|       <b>
-|         id="B"
-|         <script>
-|           "document.getElementById("A").id = "B""
-|     <b>
-|       id="A"
-|       "TEXT"
-
-#data
 <table><a>1<td>2</td>3</table>
 #errors
 #document
index abd2f0e..ae45732 100644 (file)
 <!DOCTYPE potato SYSTEM 'taco"'>Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "" "taco"">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE potato SYSTEM "taco">Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "" "taco">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE potato SYSTEM "tai'co">Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "" "tai'co">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE potato PUBLIC "go'of">Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "go'of" "">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE potato PUBLIC 'go'of'>Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "go" "">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE potato PUBLIC 'go:hh   of' >Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "go:hh   of" "">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE potato PUBLIC "W3C-//dfdf" SYSTEM ggg>Hello
 #errors
 #document
-| <!DOCTYPE potato>
+| <!DOCTYPE potato "W3C-//dfdf" "">
 | <html>
 |   <head>
 |   <body>
    "http://www.w3.org/TR/html4/strict.dtd">Hello
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | <html>
 |   <head>
 |   <body>
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 | <html>
 |   <head>
 |   <body>
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
 | <html>
 |   <head>
 |   <body>
     "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE HTML SYSTEM "http://www.w3.org/DTD/HTML4-strict.dtd"><body><b>Mine!</b></body>
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "" "http://www.w3.org/DTD/HTML4-strict.dtd">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'http://www.w3.org/TR/html4/strict.dtd'>
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01//EN"'http://www.w3.org/TR/html4/strict.dtd'>
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | <html>
 |   <head>
 |   <body>
 <!DOCTYPE HTML PUBLIC'-//W3C//DTD HTML 4.01//EN''http://www.w3.org/TR/html4/strict.dtd'>
 #errors
 #document
-| <!DOCTYPE html>
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | <html>
 |   <head>
 |   <body>
diff --git a/LayoutTests/html5lib/resources/scripted/adoption01.dat b/LayoutTests/html5lib/resources/scripted/adoption01.dat
new file mode 100644 (file)
index 0000000..4e08d0e
--- /dev/null
@@ -0,0 +1,15 @@
+#data
+<p><b id="A"><script>document.getElementById("A").id = "B"</script></p>TEXT</b>
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <b>
+|         id="B"
+|         <script>
+|           "document.getElementById("A").id = "B""
+|     <b>
+|       id="A"
+|       "TEXT"
diff --git a/LayoutTests/html5lib/resources/scripted/webkit01.dat b/LayoutTests/html5lib/resources/scripted/webkit01.dat
new file mode 100644 (file)
index 0000000..ef4a41c
--- /dev/null
@@ -0,0 +1,28 @@
+#data
+1<script>document.write("2")</script>3
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     "1"
+|     <script>
+|       "document.write("2")"
+|     "23"
+
+#data
+1<script>document.write("<script>document.write('2')</scr"+ "ipt><script>document.write('3')</scr" + "ipt>")</script>4
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     "1"
+|     <script>
+|       "document.write("<script>document.write('2')</scr"+ "ipt><script>document.write('3')</scr" + "ipt>")"
+|     <script>
+|       "document.write('2')"
+|     "2"
+|     <script>
+|       "document.write('3')"
+|     "34"
index ad58d31..6a11783 100644 (file)
@@ -259,7 +259,7 @@ Line: 1 Col: 24 End tag (a) violates step 1, paragraph 1 of the adoption agency
 |       "Z"
 
 #data
-<b><button></b></button></b>
+<b><button>foo</b>bar
 #errors
 Line: 1 Col: 3 Unexpected start tag (b). Expected DOCTYPE.
 Line: 1 Col: 15 End tag (b) violates step 1, paragraph 1 of the adoption agency algorithm.
@@ -268,7 +268,23 @@ Line: 1 Col: 15 End tag (b) violates step 1, paragraph 1 of the adoption agency
 |   <head>
 |   <body>
 |     <b>
+|     <button>
+|       <b>
+|         "foo"
+|       "bar"
+
+#data
+<!DOCTYPE html><span><button>foo</span>bar
+#errors
+39: End tag “span” seen but there were unclosed elements.
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <span>
 |       <button>
+|         "foobar"
 
 #data
 <p><b><div><marquee></p></b></div>X
@@ -1474,7 +1490,8 @@ Line: 1 Col: 15 End tag (b) violates step 1, paragraph 1 of the adoption agency
 |   <head>
 |   <body>
 |     <b>
-|       <button>
+|     <button>
+|       <b>
 
 #data
 <p><b><div><marquee></p></b></div>
diff --git a/LayoutTests/html5lib/resources/tests17.dat b/LayoutTests/html5lib/resources/tests17.dat
new file mode 100644 (file)
index 0000000..da59ef8
--- /dev/null
@@ -0,0 +1,153 @@
+#data
+<!doctype html><table><tbody><select><tr>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|     <table>
+|       <tbody>
+|         <tr>
+
+#data
+<!doctype html><table><tr><select><td>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+
+#data
+<!doctype html><table><tr><td><select><td>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <select>
+|           <td>
+
+#data
+<!doctype html><table><tr><th><select><td>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <th>
+|             <select>
+|           <td>
+
+#data
+<!doctype html><table><caption><select><tr>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <caption>
+|         <select>
+|       <tbody>
+|         <tr>
+
+#data
+<!doctype html><select><tr>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><select><td>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><select><th>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><select><tbody>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><select><thead>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><select><tfoot>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><select><caption>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><table><tr></table>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|     "a"
\ No newline at end of file
diff --git a/LayoutTests/html5lib/resources/tests18.dat b/LayoutTests/html5lib/resources/tests18.dat
new file mode 100644 (file)
index 0000000..680e1f0
--- /dev/null
@@ -0,0 +1,269 @@
+#data
+<!doctype html><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <plaintext>
+|       "</plaintext>"
+
+#data
+<!doctype html><table><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <plaintext>
+|       "</plaintext>"
+|     <table>
+
+#data
+<!doctype html><table><tbody><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <plaintext>
+|       "</plaintext>"
+|     <table>
+|       <tbody>
+
+#data
+<!doctype html><table><tbody><tr><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <plaintext>
+|       "</plaintext>"
+|     <table>
+|       <tbody>
+|         <tr>
+
+#data
+<!doctype html><table><tbody><tr><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <plaintext>
+|       "</plaintext>"
+|     <table>
+|       <tbody>
+|         <tr>
+
+#data
+<!doctype html><table><td><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <plaintext>
+|               "</plaintext>"
+
+#data
+<!doctype html><table><caption><plaintext></plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <caption>
+|         <plaintext>
+|           "</plaintext>"
+
+#data
+<!doctype html><table><tr><style></script></style>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "abc"
+|     <table>
+|       <tbody>
+|         <tr>
+|           <style>
+|             "</script>"
+
+#data
+<!doctype html><table><tr><script></style></script>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "abc"
+|     <table>
+|       <tbody>
+|         <tr>
+|           <script>
+|             "</style>"
+
+#data
+<!doctype html><table><caption><style></script></style>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <caption>
+|         <style>
+|           "</script>"
+|         "abc"
+
+#data
+<!doctype html><table><td><style></script></style>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <style>
+|               "</script>"
+|             "abc"
+
+#data
+<!doctype html><select><script></style></script>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <script>
+|         "</style>"
+|       "abc"
+
+#data
+<!doctype html><table><select><script></style></script>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <script>
+|         "</style>"
+|       "abc"
+|     <table>
+
+#data
+<!doctype html><table><tr><select><script></style></script>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <script>
+|         "</style>"
+|       "abc"
+|     <table>
+|       <tbody>
+|         <tr>
+
+#data
+<!doctype html><frameset></frameset><noframes>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|   <noframes>
+|     "abc"
+
+#data
+<!doctype html><frameset></frameset><noframes>abc</noframes><!--abc-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|   <noframes>
+|     "abc"
+|   <!-- abc -->
+
+#data
+<!doctype html><frameset></frameset></html><noframes>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|   <noframes>
+|     "abc"
+
+#data
+<!doctype html><frameset></frameset></html><noframes>abc</noframes><!--abc-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|   <noframes>
+|     "abc"
+| <!-- abc -->
+
+#data
+<!doctype html><table><tr></tbody><tfoot>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|       <tfoot>
+
+#data
+<!doctype html><table><td><svg></svg>abc<td>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <svg svg>
+|             "abc"
+|           <td>
diff --git a/LayoutTests/html5lib/resources/tests19.dat b/LayoutTests/html5lib/resources/tests19.dat
new file mode 100644 (file)
index 0000000..085faae
--- /dev/null
@@ -0,0 +1,1186 @@
+#data
+<!doctype html><math><mn DefinitionUrl="foo">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+|       <math mn>
+|         definitionURL="foo"
+
+#data
+<!doctype html><html></p><!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <!-- foo -->
+|   <head>
+|   <body>
+
+#data
+<!doctype html><head></head></p><!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <!-- foo -->
+|   <body>
+
+#data
+<!doctype html><body><p><pre>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <pre>
+
+#data
+<!doctype html><body><p><listing>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <listing>
+
+#data
+<!doctype html><p><plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <plaintext>
+
+#data
+<!doctype html><p><h1>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <h1>
+
+#data
+<!doctype html><form><isindex>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+
+#data
+<!doctype html><isindex action="POST">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       action="POST"
+|       <hr>
+|       <label>
+|         "This is a searchable index. Enter search keywords: "
+|         <input>
+|           name="isindex"
+|       <hr>
+
+#data
+<!doctype html><isindex prompt="this is isindex">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <hr>
+|       <label>
+|         "this is isindex"
+|         <input>
+|           name="isindex"
+|       <hr>
+
+#data
+<!doctype html><isindex type="hidden">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <hr>
+|       <label>
+|         "This is a searchable index. Enter search keywords: "
+|         <input>
+|           name="isindex"
+|           type="hidden"
+|       <hr>
+
+#data
+<!doctype html><isindex name="foo">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <hr>
+|       <label>
+|         "This is a searchable index. Enter search keywords: "
+|         <input>
+|           name="isindex"
+|       <hr>
+
+#data
+<!doctype html><ruby><p><rp>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <p>
+|       <rp>
+
+#data
+<!doctype html><ruby><div><span><rp>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <span>
+|       <rp>
+
+#data
+<!doctype html><ruby><div><p><rp>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <p>
+|       <rp>
+
+#data
+<!doctype html><ruby><p><rt>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <p>
+|       <rt>
+
+#data
+<!doctype html><ruby><div><span><rt>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <span>
+|       <rt>
+
+#data
+<!doctype html><ruby><div><p><rt>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <p>
+|       <rt>
+
+#data
+<!doctype html><math/><foo>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+|     <foo>
+
+#data
+<!doctype html><svg/><foo>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg svg>
+|     <foo>
+
+#data
+<!doctype html><div></body><!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <div>
+|   <!-- foo -->
+
+#data
+<!doctype html><h1><div><h3><span></h1>foo
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h1>
+|       <div>
+|         <h3>
+|           <span>
+|         "foo"
+
+#data
+<!doctype html><p></h3>foo
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       "foo"
+
+#data
+<!doctype html><h3><li>abc</h2>foo
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h3>
+|       <li>
+|         "abc"
+|     "foo"
+
+#data
+<!doctype html><table>abc<!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "abc"
+|     <table>
+|       <!-- foo -->
+
+#data
+<!doctype html><table>  <!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       "  "
+|       <!-- foo -->
+
+#data
+<!doctype html><table> b <!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     " b "
+|     <table>
+|       <!-- foo -->
+
+#data
+<!doctype html><select><option><option>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <option>
+|       <option>
+
+#data
+<!doctype html><select><option></optgroup>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <option>
+
+#data
+<!doctype html><select><option></optgroup>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <option>
+
+#data
+<!doctype html><p><math><mi><p><h1>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|         <math mi>
+|     <p>
+|     <h1>
+
+#data
+<!doctype html><p><math><mi><p><h1>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|         <math mi>
+|     <p>
+|     <h1>
+
+#data
+<!doctype html><frameset></noframes>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<!doctype html><html c=d><body></html><html a=b>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   a="b"
+|   c="d"
+|   <head>
+|   <body>
+
+#data
+<!doctype html><html c=d><frameset></frameset></html><html a=b>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   a="b"
+|   c="d"
+|   <head>
+|   <frameset>
+
+#data
+<!doctype html><html><frameset></frameset></html><!--foo-->
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+| <!-- foo -->
+
+#data
+<!doctype html><html><frameset></frameset></html>  
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|   "  "
+
+#data
+<!doctype html><html><frameset></frameset></html>abc
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<!doctype html><html><frameset></frameset></html><p>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<!doctype html><html><frameset></frameset></html></p>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<html><frameset></frameset></html><!doctype html>
+#errors
+#document
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<!doctype html><body><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+
+#data
+<!doctype html><p><frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+#data
+<!doctype html><p>a<frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       "a"
+
+#data
+<!doctype html><p> <frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+#data
+<!doctype html><pre><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <pre>
+
+#data
+<!doctype html><listing><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <listing>
+
+#data
+<!doctype html><li><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <li>
+
+#data
+<!doctype html><dd><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <dd>
+
+#data
+<!doctype html><dt><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <dt>
+
+#data
+<!doctype html><button><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <button>
+
+#data
+<!doctype html><applet><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <applet>
+
+#data
+<!doctype html><marquee><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <marquee>
+
+#data
+<!doctype html><object><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <object>
+
+#data
+<!doctype html><table><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+
+#data
+<!doctype html><area><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <area>
+
+#data
+<!doctype html><basefont><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <basefont>
+|   <frameset>
+
+#data
+<!doctype html><bgsound><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <bgsound>
+|   <frameset>
+
+#data
+<!doctype html><br><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <br>
+
+#data
+<!doctype html><embed><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <embed>
+
+#data
+<!doctype html><img><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <img>
+
+#data
+<!doctype html><input><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <input>
+
+#data
+<!doctype html><keygen><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <keygen>
+
+#data
+<!doctype html><wbr><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <wbr>
+
+#data
+<!doctype html><hr><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <hr>
+
+#data
+<!doctype html><textarea></textarea><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <textarea>
+
+#data
+<!doctype html><xmp></xmp><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <xmp>
+
+#data
+<!doctype html><iframe></iframe><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <iframe>
+
+#data
+<!doctype html><select></select><frameset>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+#data
+<!doctype html><svg></svg><frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+#data
+<!doctype html><math></math><frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+#data
+<!doctype html><svg><foreignObject><div> <frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+#data
+<!doctype html><svg>a</svg><frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg svg>
+|       "a"
+
+#data
+<!doctype html><svg> </svg><frameset><frame>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+#data
+<html>aaa<frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     "aaa"
+
+#data
+<html> a <frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     "a "
+
+#data
+<html>�<frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<html> � <frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<html>a�a<frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     "a�a"
+
+#data
+<html>��<frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<html>�
+ <frameset></frameset>
+#errors
+#document
+| <html>
+|   <head>
+|   <frameset>
+
+#data
+<!doctype html><p><math></p>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|     "a"
+
+#data
+<!doctype html><p><math><mn><span></p>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|         <math mn>
+|           <span>
+|     "a"
+
+#data
+<!doctype html><math></html>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+
+#data
+<!doctype html><meta charset="ascii">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <meta>
+|       charset="ascii"
+|   <body>
+
+#data
+<!doctype html><meta http-equiv="content-type" content="text/html;charset=ascii">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <meta>
+|       content="text/html;charset=ascii"
+|       http-equiv="content-type"
+|   <body>
+
+#data
+<!doctype html><head><!--aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa--><meta charset="utf8">
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <!-- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -->
+|     <meta>
+|       charset="utf8"
+|   <body>
+
+#data
+<!doctype html><html a=b><head></head><html c=d>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   a="b"
+|   c="d"
+|   <head>
+|   <body>
+
+#data
+<!doctype html><image/>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <img>
+
+#data
+<!doctype html>a<i>b<table>c<b>d</i>e</b>f
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "a"
+|     <i>
+|       "bc"
+|       <b>
+|         "de"
+|       "f"
+|       <table>
+
+#data
+<!doctype html><table><i>a<b>b<div>c<a>d</i>e</b>f
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|     <div>
+|       <b>
+|         <i>
+|           "c"
+|           <a>
+|             "d"
+|         <a>
+|           "e"
+|       <a>
+|         "f"
+|     <table>
+
+#data
+<!doctype html><i>a<b>b<div>c<a>d</i>e</b>f
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|     <div>
+|       <b>
+|         <i>
+|           "c"
+|           <a>
+|             "d"
+|         <a>
+|           "e"
+|       <a>
+|         "f"
+
+#data
+<!doctype html><table><i>a<b>b<div>c</i>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|       <div>
+|         <i>
+|           "c"
+|     <table>
+
+#data
+<!doctype html><table><i>a<b>b<div>c<a>d</i>e</b>f
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|     <div>
+|       <b>
+|         <i>
+|           "c"
+|           <a>
+|             "d"
+|         <a>
+|           "e"
+|       <a>
+|         "f"
+|     <table>
+
+#data
+<!doctype html><table><i>a<div>b<tr>c<b>d</i>e
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <div>
+|         "b"
+|     <i>
+|       "c"
+|       <b>
+|         "d"
+|     <b>
+|       "e"
+|     <table>
+|       <tbody>
+|         <tr>
+
+#data
+<!doctype html><table><td><table><i>a<div>b<b>c</i>d
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <i>
+|               "a"
+|             <div>
+|               <i>
+|                 "b"
+|                 <b>
+|                   "c"
+|               <b>
+|                 "d"
+|             <table>
+
+#data
+<!doctype html><body><bgsound>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <bgsound>
+
+#data
+<!doctype html><body><basefont>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <basefont>
+
+#data
+<!doctype html><a><b></a><basefont>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <basefont>
+
+#data
+<!doctype html><a><b></a><bgsound>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <bgsound>
+
+#data
+<!doctype html><figcaption><article></figcaption>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <figcaption>
+|       <article>
+|     "a"
+
+#data
+<!doctype html><summary><article></summary>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <summary>
+|       <article>
+|     "a"
index 54944c6..60d8592 100644 (file)
@@ -461,6 +461,19 @@ Line: 1 Col: 51 Expected closing tag. Unexpected end of file.
 |       <optgroup>
 
 #data
+<!DOCTYPE html><datalist><option>foo</datalist>bar
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <datalist>
+|       <option>
+|         "foo"
+|     "bar"
+
+#data
 <!DOCTYPE html><font><input><input></font>
 #errors
 #document
@@ -736,3 +749,15 @@ Line: 1 Col: 35 Unexpected character in comment found.
 |     ">"
 |     <!-- <!--x -->
 |     "-->"
+
+#data
+<!doctype html><div><form></form><div></div></div>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <div>
+|       <form>
+|       <div>
diff --git a/LayoutTests/html5lib/resources/tests20.dat b/LayoutTests/html5lib/resources/tests20.dat
new file mode 100644 (file)
index 0000000..854ac73
--- /dev/null
@@ -0,0 +1,294 @@
+#data
+<!doctype html><p><button><button>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|       <button>
+
+#data
+<!doctype html><p><button><address>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <address>
+
+#data
+<!doctype html><p><button><blockquote>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <blockquote>
+
+#data
+<!doctype html><p><button><menu>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <menu>
+
+#data
+<!doctype html><p><button><p>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <p>
+
+#data
+<!doctype html><p><button><ul>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <ul>
+
+#data
+<!doctype html><p><button><h1>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <h1>
+
+#data
+<!doctype html><p><button><h6>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <h6>
+
+#data
+<!doctype html><p><button><listing>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <listing>
+
+#data
+<!doctype html><p><button><pre>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <pre>
+
+#data
+<!doctype html><p><button><form>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <form>
+
+#data
+<!doctype html><p><button><li>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <li>
+
+#data
+<!doctype html><p><button><dd>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <dd>
+
+#data
+<!doctype html><p><button><dt>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <dt>
+
+#data
+<!doctype html><p><button><plaintext>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <plaintext>
+
+#data
+<!doctype html><p><button><table>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <table>
+
+#data
+<!doctype html><p><button><hr>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <hr>
+
+#data
+<!doctype html><p><button><xmp>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <xmp>
+
+#data
+<!doctype html><p><button></p>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <p>
+
+#data
+<!doctype html><address><button></address>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <address>
+|       <button>
+|     "a"
+
+#data
+<!doctype html><address><button></address>a
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <address>
+|       <button>
+|     "a"
+
+#data
+<p><table></p>
+#errors
+#document
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <p>
+|       <table>
+
+#data
+<!doctype html><svg>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg svg>
+
+#data
+<!doctype html><p><figcaption>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <figcaption>
+
+#data
+<!doctype html><p><summary>
+#errors
+#document
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <summary>
\ No newline at end of file
index 26453bf..0841992 100644 (file)
@@ -148,47 +148,27 @@ Also not bold."
 "
 
 #data
-<TABLE>
-  <CENTER>
-  <FONT>You should see a 100x100 green Image below.
-  </CENTER>
-<IMG alt="Image" width=100 height=100 style="background-color:green">
-<tr><td>
-</td>
-</tr>
-</table>
+<table><center> <font>a</center> <img> <tr><td> </td> </tr> </table>
 #errors
 #document
 | <html>
 |   <head>
 |   <body>
 |     <center>
-|       "
-  "
+|       " "
 |       <font>
-|         "You should see a 100x100 green Image below.
-  "
+|         "a"
 |     <font>
 |       <img>
-|         alt="Image"
-|         height="100"
-|         style="background-color:green"
-|         width="100"
-|       "
-"
+|       " "
 |     <table>
-|       "
-  
-"
+|       " "
 |       <tbody>
 |         <tr>
 |           <td>
-|             "
-"
-|           "
-"
-|         "
-"
+|             " "
+|           " "
+|         " "
 
 #data
 <table><tr><p><a><p>You should see this text.
index de67842..c50ce10 100644 (file)
@@ -129,35 +129,6 @@ console.log("FOO<span>BAR</span>BAZ");
 |     <potato>
 
 #data
-1<script>document.write("2")</script>3
-#errors
-#document
-| <html>
-|   <head>
-|   <body>
-|     "1"
-|     <script>
-|       "document.write("2")"
-|     "23"
-
-#data
-1<script>document.write("<script>document.write('2')</scr"+ "ipt><script>document.write('3')</scr" + "ipt>")</script>4
-#errors
-#document
-| <html>
-|   <head>
-|   <body>
-|     "1"
-|     <script>
-|       "document.write("<script>document.write('2')</scr"+ "ipt><script>document.write('3')</scr" + "ipt>")"
-|     <script>
-|       "document.write('2')"
-|     "2"
-|     <script>
-|       "document.write('3')"
-|     "34"
-
-#data
 </ tttt>
 #errors
 #document
index 9db6be4..d9eb5f2 100644 (file)
@@ -3,11 +3,51 @@ CONSOLE MESSAGE: line 1: SyntaxError: Parse error
 CONSOLE MESSAGE: line 0: Warning: Problem parsing viewBox=""
 CONSOLE MESSAGE: line 0: Warning: Problem parsing viewBox=""
 CONSOLE MESSAGE: line 0: Warning: Problem parsing viewBox=""
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
 CONSOLE MESSAGE: line 2: PASS
 CONSOLE MESSAGE: line 2: FOO<span>BAR</span>BAZ
 Content-Type: text/plain
-resources/tests1.dat: PASS
+resources/tests1.dat:
+24
+98
 
+Test 24 of 114 in resources/tests1.dat failed. Input:
+<b><button>foo</b>bar
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       <button>
+|         "foobar"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|     <button>
+|       <b>
+|         "foo"
+|       "bar"
+
+Test 98 of 114 in resources/tests1.dat failed. Input:
+<b><button></b></button></b>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       <button>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|     <button>
+|       <b>
 resources/tests2.dat: PASS
 
 resources/tests3.dat: PASS
@@ -166,10 +206,595 @@ resources/tests15.dat: PASS
 
 resources/tests16.dat: PASS
 
+resources/tests17.dat: PASS
+
+resources/tests18.dat: PASS
+
+resources/tests19.dat:
+1
+22
+24
+57
+58
+63
+77
+78
+80
+81
+99
+100
+101
+102
+
+Test 1 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><math><mn DefinitionUrl="foo">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+|       <math mn>
+|         definitionurl="foo"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+|       <math mn>
+|         definitionURL="foo"
+
+Test 22 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><h1><div><h3><span></h1>foo
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h1>
+|       <div>
+|         <h3>
+|           <span>
+|     "foo"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h1>
+|       <div>
+|         <h3>
+|           <span>
+|         "foo"
+
+Test 24 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><h3><li>abc</h2>foo
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h3>
+|       <li>
+|         "abcfoo"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h3>
+|       <li>
+|         "abc"
+|     "foo"
+
+Test 57 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><basefont><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <basefont>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <basefont>
+|   <frameset>
+
+Test 58 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><bgsound><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <bgsound>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <bgsound>
+|   <frameset>
+
+Test 63 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><keygen><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <keygen>
+|       <option>
+|         "2048 (High Grade)"
+|       <option>
+|         "1024 (Medium Grade)"
+|       <option>
+|         "512 (Low Grade)"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <keygen>
+
+Test 77 of 102 in resources/tests19.dat failed. Input:
+<html>�<frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     "�"
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 78 of 102 in resources/tests19.dat failed. Input:
+<html> � <frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     "� "
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 80 of 102 in resources/tests19.dat failed. Input:
+<html>��<frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     "��"
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 81 of 102 in resources/tests19.dat failed. Input:
+<html>�
+ <frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     "�
+ "
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 99 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><a><b></a><basefont>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <b>
+|       <basefont>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <basefont>
+
+Test 100 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><a><b></a><bgsound>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <b>
+|       <bgsound>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <bgsound>
+
+Test 101 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><figcaption><article></figcaption>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <figcaption>
+|       <article>
+|         "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <figcaption>
+|       <article>
+|     "a"
+
+Test 102 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><summary><article></summary>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <summary>
+|       <article>
+|         "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <summary>
+|       <article>
+|     "a"
+resources/tests20.dat:
+20
+21
+24
+25
+
+Test 20 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><address><button></address>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <address>
+|       <button>
+|         "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <address>
+|       <button>
+|     "a"
+
+Test 21 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><address><button></address>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <address>
+|       <button>
+|         "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <address>
+|       <button>
+|     "a"
+
+Test 24 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><p><figcaption>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <figcaption>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <figcaption>
+
+Test 25 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><p><summary>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <summary>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <summary>
 resources/webkit01.dat: PASS
 
-resources/doctype01.dat: PASS
+resources/doctype01.dat:
+14
+15
+16
+23
+24
+25
+26
+27
+29
+30
+32
+33
+34
+35
+36
+37
+
+Test 14 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato SYSTEM 'taco"'>Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "" "taco"">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 15 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato SYSTEM "taco">Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "" "taco">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 16 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato SYSTEM "tai'co">Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "" "tai'co">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 23 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC "go'of">Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "go'of" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 24 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC 'go'of'>Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "go" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 25 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC 'go:hh   of' >Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "go:hh   of" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
 
+Test 26 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC "W3C-//dfdf" SYSTEM ggg>Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "W3C-//dfdf" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 27 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+   "http://www.w3.org/TR/html4/strict.dtd">Hello
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 29 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 30 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 32 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE html PUBLIC
+  "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
+    "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 33 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML SYSTEM "http://www.w3.org/DTD/HTML4-strict.dtd"><body><b>Mine!</b></body>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       "Mine!"
+Expected:
+| <!DOCTYPE html "" "http://www.w3.org/DTD/HTML4-strict.dtd">
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       "Mine!"
+
+Test 34 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 35 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'http://www.w3.org/TR/html4/strict.dtd'>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 36 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01//EN"'http://www.w3.org/TR/html4/strict.dtd'>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 37 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC'-//W3C//DTD HTML 4.01//EN''http://www.w3.org/TR/html4/strict.dtd'>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
 resources/scriptdata01.dat: PASS
 
 resources/html5test-com.dat:
@@ -264,10 +889,9 @@ resources/comments01.dat: PASS
 
 resources/adoption01.dat:
 3
-11
-13
+12
 
-Test 3 of 13 in resources/adoption01.dat failed. Input:
+Test 3 of 12 in resources/adoption01.dat failed. Input:
 <a>1<button>2</a>3</button>
 Got:
 | <html>
@@ -283,38 +907,12 @@ Expected:
 |   <body>
 |     <a>
 |       "1"
-|       <button>
+|     <button>
+|       <a>
 |         "2"
-|     "3"
-
-Test 11 of 13 in resources/adoption01.dat failed. Input:
-<p><b id="A"><script>document.getElementById("A").id = "B"</script></p>TEXT</b>
-Got:
-| <html>
-|   <head>
-|   <body>
-|     <p>
-|       <b>
-|         id="B"
-|         <script>
-|           "document.getElementById("A").id = "B""
-|     <b>
-|       id="B"
-|       "TEXT"
-Expected:
-| <html>
-|   <head>
-|   <body>
-|     <p>
-|       <b>
-|         id="B"
-|         <script>
-|           "document.getElementById("A").id = "B""
-|     <b>
-|       id="A"
-|       "TEXT"
+|       "3"
 
-Test 13 of 13 in resources/adoption01.dat failed. Input:
+Test 12 of 12 in resources/adoption01.dat failed. Input:
 <table>A<td>B</td>C</table>
 Got:
 | <html>
@@ -387,4 +985,35 @@ resources/isindex.dat: PASS
 resources/tables01.dat: PASS
 
 resources/tricky01.dat: PASS
+
+resources/scripted/adoption01.dat:
+1
+
+Test 1 of 1 in resources/scripted/adoption01.dat failed. Input:
+<p><b id="A"><script>document.getElementById("A").id = "B"</script></p>TEXT</b>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <b>
+|         id="B"
+|         <script>
+|           "document.getElementById("A").id = "B""
+|     <b>
+|       id="B"
+|       "TEXT"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <b>
+|         id="B"
+|         <script>
+|           "document.getElementById("A").id = "B""
+|     <b>
+|       id="A"
+|       "TEXT"
+resources/scripted/webkit01.dat: PASS
 #EOF
index 136cfc0..50be3b4 100644 (file)
@@ -1,37 +1,84 @@
 CONSOLE MESSAGE: line 1: SyntaxError: Parse error
 CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
+CONSOLE MESSAGE: line 1: SyntaxError: Parse error
 CONSOLE MESSAGE: line 2: PASS
 CONSOLE MESSAGE: line 2: FOO<span>BAR</span>BAZ
 resources/tests1.dat:
+24
 25
-29
+26
 30
-32
+31
 33
 34
-50
+35
 51
 52
 53
 54
-78
+55
 79
 80
 81
 82
-87
-90
+83
+88
 91
 92
-96
+93
+97
 98
-101
-104
-106
-109
-113
+99
+102
+105
+107
+110
+114
+
+Test 24 of 114 in resources/tests1.dat failed. Input:
+<b><button>foo</b>bar
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       <button>
+|         "foo"
+|     "bar"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|     <button>
+|       <b>
+|         "foo"
+|       "bar"
 
-Test 25 of 113 in resources/tests1.dat failed. Input:
+Test 25 of 114 in resources/tests1.dat failed. Input:
+<!DOCTYPE html><span><button>foo</span>bar
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <span>
+|       <button>
+|         "foo"
+|     "bar"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <span>
+|       <button>
+|         "foobar"
+
+Test 26 of 114 in resources/tests1.dat failed. Input:
 <p><b><div><marquee></p></b></div>X
 Got:
 | <html>
@@ -58,7 +105,7 @@ Expected:
 |           <p>
 |           "X"
 
-Test 29 of 113 in resources/tests1.dat failed. Input:
+Test 30 of 114 in resources/tests1.dat failed. Input:
 <select><b><option><select><option></b></select>X
 Got:
 | <html>
@@ -76,7 +123,7 @@ Expected:
 |     <option>
 |       "X"
 
-Test 30 of 113 in resources/tests1.dat failed. Input:
+Test 31 of 114 in resources/tests1.dat failed. Input:
 <a><table><td><a><table></table><a></tr><a></table><b>X</b>C<a>Y
 Got:
 | <html>
@@ -116,7 +163,7 @@ Expected:
 |     <a>
 |       "Y"
 
-Test 32 of 113 in resources/tests1.dat failed. Input:
+Test 33 of 114 in resources/tests1.dat failed. Input:
 <!-----><font><div>hello<table>excite!<b>me!<th><i>please!</tr><!--X-->
 Got:
 | <!-- - -->
@@ -154,7 +201,7 @@ Expected:
 |                   "please!"
 |             <!-- X -->
 
-Test 33 of 113 in resources/tests1.dat failed. Input:
+Test 34 of 114 in resources/tests1.dat failed. Input:
 <!DOCTYPE html><li>hello<li>world<ul>how<li>do</ul>you</body><!--do-->
 Got:
 | <!DOCTYPE html>
@@ -187,7 +234,7 @@ Expected:
 |       "you"
 |   <!-- do -->
 
-Test 34 of 113 in resources/tests1.dat failed. Input:
+Test 35 of 114 in resources/tests1.dat failed. Input:
 <!DOCTYPE html>A<option>B<optgroup>C<select>D</option>E
 Got:
 | <!DOCTYPE html>
@@ -210,7 +257,7 @@ Expected:
 |       <select>
 |         "DE"
 
-Test 50 of 113 in resources/tests1.dat failed. Input:
+Test 51 of 114 in resources/tests1.dat failed. Input:
 <!DOCTYPE html><script> <!-- </script> --> </script> EOF
 Got:
 | <!DOCTYPE html>
@@ -230,7 +277,7 @@ Expected:
 |   <body>
 |     "-->  EOF"
 
-Test 51 of 113 in resources/tests1.dat failed. Input:
+Test 52 of 114 in resources/tests1.dat failed. Input:
 <b><p></b>TEST
 Got:
 | <html>
@@ -248,7 +295,7 @@ Expected:
 |       <b>
 |       "TEST"
 
-Test 52 of 113 in resources/tests1.dat failed. Input:
+Test 53 of 114 in resources/tests1.dat failed. Input:
 <p id=a><b><p id=b></b>TEST
 Got:
 | <html>
@@ -272,7 +319,7 @@ Expected:
 |       id="b"
 |       "TEST"
 
-Test 53 of 113 in resources/tests1.dat failed. Input:
+Test 54 of 114 in resources/tests1.dat failed. Input:
 <b id=a><p><b id=b></p></b>TEST
 Got:
 | <html>
@@ -297,7 +344,7 @@ Expected:
 |           id="b"
 |       "TEST"
 
-Test 54 of 113 in resources/tests1.dat failed. Input:
+Test 55 of 114 in resources/tests1.dat failed. Input:
 <!DOCTYPE html><title>U-test</title><body><div><p>Test<u></p></div></body>
 Got:
 | <!DOCTYPE html>
@@ -324,7 +371,7 @@ Expected:
 |         "Test"
 |         <u>
 
-Test 78 of 113 in resources/tests1.dat failed. Input:
+Test 79 of 114 in resources/tests1.dat failed. Input:
 <a href="blah">aba<table><a href="foo">br<tr><td></td></tr>x</table>aoe
 Got:
 | <html>
@@ -363,7 +410,7 @@ Expected:
 |       href="foo"
 |       "aoe"
 
-Test 79 of 113 in resources/tests1.dat failed. Input:
+Test 80 of 114 in resources/tests1.dat failed. Input:
 <a href="blah">aba<table><tr><td><a href="foo">br</td></tr>x</table>aoe
 Got:
 | <html>
@@ -397,7 +444,7 @@ Expected:
 |                 "br"
 |       "aoe"
 
-Test 80 of 113 in resources/tests1.dat failed. Input:
+Test 81 of 114 in resources/tests1.dat failed. Input:
 <table><a href="blah">aba<tr><td><a href="foo">br</td></tr>x</table>aoe
 Got:
 | <html>
@@ -436,7 +483,7 @@ Expected:
 |       href="blah"
 |       "aoe"
 
-Test 81 of 113 in resources/tests1.dat failed. Input:
+Test 82 of 114 in resources/tests1.dat failed. Input:
 <a href=a>aa<marquee>aa<a href=b>bb</marquee>aa
 Got:
 | <html>
@@ -469,7 +516,7 @@ Expected:
 |           "bb"
 |       "aa"
 
-Test 82 of 113 in resources/tests1.dat failed. Input:
+Test 83 of 114 in resources/tests1.dat failed. Input:
 <wbr><strike><code></strike><code><strike></code>
 Got:
 | <html>
@@ -493,7 +540,7 @@ Expected:
 |       <code>
 |         <strike>
 
-Test 87 of 113 in resources/tests1.dat failed. Input:
+Test 88 of 114 in resources/tests1.dat failed. Input:
 <body><body><base><link><meta><title><p></title><body><p></body>
 Got:
 | <html>
@@ -516,7 +563,7 @@ Expected:
 |       "<p>"
 |     <p>
 
-Test 90 of 113 in resources/tests1.dat failed. Input:
+Test 91 of 114 in resources/tests1.dat failed. Input:
 <a><table><a></table><p><a><div><a>
 Got:
 | <html>
@@ -543,7 +590,7 @@ Expected:
 |     <div>
 |       <a>
 
-Test 91 of 113 in resources/tests1.dat failed. Input:
+Test 92 of 114 in resources/tests1.dat failed. Input:
 <head></p><meta><p>
 Got:
 | <html>
@@ -559,7 +606,7 @@ Expected:
 |   <body>
 |     <p>
 
-Test 92 of 113 in resources/tests1.dat failed. Input:
+Test 93 of 114 in resources/tests1.dat failed. Input:
 <head></html><meta><p>
 Got:
 | <html>
@@ -574,7 +621,7 @@ Expected:
 |     <meta>
 |     <p>
 
-Test 96 of 113 in resources/tests1.dat failed. Input:
+Test 97 of 114 in resources/tests1.dat failed. Input:
 <a><p><a></a></p></a>
 Got:
 | <html>
@@ -592,7 +639,23 @@ Expected:
 |       <a>
 |       <a>
 
-Test 98 of 113 in resources/tests1.dat failed. Input:
+Test 98 of 114 in resources/tests1.dat failed. Input:
+<b><button></b></button></b>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       <button>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|     <button>
+|       <b>
+
+Test 99 of 114 in resources/tests1.dat failed. Input:
 <p><b><div><marquee></p></b></div>
 Got:
 | <html>
@@ -617,7 +680,7 @@ Expected:
 |         <marquee>
 |           <p>
 
-Test 101 of 113 in resources/tests1.dat failed. Input:
+Test 102 of 114 in resources/tests1.dat failed. Input:
 <select><b><option><select><option></b></select>
 Got:
 | <html>
@@ -633,7 +696,7 @@ Expected:
 |       <option>
 |     <option>
 
-Test 104 of 113 in resources/tests1.dat failed. Input:
+Test 105 of 114 in resources/tests1.dat failed. Input:
 <ul><li></li><div><li></div><li><li><div><li><address><li><b><em></b><li></ul>
 Got:
 | <html>
@@ -673,7 +736,7 @@ Expected:
 |           <em>
 |       <li>
 
-Test 106 of 113 in resources/tests1.dat failed. Input:
+Test 107 of 114 in resources/tests1.dat failed. Input:
 <frameset><frame><frameset><frame></frameset><noframes></noframes></frameset>
 Got:
 | <html>
@@ -690,7 +753,7 @@ Expected:
 |       <frame>
 |     <noframes>
 
-Test 109 of 113 in resources/tests1.dat failed. Input:
+Test 110 of 114 in resources/tests1.dat failed. Input:
 <table><col><tbody><col><tr><col><td><col></table><col>
 Got:
 | <html>
@@ -724,7 +787,7 @@ Expected:
 |       <colgroup>
 |         <col>
 
-Test 113 of 113 in resources/tests1.dat failed. Input:
+Test 114 of 114 in resources/tests1.dat failed. Input:
 <frameset>
 Got:
 | <html>
@@ -740,11 +803,12 @@ resources/tests2.dat:
 9
 11
 36
-42
-44
+38
+43
 45
+46
 
-Test 6 of 59 in resources/tests2.dat failed. Input:
+Test 6 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><frameset>test
 Got:
 | <!DOCTYPE html>
@@ -756,7 +820,7 @@ Expected:
 |   <head>
 |   <frameset>
 
-Test 7 of 59 in resources/tests2.dat failed. Input:
+Test 7 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><frameset><!DOCTYPE html>
 Got:
 | <!DOCTYPE html>
@@ -768,7 +832,7 @@ Expected:
 |   <head>
 |   <frameset>
 
-Test 8 of 59 in resources/tests2.dat failed. Input:
+Test 8 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><font><p><b>test</font>
 Got:
 | <!DOCTYPE html>
@@ -792,7 +856,7 @@ Expected:
 |         <b>
 |           "test"
 
-Test 9 of 59 in resources/tests2.dat failed. Input:
+Test 9 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><dt><div><dd>
 Got:
 | <!DOCTYPE html>
@@ -811,7 +875,7 @@ Expected:
 |       <div>
 |     <dd>
 
-Test 11 of 59 in resources/tests2.dat failed. Input:
+Test 11 of 61 in resources/tests2.dat failed. Input:
 <table><plaintext><td>
 Got:
 | <html>
@@ -829,7 +893,7 @@ Expected:
 |       "<td>"
 |     <table>
 
-Test 36 of 59 in resources/tests2.dat failed. Input:
+Test 36 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><select><optgroup><option></optgroup><option><select><option>
 Got:
 | <!DOCTYPE html>
@@ -851,7 +915,27 @@ Expected:
 |       <option>
 |     <option>
 
-Test 42 of 59 in resources/tests2.dat failed. Input:
+Test 38 of 61 in resources/tests2.dat failed. Input:
+<!DOCTYPE html><datalist><option>foo</datalist>bar
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <datalist>
+|       <option>
+|         "foobar"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <datalist>
+|       <option>
+|         "foo"
+|     "bar"
+
+Test 43 of 61 in resources/tests2.dat failed. Input:
 <isindex test=x name=x>
 Got:
 | <html>
@@ -870,7 +954,7 @@ Expected:
 |           test="x"
 |       <hr>
 
-Test 44 of 59 in resources/tests2.dat failed. Input:
+Test 45 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><body><title>test</body></title>
 Got:
 | <!DOCTYPE html>
@@ -887,7 +971,7 @@ Expected:
 |     <title>
 |       "test</body>"
 
-Test 45 of 59 in resources/tests2.dat failed. Input:
+Test 46 of 61 in resources/tests2.dat failed. Input:
 <!DOCTYPE html><body><title>X</title><meta name=z><link rel=foo><style>
 x { content:"</style" } </style>
 Got:
@@ -4365,231 +4449,2289 @@ Expected:
 |     <noembed>
 |       "<!--<noembed>"
 |     "-->"
-resources/webkit01.dat:
-20
-22
-24
-26
-27
-28
-29
-30
-31
-33
+resources/tests17.dat:
+5
 
-Test 20 of 35 in resources/webkit01.dat failed. Input:
-<body></br foo="bar"></body>
+Test 5 of 13 in resources/tests17.dat failed. Input:
+<!doctype html><table><caption><select><tr>
 Got:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     <br>
-|       foo="bar"
+|     <table>
+|       <caption>
+|         <select>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     <br>
+|     <table>
+|       <caption>
+|         <select>
+|       <tbody>
+|         <tr>
+resources/tests18.dat:
+2
+8
+13
+15
+16
+17
+18
+20
 
-Test 22 of 35 in resources/webkit01.dat failed. Input:
-<body></body></br foo="bar">
+Test 2 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><table><plaintext></plaintext>
 Got:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     <br>
-|       foo="bar"
+|     <plaintext>
+|       "</plaintext>"
+|     <table>
+|       <tbody>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     <br>
+|     <plaintext>
+|       "</plaintext>"
+|     <table>
 
-Test 24 of 35 in resources/webkit01.dat failed. Input:
-<html><body></body></html><!-- Hi there -->
+Test 8 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><table><tr><style></script></style>abc
 Got:
+| <!DOCTYPE html>
 | <html>
 |   <head>
+|     <style>
+|       "</script>"
 |   <body>
-|     <!--  Hi there  -->
+|     "abc"
+|     <table>
+|       <tbody>
+|         <tr>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-| <!--  Hi there  -->
+|     "abc"
+|     <table>
+|       <tbody>
+|         <tr>
+|           <style>
+|             "</script>"
 
-Test 26 of 35 in resources/webkit01.dat failed. Input:
-<html><body></body></html>x<!-- Hi there --></html><!-- Again -->
+Test 13 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><table><select><script></style></script>abc
 Got:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     "x"
-|     <!--  Hi there  -->
-|     <!--  Again  -->
+|     <select>
+|       <script>
+|         "</style>"
+|       "abc"
+|     <table>
+|       <tbody>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     "x"
-|     <!--  Hi there  -->
-| <!--  Again  -->
+|     <select>
+|       <script>
+|         "</style>"
+|       "abc"
+|     <table>
 
-Test 27 of 35 in resources/webkit01.dat failed. Input:
-<html><body></body></html>x<!-- Hi there --></body></html><!-- Again -->
+Test 15 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><frameset></frameset><noframes>abc
 Got:
+| <!DOCTYPE html>
 | <html>
-|   <head>
-|   <body>
-|     "x"
-|     <!--  Hi there  -->
-|     <!--  Again  -->
+|   <frameset>
+|   <noframes>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
-|   <body>
-|     "x"
-|     <!--  Hi there  -->
-| <!--  Again  -->
+|   <frameset>
+|   <noframes>
+|     "abc"
 
-Test 28 of 35 in resources/webkit01.dat failed. Input:
-<html><body><ruby><div><rp>xx</rp></div></ruby></body></html>
+Test 16 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><frameset></frameset><noframes>abc</noframes><!--abc-->
 Got:
+| <!DOCTYPE html>
 | <html>
-|   <head>
-|   <body>
-|     <ruby>
-|       <div>
-|         <rp>
-|           "xx"
+|   <frameset>
+|   <noframes>
+|   <!-- abc -->
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
-|   <body>
-|     <ruby>
-|       <div>
-|       <rp>
-|         "xx"
+|   <frameset>
+|   <noframes>
+|     "abc"
+|   <!-- abc -->
 
-Test 29 of 35 in resources/webkit01.dat failed. Input:
-<html><body><ruby><div><rt>xx</rt></div></ruby></body></html>
+Test 17 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><frameset></frameset></html><noframes>abc
 Got:
+| <!DOCTYPE html>
 | <html>
-|   <head>
-|   <body>
-|     <ruby>
-|       <div>
-|         <rt>
-|           "xx"
+|   <frameset>
+|   <noframes>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
-|   <body>
-|     <ruby>
-|       <div>
-|       <rt>
-|         "xx"
+|   <frameset>
+|   <noframes>
+|     "abc"
 
-Test 30 of 35 in resources/webkit01.dat failed. Input:
-<html><frameset><!--1--><noframes>A</noframes><!--2--></frameset><!--3--><noframes>B</noframes><!--4--></html><!--5--><noframes>C</noframes><!--6-->
+Test 18 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><frameset></frameset></html><noframes>abc</noframes><!--abc-->
 Got:
+| <!DOCTYPE html>
 | <html>
 |   <frameset>
-|     <!-- 1 -->
-|     <!-- 2 -->
-|   <!-- 3 -->
-|   <noframes>
-|   <!-- 4 -->
-|   <!-- 5 -->
 |   <noframes>
-|   <!-- 6 -->
+|   <!-- abc -->
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <frameset>
-|     <!-- 1 -->
-|     <noframes>
-|       "A"
-|     <!-- 2 -->
-|   <!-- 3 -->
-|   <noframes>
-|     "B"
-|   <!-- 4 -->
 |   <noframes>
-|     "C"
-| <!-- 5 -->
-| <!-- 6 -->
+|     "abc"
+| <!-- abc -->
 
-Test 31 of 35 in resources/webkit01.dat failed. Input:
-<select><option>A<select><option>B<select><option>C<select><option>D<select><option>E<select><option>F<select><option>G<select>
+Test 20 of 20 in resources/tests18.dat failed. Input:
+<!doctype html><table><td><svg></svg>abc<td>
 Got:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     <select>
-|       <option>
-|         "A"
-|     "B"
-|     <select>
-|       <option>
-|         "C"
-|     "D"
-|     <select>
-|       <option>
-|         "E"
-|     "F"
-|     <select>
-|       <option>
-|         "G"
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <svg>
+|             "abc"
+|           <td>
 Expected:
+| <!DOCTYPE html>
 | <html>
 |   <head>
 |   <body>
-|     <select>
-|       <option>
-|         "A"
-|     <option>
-|       "B"
-|       <select>
-|         <option>
-|           "C"
-|     <option>
-|       "D"
-|       <select>
-|         <option>
-|           "E"
-|     <option>
-|       "F"
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <svg svg>
+|             "abc"
+|           <td>
+resources/tests19.dat:
+1
+2
+3
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+24
+31
+32
+33
+35
+36
+37
+38
+39
+40
+41
+42
+43
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+90
+91
+93
+94
+95
+96
+99
+100
+101
+102
+
+Test 1 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><math><mn DefinitionUrl="foo">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math>
+|       <mn>
+|         definitionurl="foo"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+|       <math mn>
+|         definitionURL="foo"
+
+Test 2 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html></p><!--foo-->
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <!-- foo -->
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <!-- foo -->
+|   <head>
+|   <body>
+
+Test 3 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><head></head></p><!--foo-->
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <!-- foo -->
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <!-- foo -->
+|   <body>
+
+Test 8 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><form><isindex>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <div>
+|         <hr>
+|         "This is a searchable index. Enter search keywords: "
+|         <isindex>
+|           type="khtml_isindex"
+|         <hr>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+
+Test 9 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><isindex action="POST">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       action="POST"
+|       <hr>
+|       <label>
+|         "This is a searchable index. Enter search keywords: "
+|         <input>
+|           name="isindex"
+|       <hr>
+
+Test 10 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><isindex prompt="this is isindex">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <hr>
+|       <label>
+|         "this is isindex"
+|         <input>
+|           name="isindex"
+|       <hr>
+
+Test 11 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><isindex type="hidden">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <hr>
+|       <label>
+|         "This is a searchable index. Enter search keywords: "
+|         <input>
+|           name="isindex"
+|           type="hidden"
+|       <hr>
+
+Test 12 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><isindex name="foo">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <form>
+|       <hr>
+|       <label>
+|         "This is a searchable index. Enter search keywords: "
+|         <input>
+|           name="isindex"
+|       <hr>
+
+Test 13 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><ruby><p><rp>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <p>
+|         <rp>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <p>
+|       <rp>
+
+Test 14 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><ruby><div><span><rp>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <span>
+|           <rp>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <span>
+|       <rp>
+
+Test 15 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><ruby><div><p><rp>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <p>
+|           <rp>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <p>
+|       <rp>
+
+Test 16 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><ruby><p><rt>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <p>
+|         <rt>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <p>
+|       <rt>
+
+Test 17 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><ruby><div><span><rt>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <span>
+|           <rt>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <span>
+|       <rt>
+
+Test 18 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><ruby><div><p><rt>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <p>
+|           <rt>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <p>
+|       <rt>
+
+Test 19 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><math/><foo>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math>
+|       <foo>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+|     <foo>
+
+Test 20 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><svg/><foo>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg>
+|       <foo>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg svg>
+|     <foo>
+
+Test 21 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><div></body><!--foo-->
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <div>
+|       <!-- foo -->
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <div>
+|   <!-- foo -->
+
+Test 22 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><h1><div><h3><span></h1>foo
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h1>
+|       <div>
+|         <h3>
+|           <span>
+|     "foo"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h1>
+|       <div>
+|         <h3>
+|           <span>
+|         "foo"
+
+Test 24 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><h3><li>abc</h2>foo
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h3>
+|       <li>
+|         "abcfoo"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <h3>
+|       <li>
+|         "abc"
+|     "foo"
+
+Test 31 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><p><math><mi><p><h1>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math>
+|         <mi>
+|     <p>
+|     <h1>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|         <math mi>
+|     <p>
+|     <h1>
+
+Test 32 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><p><math><mi><p><h1>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math>
+|         <mi>
+|     <p>
+|     <h1>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|         <math mi>
+|     <p>
+|     <h1>
+
+Test 33 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><frameset></noframes>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+Test 35 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html c=d><frameset></frameset></html><html a=b>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   a="b"
+|   c="d"
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   a="b"
+|   c="d"
+|   <head>
+|   <frameset>
+
+Test 36 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html><frameset></frameset></html><!--foo-->
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+|   <!-- foo -->
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+| <!-- foo -->
+
+Test 37 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html><frameset></frameset></html>  
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|   "  "
+
+Test 38 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html><frameset></frameset></html>abc
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+Test 39 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html><frameset></frameset></html><p>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+Test 40 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><html><frameset></frameset></html></p>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+
+Test 41 of 102 in resources/tests19.dat failed. Input:
+<html><frameset></frameset></html><!doctype html>
+Got:
+| <html>
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 42 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><body><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+
+Test 43 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><p><frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <p>
+|   <frameset>
+|     <frame>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+Test 45 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><p> <frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <p>
+|       " "
+|   <frameset>
+|     <frame>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+Test 46 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><pre><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <pre>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <pre>
+
+Test 47 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><listing><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <listing>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <listing>
+
+Test 48 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><li><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <li>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <li>
+
+Test 49 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><dd><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <dd>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <dd>
+
+Test 50 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><dt><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <dt>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <dt>
+
+Test 51 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><button><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <button>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <button>
+
+Test 52 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><applet><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <applet>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <applet>
+
+Test 53 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><marquee><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <marquee>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <marquee>
+
+Test 54 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><object><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <object>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <object>
+
+Test 55 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><table><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <table>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+
+Test 56 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><area><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <area>
+
+Test 57 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><basefont><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <basefont>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <basefont>
+|   <frameset>
+
+Test 58 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><bgsound><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <bgsound>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|     <bgsound>
+|   <frameset>
+
+Test 59 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><br><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <br>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <br>
+
+Test 60 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><embed><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <embed>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <embed>
+
+Test 61 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><img><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <img>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <img>
+
+Test 62 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><input><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <input>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <input>
+
+Test 63 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><keygen><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <keygen>
+|       <option>
+|         "2048 (High Grade)"
+|       <option>
+|         "1024 (Medium Grade)"
+|       <option>
+|         "512 (Low Grade)"
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <keygen>
+
+Test 64 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><wbr><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <wbr>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <wbr>
+
+Test 65 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><hr><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <hr>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <hr>
+
+Test 66 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><textarea></textarea><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <textarea>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <textarea>
+
+Test 67 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><xmp></xmp><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <xmp>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <xmp>
+
+Test 68 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><iframe></iframe><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <iframe>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <iframe>
+
+Test 69 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><select></select><frameset>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <select>
+|   <frameset>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <select>
+
+Test 70 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><svg></svg><frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <svg>
+|   <frameset>
+|     <frame>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+Test 71 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><math></math><frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <math>
+|   <frameset>
+|     <frame>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+Test 72 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><svg><foreignObject><div> <frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <svg>
+|       <foreignobject>
+|         <div>
+|           " "
+|   <frameset>
+|     <frame>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+Test 73 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><svg>a</svg><frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg>
+|       "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg svg>
+|       "a"
+
+Test 74 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><svg> </svg><frameset><frame>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     <svg>
+|       " "
+|   <frameset>
+|     <frame>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <frameset>
+|     <frame>
+
+Test 75 of 102 in resources/tests19.dat failed. Input:
+<html>aaa<frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     "aaa"
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     "aaa"
+
+Test 76 of 102 in resources/tests19.dat failed. Input:
+<html> a <frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     " a "
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     "a "
+
+Test 77 of 102 in resources/tests19.dat failed. Input:
+<html>�<frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     "�"
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 78 of 102 in resources/tests19.dat failed. Input:
+<html> � <frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     " � "
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 79 of 102 in resources/tests19.dat failed. Input:
+<html>a�a<frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     "a�a"
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     "a�a"
+
+Test 80 of 102 in resources/tests19.dat failed. Input:
+<html>��<frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     "��"
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 81 of 102 in resources/tests19.dat failed. Input:
+<html>�
+ <frameset></frameset>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     style="display:none"
+|     "�
+ "
+|   <frameset>
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+
+Test 82 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><p><math></p>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math>
+|     "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|     "a"
+
+Test 83 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><p><math><mn><span></p>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math>
+|         <mn>
+|           <span>
+|     "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <math math>
+|         <math mn>
+|           <span>
+|     "a"
+
+Test 84 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><math></html>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <math math>
+
+Test 90 of 102 in resources/tests19.dat failed. Input:
+<!doctype html>a<i>b<table>c<b>d</i>e</b>f
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "a"
+|     <i>
+|       "b"
+|       "c"
+|       <b>
+|         "de"
+|       "f"
+|       <table>
+|         <tbody>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "a"
+|     <i>
+|       "bc"
+|       <b>
+|         "de"
+|       "f"
+|       <table>
+
+Test 91 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><table><i>a<b>b<div>c<a>d</i>e</b>f
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|       <div>
+|         <b>
+|           "c"
+|           <a>
+|             "de"
+|         <a>
+|           "f"
+|     <table>
+|       <tbody>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|     <div>
+|       <b>
+|         <i>
+|           "c"
+|           <a>
+|             "d"
+|         <a>
+|           "e"
+|       <a>
+|         "f"
+|     <table>
+
+Test 93 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><table><i>a<b>b<div>c</i>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|         <div>
+|           "c"
+|     <table>
+|       <tbody>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|       <div>
+|         <i>
+|           "c"
+|     <table>
+
+Test 94 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><table><i>a<b>b<div>c<a>d</i>e</b>f
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|       <div>
+|         <b>
+|           "c"
+|           <a>
+|             "de"
+|         <a>
+|           "f"
+|     <table>
+|       <tbody>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <b>
+|         "b"
+|     <b>
+|     <div>
+|       <b>
+|         <i>
+|           "c"
+|           <a>
+|             "d"
+|         <a>
+|           "e"
+|       <a>
+|         "f"
+|     <table>
+
+Test 95 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><table><i>a<div>b<tr>c<b>d</i>e
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <div>
+|         "b"
+|     "c"
+|     <b>
+|       "de"
+|     <table>
+|       <tbody>
+|         <tr>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <i>
+|       "a"
+|       <div>
+|         "b"
+|     <i>
+|       "c"
+|       <b>
+|         "d"
+|     <b>
+|       "e"
+|     <table>
+|       <tbody>
+|         <tr>
+
+Test 96 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><table><td><table><i>a<div>b<b>c</i>d
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <i>
+|               "a"
+|               <div>
+|                 "b"
+|                 <b>
+|                   "cd"
+|             <table>
+|               <tbody>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <table>
+|       <tbody>
+|         <tr>
+|           <td>
+|             <i>
+|               "a"
+|             <div>
+|               <i>
+|                 "b"
+|                 <b>
+|                   "c"
+|               <b>
+|                 "d"
+|             <table>
+
+Test 99 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><a><b></a><basefont>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <b>
+|       <basefont>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <basefont>
+
+Test 100 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><a><b></a><bgsound>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <b>
+|       <bgsound>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       <b>
+|     <bgsound>
+
+Test 101 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><figcaption><article></figcaption>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <figcaption>
+|       <article>
+|         "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <figcaption>
+|       <article>
+|     "a"
+
+Test 102 of 102 in resources/tests19.dat failed. Input:
+<!doctype html><summary><article></summary>a
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <summary>
+|       <article>
+|         "a"
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <summary>
+|       <article>
+|     "a"
+resources/tests20.dat:
+19
+22
+23
+24
+25
+
+Test 19 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><p><button></p>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <button>
+|         <p>
+
+Test 22 of 25 in resources/tests20.dat failed. Input:
+<p><table></p>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <p>
+|       <table>
+|         <tbody>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <p>
+|       <table>
+
+Test 23 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><svg>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <svg svg>
+
+Test 24 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><p><figcaption>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <figcaption>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <figcaption>
+
+Test 25 of 25 in resources/tests20.dat failed. Input:
+<!doctype html><p><summary>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <summary>
+Expected:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|     <summary>
+resources/webkit01.dat:
+18
+20
+22
+24
+25
+26
+27
+28
+29
+31
+
+Test 18 of 33 in resources/webkit01.dat failed. Input:
+<body></br foo="bar"></body>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <br>
+|       foo="bar"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <br>
+
+Test 20 of 33 in resources/webkit01.dat failed. Input:
+<body></body></br foo="bar">
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <br>
+|       foo="bar"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <br>
+
+Test 22 of 33 in resources/webkit01.dat failed. Input:
+<html><body></body></html><!-- Hi there -->
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <!--  Hi there  -->
+Expected:
+| <html>
+|   <head>
+|   <body>
+| <!--  Hi there  -->
+
+Test 24 of 33 in resources/webkit01.dat failed. Input:
+<html><body></body></html>x<!-- Hi there --></html><!-- Again -->
+Got:
+| <html>
+|   <head>
+|   <body>
+|     "x"
+|     <!--  Hi there  -->
+|     <!--  Again  -->
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     "x"
+|     <!--  Hi there  -->
+| <!--  Again  -->
+
+Test 25 of 33 in resources/webkit01.dat failed. Input:
+<html><body></body></html>x<!-- Hi there --></body></html><!-- Again -->
+Got:
+| <html>
+|   <head>
+|   <body>
+|     "x"
+|     <!--  Hi there  -->
+|     <!--  Again  -->
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     "x"
+|     <!--  Hi there  -->
+| <!--  Again  -->
+
+Test 26 of 33 in resources/webkit01.dat failed. Input:
+<html><body><ruby><div><rp>xx</rp></div></ruby></body></html>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <rp>
+|           "xx"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|       <rp>
+|         "xx"
+
+Test 27 of 33 in resources/webkit01.dat failed. Input:
+<html><body><ruby><div><rt>xx</rt></div></ruby></body></html>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|         <rt>
+|           "xx"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <ruby>
+|       <div>
+|       <rt>
+|         "xx"
+
+Test 28 of 33 in resources/webkit01.dat failed. Input:
+<html><frameset><!--1--><noframes>A</noframes><!--2--></frameset><!--3--><noframes>B</noframes><!--4--></html><!--5--><noframes>C</noframes><!--6-->
+Got:
+| <html>
+|   <frameset>
+|     <!-- 1 -->
+|     <!-- 2 -->
+|   <!-- 3 -->
+|   <noframes>
+|   <!-- 4 -->
+|   <!-- 5 -->
+|   <noframes>
+|   <!-- 6 -->
+Expected:
+| <html>
+|   <head>
+|   <frameset>
+|     <!-- 1 -->
+|     <noframes>
+|       "A"
+|     <!-- 2 -->
+|   <!-- 3 -->
+|   <noframes>
+|     "B"
+|   <!-- 4 -->
+|   <noframes>
+|     "C"
+| <!-- 5 -->
+| <!-- 6 -->
+
+Test 29 of 33 in resources/webkit01.dat failed. Input:
+<select><option>A<select><option>B<select><option>C<select><option>D<select><option>E<select><option>F<select><option>G<select>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <option>
+|         "A"
+|     "B"
+|     <select>
+|       <option>
+|         "C"
+|     "D"
+|     <select>
+|       <option>
+|         "E"
+|     "F"
+|     <select>
+|       <option>
+|         "G"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <select>
+|       <option>
+|         "A"
+|     <option>
+|       "B"
+|       <select>
+|         <option>
+|           "C"
+|     <option>
+|       "D"
+|       <select>
+|         <option>
+|           "E"
+|     <option>
+|       "F"
 |       <select>
 |         <option>
 |           "G"
 
-Test 33 of 35 in resources/webkit01.dat failed. Input:
-<div><b></div><div><nobr>a<nobr>
+Test 31 of 33 in resources/webkit01.dat failed. Input:
+<div><b></div><div><nobr>a<nobr>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <div>
+|       <b>
+|     <b>
+|       <div>
+|         <nobr>
+|           "a"
+|         <nobr>
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <div>
+|       <b>
+|     <div>
+|       <b>
+|         <nobr>
+|           "a"
+|         <nobr>
+resources/doctype01.dat:
+14
+15
+16
+23
+24
+25
+26
+27
+29
+30
+31
+32
+33
+34
+35
+36
+37
+
+Test 14 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato SYSTEM 'taco"'>Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "" "taco"">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 15 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato SYSTEM "taco">Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "" "taco">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 16 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato SYSTEM "tai'co">Hello
 Got:
+| <!DOCTYPE potato>
 | <html>
 |   <head>
 |   <body>
-|     <div>
-|       <b>
-|     <b>
-|       <div>
-|         <nobr>
-|           "a"
-|         <nobr>
+|     "Hello"
 Expected:
+| <!DOCTYPE potato "" "tai'co">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 23 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC "go'of">Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "go'of" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 24 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC 'go'of'>Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "go" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 25 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC 'go:hh   of' >Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "go:hh   of" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 26 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE potato PUBLIC "W3C-//dfdf" SYSTEM ggg>Hello
+Got:
+| <!DOCTYPE potato>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE potato "W3C-//dfdf" "">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 27 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+   "http://www.w3.org/TR/html4/strict.dtd">Hello
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+|     "Hello"
+
+Test 29 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 30 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
 | <html>
 |   <head>
 |   <body>
-|     <div>
-|       <b>
-|     <div>
-|       <b>
-|         <nobr>
-|           "a"
-|         <nobr>
-resources/doctype01.dat:
-31
 
 Test 31 of 37 in resources/doctype01.dat failed. Input:
 <!DOCTYPE root-element [SYSTEM OR PUBLIC FPI] "uri" [ 
@@ -4608,6 +6750,90 @@ Expected:
 |   <head>
 |   <body>
 |     "]>"
+
+Test 32 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE html PUBLIC
+  "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
+    "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 33 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML SYSTEM "http://www.w3.org/DTD/HTML4-strict.dtd"><body><b>Mine!</b></body>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       "Mine!"
+Expected:
+| <!DOCTYPE html "" "http://www.w3.org/DTD/HTML4-strict.dtd">
+| <html>
+|   <head>
+|   <body>
+|     <b>
+|       "Mine!"
+
+Test 34 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 35 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'http://www.w3.org/TR/html4/strict.dtd'>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 36 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01//EN"'http://www.w3.org/TR/html4/strict.dtd'>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
+
+Test 37 of 37 in resources/doctype01.dat failed. Input:
+<!DOCTYPE HTML PUBLIC'-//W3C//DTD HTML 4.01//EN''http://www.w3.org/TR/html4/strict.dtd'>
+Got:
+| <!DOCTYPE html>
+| <html>
+|   <head>
+|   <body>
+Expected:
+| <!DOCTYPE html "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+| <html>
+|   <head>
+|   <body>
 resources/scriptdata01.dat: PASS
 
 resources/html5test-com.dat:
@@ -4786,14 +7012,14 @@ resources/comments01.dat: PASS
 
 resources/adoption01.dat:
 1
+3
 6
 7
 8
 9
 11
-12
 
-Test 1 of 13 in resources/adoption01.dat failed. Input:
+Test 1 of 12 in resources/adoption01.dat failed. Input:
 <a><p></a></p>
 Got:
 | <html>
@@ -4809,7 +7035,29 @@ Expected:
 |     <p>
 |       <a>
 
-Test 6 of 13 in resources/adoption01.dat failed. Input:
+Test 3 of 12 in resources/adoption01.dat failed. Input:
+<a>1<button>2</a>3</button>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       "1"
+|       <button>
+|         "2"
+|     "3"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <a>
+|       "1"
+|     <button>
+|       <a>
+|         "2"
+|       "3"
+
+Test 6 of 12 in resources/adoption01.dat failed. Input:
 <table><a>1<p>2</a>3</p>
 Got:
 | <html>
@@ -4833,7 +7081,7 @@ Expected:
 |       "3"
 |     <table>
 
-Test 7 of 13 in resources/adoption01.dat failed. Input:
+Test 7 of 12 in resources/adoption01.dat failed. Input:
 <b><b><a><p></a>
 Got:
 | <html>
@@ -4853,7 +7101,7 @@ Expected:
 |         <p>
 |           <a>
 
-Test 8 of 13 in resources/adoption01.dat failed. Input:
+Test 8 of 12 in resources/adoption01.dat failed. Input:
 <b><a><b><p></a>
 Got:
 | <html>
@@ -4875,7 +7123,7 @@ Expected:
 |         <p>
 |           <a>
 
-Test 9 of 13 in resources/adoption01.dat failed. Input:
+Test 9 of 12 in resources/adoption01.dat failed. Input:
 <a><b><b><p></a>
 Got:
 | <html>
@@ -4899,34 +7147,7 @@ Expected:
 |         <p>
 |           <a>
 
-Test 11 of 13 in resources/adoption01.dat failed. Input:
-<p><b id="A"><script>document.getElementById("A").id = "B"</script></p>TEXT</b>
-Got:
-| <html>
-|   <head>
-|   <body>
-|     <p>
-|       <b>
-|         id="B"
-|         <script>
-|           "document.getElementById("A").id = "B""
-|     <b>
-|       id="B"
-|       "TEXT"
-Expected:
-| <html>
-|   <head>
-|   <body>
-|     <p>
-|       <b>
-|         id="B"
-|         <script>
-|           "document.getElementById("A").id = "B""
-|     <b>
-|       id="A"
-|       "TEXT"
-
-Test 12 of 13 in resources/adoption01.dat failed. Input:
+Test 11 of 12 in resources/adoption01.dat failed. Input:
 <table><a>1<td>2</td>3</table>
 Got:
 | <html>
@@ -5263,78 +7484,45 @@ Expected:
 "
 
 Test 6 of 9 in resources/tricky01.dat failed. Input:
-<TABLE>
-  <CENTER>
-  <FONT>You should see a 100x100 green Image below.
-  </CENTER>
-<IMG alt="Image" width=100 height=100 style="background-color:green">
-<tr><td>
-</td>
-</tr>
-</table>
+<table><center> <font>a</center> <img> <tr><td> </td> </tr> </table>
 Got:
 | <html>
 |   <head>
 |   <body>
 |     <center>
-|       "
-  "
+|       " "
 |       <font>
-|         "You should see a 100x100 green Image below.
-  "
+|         "a"
 |     <font>
-|       "
-"
+|       " "
 |       <img>
-|         alt="Image"
-|         height="100"
-|         style="background-color:green"
-|         width="100"
-|       "
-"
+|       " "
 |     <table>
-|       "
-  "
 |       <tbody>
 |         <tr>
 |           <td>
-|             "
-"
-|           "
-"
-|         "
-"
+|             " "
+|           " "
+|         " "
 Expected:
 | <html>
 |   <head>
 |   <body>
 |     <center>
-|       "
-  "
+|       " "
 |       <font>
-|         "You should see a 100x100 green Image below.
-  "
+|         "a"
 |     <font>
 |       <img>
-|         alt="Image"
-|         height="100"
-|         style="background-color:green"
-|         width="100"
-|       "
-"
+|       " "
 |     <table>
-|       "
-  
-"
+|       " "
 |       <tbody>
 |         <tr>
 |           <td>
-|             "
-"
-|           "
-"
-|         "
-"
+|             " "
+|           " "
+|         " "
 
 Test 7 of 9 in resources/tricky01.dat failed. Input:
 <table><tr><p><a><p>You should see this text.
@@ -5484,3 +7672,33 @@ nobr should have closed the div inside it implicitly. "
 |       "
 
 "
+resources/scripted/adoption01.dat:
+1
+
+Test 1 of 1 in resources/scripted/adoption01.dat failed. Input:
+<p><b id="A"><script>document.getElementById("A").id = "B"</script></p>TEXT</b>
+Got:
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <b>
+|         id="B"
+|         <script>
+|           "document.getElementById("A").id = "B""
+|     <b>
+|       id="B"
+|       "TEXT"
+Expected:
+| <html>
+|   <head>
+|   <body>
+|     <p>
+|       <b>
+|         id="B"
+|         <script>
+|           "document.getElementById("A").id = "B""
+|     <b>
+|       id="A"
+|       "TEXT"
+resources/scripted/webkit01.dat: PASS
index 18ba310..3ca512d 100644 (file)
@@ -53,6 +53,10 @@ var test_files = [
         'resources/tests14.dat',
         'resources/tests15.dat',
         'resources/tests16.dat',
+        'resources/tests17.dat',
+        'resources/tests18.dat',
+        'resources/tests19.dat',
+        'resources/tests20.dat',
         'resources/webkit01.dat',
         'resources/doctype01.dat',
         'resources/scriptdata01.dat',
@@ -65,7 +69,9 @@ var test_files = [
         'resources/inbody01.dat',
         'resources/isindex.dat',
         'resources/tables01.dat',
-        'resources/tricky01.dat'
+        'resources/tricky01.dat',
+        'resources/scripted/adoption01.dat',
+        'resources/scripted/webkit01.dat'
     ],
     tests = [],
     iframe = document.getElementsByTagName("iframe")[0],
index 4679722..403f3a5 100644 (file)
@@ -157,658 +157,658 @@ CONSOLE MESSAGE: line 2: FOO<span>BAR</span>BAZ
 CONSOLE MESSAGE: line 2: FOO<span>BAR</span>BAZ
 CONSOLE MESSAGE: line 2: FOO<span>BAR</span>BAZ
 resources/webkit01.dat:
-648.1
-649.2
-650.3
-651.4
-652.5
-653.6
-654.7
-655.8
-656.9
-657.10
-658.11
-659.12
-660.13
-661.14
-662.15
-663.16
-664.17
-665.18
-666.19
-667.20
-668.21
-669.22
-670.23
-671.24
-672.25
-673.26
-674.27
-700.1
-701.2
-702.3
-703.4
-704.5
-705.6
-706.7
-707.8
-708.9
-709.10
-710.11
-711.12
-712.13
-713.14
-714.15
-715.16
-716.17
-717.18
-718.19
-719.20
-720.21
-721.22
-722.23
-723.24
-724.25
-725.26
-726.27
-752.1
-753.2
-754.3
-755.4
-756.5
-757.6
-758.7
-759.8
-760.9
-761.10
-762.11
-763.12
-764.13
-765.14
-766.15
-767.16
-768.17
-769.18
-770.19
-771.20
-772.21
-773.22
-774.23
-775.24
-776.25
-777.26
-778.27
-779.28
-780.29
-781.30
-782.31
-783.32
-784.33
-785.34
-786.35
-787.36
-788.37
-789.38
-790.39
-791.40
-792.41
-793.42
-837.1
-838.2
-839.3
-840.4
-841.5
-842.6
-843.7
-844.8
-845.9
-846.10
-847.11
-848.12
-849.13
-850.14
-851.15
-852.16
-853.17
-854.18
-855.19
-856.20
-857.21
-858.22
-859.23
-860.24
-861.25
-862.26
-863.27
-864.28
-865.29
-866.30
-867.31
-868.32
-869.33
-870.34
-871.35
-872.36
-873.37
-874.38
-875.39
-876.40
-877.41
-878.42
-879.43
-880.44
-881.45
-882.46
-883.47
-884.48
-885.49
-886.50
-887.51
-888.52
-889.53
-890.54
-891.55
-892.56
-893.57
-894.58
-895.59
-896.60
-897.61
-898.62
-899.63
-900.64
-901.1
-902.2
-903.3
-904.4
-905.5
-906.6
-907.7
-908.8
-909.9
-910.10
-911.11
-912.12
-913.13
-914.14
-915.15
-916.16
-917.17
-918.18
-919.19
-920.20
-921.21
-922.22
-923.23
-924.24
-925.25
-926.26
-927.27
-928.28
-929.29
-930.30
-931.31
-932.32
-933.33
-934.34
-935.35
-936.36
-937.37
-938.38
-939.39
-940.40
-941.41
-942.42
-943.43
-944.44
-945.45
-946.46
-947.47
-948.48
-949.49
-950.50
-951.51
-952.52
-953.53
-954.54
-955.55
-956.56
-957.57
-958.58
-959.59
-960.60
-961.61
-962.62
-963.63
-964.64
-965.65
-966.66
-967.67
-968.68
-969.69
-970.70
-971.71
-972.1
-973.2
-974.3
-975.4
-976.5
-977.6
-978.7
-979.8
-980.9
-981.10
-982.11
-983.12
-984.13
-985.14
-986.15
-987.16
-988.17
-989.18
-990.19
-991.20
-992.21
-993.22
-994.23
-995.24
-996.25
-997.26
-998.27
-999.28
-1000.29
-1001.30
-1002.31
-1003.32
-1004.33
-1005.34
-1006.35
-1007.36
-1008.37
-1009.38
-1010.39
-1011.40
-1012.41
-1013.42
-1014.43
-1015.44
-1016.45
-1017.46
-1018.47
-1019.48
-1020.49
-1021.50
-1022.51
-1023.52
-1024.53
-1025.54
-1026.55
-1027.56
-1028.57
-1029.58
-1030.59
-1031.60
-1032.1
-1033.2
-1034.3
-1035.4
-1036.5
-1037.6
-1038.7
-1039.8
-1040.9
-1041.10
-1042.11
-1043.12
-1044.13
-1045.14
-1046.15
-1047.16
-1048.17
-1049.18
-1050.19
-1051.20
-1052.21
-1053.22
-1054.23
-1055.24
-1056.25
-1057.26
-1058.27
-1059.28
-1060.29
-1061.30
-1062.31
-1063.32
-1064.33
-1065.34
-1066.35
-1067.36
-1068.37
-1069.38
-1070.39
-1071.40
-1072.41
-1073.42
-1074.43
-1075.44
-1076.45
-1077.46
-1078.47
-1079.48
-1080.49
-1081.50
-1082.51
-1083.52
-1084.53
-1085.54
-1086.55
-1087.56
-1088.57
-1089.58
-1090.59
-1091.60
-1092.1
-1093.2
-1094.3
-1095.4
-1096.5
-1097.6
-1098.7
-1099.8
-1100.9
-1101.10
-1102.11
-1103.12
-1104.13
-1105.14
-1106.15
-1107.16
-1108.17
-1109.18
-1110.19
-1111.20
-1112.21
-1113.22
-1114.23
-1115.24
-1116.25
-1117.26
-1118.27
-1119.28
-1120.29
-1121.30
-1122.31
-1123.32
-1124.33
-1125.34
-1126.35
-1127.36
-1128.37
-1129.38
-1130.39
-1131.40
-1132.41
-1133.42
-1134.43
-1135.44
-1136.45
-1137.46
-1138.47
-1139.48
-1140.49
-1141.50
-1142.51
-1143.52
-1144.53
-1145.54
-1146.55
-1147.56
-1148.57
-1149.58
-1150.59
-1151.60
-1152.61
-1153.62
-1154.63
-1155.64
-1156.65
-1157.66
-1158.67
-1159.68
-1160.69
-1161.70
-1162.71
-1163.72
-1164.73
-1165.74
-1166.75
-1167.76
-1168.77
-1169.78
-1170.79
-1171.80
-1172.81
-1173.82
-1174.83
-1175.84
-1176.85
-1177.86
-1178.87
-1179.88
-1180.89
-1181.90
-1182.91
-1183.92
-1184.93
-1185.94
-1186.95
-1187.96
-1188.97
-1189.98
-1190.99
-1191.100
-1192.101
-1193.102
-1194.103
-1195.104
-1196.105
-1197.106
-1198.107
-1199.108
-1200.109
-1201.110
-1202.111
-1203.112
-1204.113
-1205.114
-1206.115
-1207.116
-1208.117
-1209.118
-1210.119
-1211.120
-1212.121
-1213.122
-1214.123
-1215.124
-1216.125
-1217.126
-1218.127
-1219.128
-1220.129
-1221.130
-1222.131
-1223.132
-1224.133
-1225.134
-1226.135
-1227.136
-1228.137
-1229.138
-1230.139
-1231.140
-1232.141
-1233.142
-1234.143
-1235.144
-1236.145
-1237.146
-1238.147
-1239.1
-1240.2
-1241.3
-1242.4
-1243.5
-1244.6
-1245.7
-1246.8
-1247.9
-1248.10
-1249.11
-1250.12
-1251.13
-1252.14
-1253.15
-1254.16
-1255.17
-1256.18
-1257.19
-1258.20
-1259.21
-1260.22
-1261.23
-1262.24
-1263.25
-1264.26
-1265.27
-1266.28
-1267.29
-1268.30
-1269.31
-1270.32
-1271.33
-1272.34
-1273.35
-1274.36
-1275.37
-1276.38
-1277.39
-1278.40
-1279.41
-1280.42
-1281.43
-1282.44
-1283.45
-1284.46
-1285.47
-1286.48
-1287.49
-1288.50
-1289.51
-1290.52
-1291.53
-1292.54
-1293.55
-1294.56
-1295.57
-1296.58
-1297.59
-1298.60
-1299.61
-1300.62
-1301.63
-1302.64
-1303.65
-1304.66
-1305.67
-1306.68
-1307.69
-1308.70
-1309.71
-1310.72
-1311.73
-1312.74
-1313.75
-1314.76
-1315.77
-1316.78
-1317.79
-1318.80
-1319.81
-1320.82
-1321.83
-1322.84
-1323.85
-1324.86
-1325.87
-1326.88
-1327.89
-1328.90
-1329.91
-1330.92
-1331.93
-1332.94
-1333.95
-1334.96
-1335.97
-1336.98
-1337.99
-1338.100
-1339.101
-1340.102
-1341.103
-1342.104
-1343.105
-1344.106
-1345.107
-1346.108
-1347.109
-1348.110
-1349.111
-1350.112
-1351.113
-1352.114
-1353.115
-1354.116
-1355.117
-1356.118
-1357.119
-1358.120
-1359.121
-1360.122
-1361.123
-1362.124
-1363.125
-1364.126
-1392.1
-1393.2
-1394.3
-1395.4
-1396.5
-1397.6
-1398.7
-1399.8
-1400.9
-1401.10
-1402.11
-1403.12
-1404.13
-1405.14
-1406.15
-1407.16
-1408.17
-1409.18
-1410.19
-1411.20
-1412.21
-1413.22
-1414.23
-1415.24
-1416.25
-1417.26
-1418.27
-1419.28
-1420.29
-1421.30
-1422.31
+494.1
+495.2
+496.3
+497.4
+498.5
+499.6
+500.7
+501.8
+502.9
+503.10
+504.11
+505.12
+506.13
+507.14
+508.15
+509.16
+510.17
+511.18
+512.19
+513.20
+514.21
+515.22
+516.23
+517.24
+518.25
+519.26
+520.27
+546.1
+547.2
+548.3
+549.4
+550.5
+551.6
+552.7
+553.8
+554.9
+555.10
+556.11
+557.12
+558.13
+559.14
+560.15
+561.16
+562.17
+563.18
+564.19
+565.20
+566.21
+567.22
+568.23
+569.24
+570.25
+571.26
+572.27
+598.1
+599.2
+600.3
+601.4
+602.5
+603.6
+604.7
+605.8
+606.9
+607.10
+608.11
+609.12
+610.13
+611.14
+612.15
+613.16
+614.17
+615.18
+616.19
+617.20
+618.21
+619.22
+620.23
+621.24
+622.25
+623.26
+624.27
+625.28
+626.29
+627.30
+628.31
+629.32
+630.33
+631.34
+632.35
+633.36
+634.37
+635.38
+636.39
+637.40
+638.41
+639.42
+683.1
+684.2
+685.3
+686.4
+687.5
+688.6
+689.7
+690.8
+691.9
+692.10
+693.11
+694.12
+695.13
+696.14
+697.15
+698.16
+699.17
+700.18
+701.19
+702.20
+703.21
+704.22
+705.23
+706.24
+707.25
+708.26
+709.27
+710.28
+711.29
+712.30
+713.31
+714.32
+715.33
+716.34
+717.35
+718.36
+719.37
+720.38
+721.39
+722.40
+723.41
+724.42
+725.43
+726.44
+727.45
+728.46
+729.47
+730.48
+731.49
+732.50
+733.51
+734.52
+735.53
+736.54
+737.55
+738.56
+739.57
+740.58
+741.59
+742.60
+743.61
+744.62
+745.63
+746.64
+747.1
+748.2
+749.3
+750.4
+751.5
+752.6
+753.7
+754.8
+755.9
+756.10
+757.11
+758.12
+759.13
+760.14
+761.15
+762.16
+763.17
+764.18
+765.19
+766.20
+767.21
+768.22
+769.23
+770.24
+771.25
+772.26
+773.27
+774.28
+775.29
+776.30
+777.31
+778.32
+779.33
+780.34
+781.35
+782.36
+783.37
+784.38
+785.39
+786.40
+787.41
+788.42
+789.43
+790.44
+791.45
+792.46
+793.47
+794.48
+795.49
+796.50
+797.51
+798.52
+799.53
+800.54
+801.55
+802.56
+803.57
+804.58
+805.59
+806.60
+807.61
+808.62
+809.63
+810.64
+811.65
+812.66
+813.67
+814.68
+815.69
+816.70
+817.71
+818.1
+819.2
+820.3
+821.4
+822.5
+823.6
+824.7
+825.8
+826.9
+827.10
+828.11
+829.12
+830.13
+831.14
+832.15
+833.16
+834.17
+835.18
+836.19
+837.20
+838.21
+839.22
+840.23
+841.24
+842.25
+843.26
+844.27
+845.28
+846.29
+847.30
+848.31
+849.32
+850.33
+851.34
+852.35
+853.36
+854.37
+855.38
+856.39
+857.40
+858.41
+859.42
+860.43
+861.44
+862.45
+863.46
+864.47
+865.48
+866.49
+867.50
+868.51
+869.52
+870.53
+871.54
+872.55
+873.56
+874.57
+875.58
+876.59
+877.60
+878.1
+879.2
+880.3
+881.4
+882.5
+883.6
+884.7
+885.8
+886.9
+887.10
+888.11
+889.12
+890.13
+891.14
+892.15
+893.16
+894.17
+895.18
+896.19
+897.20
+898.21
+899.22
+900.23
+901.24
+902.25
+903.26
+904.27
+905.28
+906.29
+907.30
+908.31
+909.32
+910.33
+911.34
+912.35
+913.36
+914.37
+915.38
+916.39
+917.40
+918.41
+919.42
+920.43
+921.44
+922.45
+923.46
+924.47
+925.48
+926.49
+927.50
+928.51
+929.52
+930.53
+931.54
+932.55
+933.56
+934.57
+935.58
+936.59
+937.60
+938.1
+939.2
+940.3
+941.4
+942.5
+943.6
+944.7
+945.8
+946.9
+947.10
+948.11
+949.12
+950.13
+951.14
+952.15
+953.16
+954.17
+955.18
+956.19
+957.20
+958.21
+959.22
+960.23
+961.24
+962.25
+963.26
+964.27
+965.28
+966.29
+967.30
+968.31
+969.32
+970.33
+971.34
+972.35
+973.36
+974.37
+975.38
+976.39
+977.40
+978.41
+979.42
+980.43
+981.44
+982.45
+983.46
+984.47
+985.48
+986.49
+987.50
+988.51
+989.52
+990.53
+991.54
+992.55
+993.56
+994.57
+995.58
+996.59
+997.60
+998.61
+999.62
+1000.63
+1001.64
+1002.65
+1003.66
+1004.67
+1005.68
+1006.69
+1007.70
+1008.71
+1009.72
+1010.73
+1011.74
+1012.75
+1013.76
+1014.77
+1015.78
+1016.79
+1017.80
+1018.81
+1019.82
+1020.83
+1021.84
+1022.85
+1023.86
+1024.87
+1025.88
+1026.89
+1027.90
+1028.91
+1029.92
+1030.93
+1031.94
+1032.95
+1033.96
+1034.97
+1035.98
+1036.99
+1037.100
+1038.101
+1039.102
+1040.103
+1041.104
+1042.105
+1043.106
+1044.107
+1045.108
+1046.109
+1047.110
+1048.111
+1049.112
+1050.113
+1051.114
+1052.115
+1053.116
+1054.117
+1055.118
+1056.119
+1057.120
+1058.121
+1059.122
+1060.123
+1061.124
+1062.125
+1063.126
+1064.127
+1065.128
+1066.129
+1067.130
+1068.131
+1069.132
+1070.133
+1071.134
+1072.135
+1073.136
+1074.137
+1075.138
+1076.139
+1077.140
+1078.141
+1079.142
+1080.143
+1081.144
+1082.145
+1083.146
+1084.147
+1085.1
+1086.2
+1087.3
+1088.4
+1089.5
+1090.6
+1091.7
+1092.8
+1093.9
+1094.10
+1095.11
+1096.12
+1097.13
+1098.14
+1099.15
+1100.16
+1101.17
+1102.18
+1103.19
+1104.20
+1105.21
+1106.22
+1107.23
+1108.24
+1109.25
+1110.26
+1111.27
+1112.28
+1113.29
+1114.30
+1115.31
+1116.32
+1117.33
+1118.34
+1119.35
+1120.36
+1121.37
+1122.38
+1123.39
+1124.40
+1125.41
+1126.42
+1127.43
+1128.44
+1129.45
+1130.46
+1131.47
+1132.48
+1133.49
+1134.50
+1135.51
+1136.52
+1137.53
+1138.54
+1139.55
+1140.56
+1141.57
+1142.58
+1143.59
+1144.60
+1145.61
+1146.62
+1147.63
+1148.64
+1149.65
+1150.66
+1151.67
+1152.68
+1153.69
+1154.70
+1155.71
+1156.72
+1157.73
+1158.74
+1159.75
+1160.76
+1161.77
+1162.78
+1163.79
+1164.80
+1165.81
+1166.82
+1167.83
+1168.84
+1169.85
+1170.86
+1171.87
+1172.88
+1173.89
+1174.90
+1175.91
+1176.92
+1177.93
+1178.94
+1179.95
+1180.96
+1181.97
+1182.98
+1183.99
+1184.100
+1185.101
+1186.102
+1187.103
+1188.104
+1189.105
+1190.106
+1191.107
+1192.108
+1193.109
+1194.110
+1195.111
+1196.112
+1197.113
+1198.114
+1199.115
+1200.116
+1201.117
+1202.118
+1203.119
+1204.120
+1205.121
+1206.122
+1207.123
+1208.124
+1209.125
+1210.126
+1238.1
+1239.2
+1240.3
+1241.4
+1242.5
+1243.6
+1244.7
+1245.8
+1246.9
+1247.10
+1248.11
+1249.12
+1250.13
+1251.14
+1252.15
+1253.16
+1254.17
+1255.18
+1256.19
+1257.20
+1258.21
+1259.22
+1260.23
+1261.24
+1262.25
+1263.26
+1264.27
+1265.28
+1266.29
+1267.30
+1268.31