Subramanya Sastry has uploaded a new change for review.
https://gerrit.wikimedia.org/r/162112
Change subject: Turn off data-parsoid stripping from template content
......................................................................
Turn off data-parsoid stripping from template content
* Flow is currently using data-parsoid and this could break stuff
there. Till such time we can confirm that it is safe to strip
data-parsoid from templated content for Flow, turning this off.
* Updated blacklist with changes to HTML of known failing tests.
Change-Id: Iec9b47522524d3bea32b08f740b09d3427fc2c4a
---
M lib/mediawiki.DOMPostProcessor.js
M tests/parserTests-blacklist.js
2 files changed, 29 insertions(+), 26 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid
refs/changes/12/162112/1
diff --git a/lib/mediawiki.DOMPostProcessor.js
b/lib/mediawiki.DOMPostProcessor.js
index 9ea3f57..3ad1bec 100644
--- a/lib/mediawiki.DOMPostProcessor.js
+++ b/lib/mediawiki.DOMPostProcessor.js
@@ -210,8 +210,11 @@
domVisitor2.addHandler( null, cleanupAndSaveDataParsoid.bind( null, env
) );
this.processors.push(domVisitor2.traverse.bind(domVisitor2));
+ // --- Turn off this data-parsoid stripping since we don't yet know
---
+ // --- how Flow will be affected by it. For now, safe than sorry till
---
+ // --- we hear from them about it. ---
// Remove data-parsoid from transcluded content
- this.processors.push(cleanUpTemplates.removeDataParsoid);
+ // this.processors.push(cleanUpTemplates.removeDataParsoid);
}
// Inherit from EventEmitter
diff --git a/tests/parserTests-blacklist.js b/tests/parserTests-blacklist.js
index 8740a13..8417639 100644
--- a/tests/parserTests-blacklist.js
+++ b/tests/parserTests-blacklist.js
@@ -49,21 +49,21 @@
add("wt2html", "<pre> with <nowiki> inside (compatibility with 1.6 and
earlier)", "<pre data-parsoid='{\"stx\":\"html\",\"dsr\":[0,45,5,6]}'><span
typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[5,39,8,9]}'>\n<b>\n<cite>\n<em>\n</span></pre>");
add("wt2html", "Bug 52763: Preformatted in <blockquote>", "<blockquote
data-parsoid='{\"stx\":\"html\",\"dsr\":[0,74,12,13]}'>\n<p
data-parsoid='{\"dsr\":[13,18,0,0]}'> Blah</p>\n<table
data-parsoid='{\"dsr\":[19,60,2,2]}'>\n<tbody
data-parsoid='{\"dsr\":[22,58,0,0]}'><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[22,57,0,0]}'><td
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[22,57,1,0]}'>\n<pre
data-parsoid='{\"dsr\":[24,57,1,0]}'>indented cell (no
pre-wrapping!)</pre></td></tr>\n</tbody></table>\n</blockquote>");
add("wt2html", "Bug 15491: <ins>/<del> in blockquote (2)", "<blockquote
data-parsoid='{\"stx\":\"html\",\"dsr\":[0,64,12,13]}'>Foo <del
data-parsoid='{\"stx\":\"html\",\"dsr\":[16,30,5,6]}'>bar</del> <ins
data-parsoid='{\"stx\":\"html\",\"dsr\":[31,45,5,6]}'>baz</ins>
quux\n</blockquote>");
-add("wt2html", "Templates: Indent-Pre: 1f: Wrapping should be based on
expanded content", "<pre about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"
\"}},\"i\":0}},\"a\"]}'
data-parsoid='{\"dsr\":[0,11,1,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</pre>\n\n<span
about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
\"}},\"i\":0}},\"a\"]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[13,25,null,null]}'>\n</span><pre
about=\"#mwt2\">a</pre>\n\n<span about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
b\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[27,39,null,null]}'>\n</span><pre
about=\"#mwt3\">b</pre>\n\n<p about=\"#mwt4\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n
\"}},\"i\":0}},\"b\"]}'
data-parsoid='{\"dsr\":[41,54,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><span
about=\"#mwt4\">\n</span><pre about=\"#mwt4\">b</pre>\n\n<p about=\"#mwt5\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[56,67,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><span
about=\"#mwt5\">\n</span><pre data-parsoid='{\"dsr\":[67,69,1,0]}'>b</pre>");
-add("wt2html", "Templates: Don't strip whitespace from positional-param
values", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a
\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,11,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a
</p>\n\n<p about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"{{echo|b}}
\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[13,33,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>b
</p>\n\n<pre about=\"#mwt4\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"
c \\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[35,48,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>c
</pre><span about=\"#mwt4\">\n</span>\n\n<pre about=\"#mwt5\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"
{{echo|d}}\\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[50,71,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>d</pre><span
about=\"#mwt5\">\n</span>\n\n<span about=\"#mwt7\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
e\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[73,85,null,null]}'>\n</span><pre
about=\"#mwt7\">e</pre>\n\n<span about=\"#mwt8\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n*
f\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[87,100,null,null]}'>\n</span><p
about=\"#mwt8\">* f</p>\n\n<span about=\"#mwt9\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
\"}},\"i\":0}},\"g\"]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[102,114,null,null]}'>\n</span><pre
about=\"#mwt9\">g</pre>");
+add("wt2html", "Templates: Indent-Pre: 1f: Wrapping should be based on
expanded content", "<pre about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"
\"}},\"i\":0}},\"a\"]}'
data-parsoid='{\"dsr\":[0,11,1,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</pre>\n\n<span
about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
\"}},\"i\":0}},\"a\"]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[13,25,null,null]}'>\n</span><pre
about=\"#mwt2\" data-parsoid='{\"dsr\":[null,25,1,0]}'>a</pre>\n\n<span
about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
b\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[27,39,null,null]}'>\n</span><pre
about=\"#mwt3\" data-parsoid='{\"dsr\":[null,39,1,0]}'>b</pre>\n\n<p
about=\"#mwt4\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n
\"}},\"i\":0}},\"b\"]}'
data-parsoid='{\"dsr\":[41,54,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><span
about=\"#mwt4\" data-parsoid=\"{}\">\n</span><pre about=\"#mwt4\"
data-parsoid='{\"dsr\":[null,54,1,0]}'>b</pre>\n\n<p about=\"#mwt5\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[56,67,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><span
about=\"#mwt5\" data-parsoid=\"{}\">\n</span><pre
data-parsoid='{\"dsr\":[67,69,1,0]}'>b</pre>");
+add("wt2html", "Templates: Don't strip whitespace from positional-param
values", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a
\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,11,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a
</p>\n\n<p about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"{{echo|b}}
\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[13,33,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>b
</p>\n\n<pre about=\"#mwt4\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"
c \\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[35,48,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>c
</pre><span about=\"#mwt4\" data-parsoid=\"{}\">\n</span>\n\n<pre
about=\"#mwt5\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"
{{echo|d}}\\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[50,71,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>d</pre><span
about=\"#mwt5\" data-parsoid=\"{}\">\n</span>\n\n<span about=\"#mwt7\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
e\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[73,85,null,null]}'>\n</span><pre
about=\"#mwt7\" data-parsoid='{\"dsr\":[null,85,1,0]}'>e</pre>\n\n<span
about=\"#mwt8\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n*
f\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[87,100,null,null]}'>\n</span><p
about=\"#mwt8\" data-parsoid='{\"dsr\":[null,100,0,0]}'>* f</p>\n\n<span
about=\"#mwt9\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n
\"}},\"i\":0}},\"g\"]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[102,114,null,null]}'>\n</span><pre
about=\"#mwt9\" data-parsoid='{\"dsr\":[null,114,1,0]}'>g</pre>");
add("wt2html", "3a. Indent-Pre and block tags (single-line html)", " a <p
data-parsoid='{\"stx\":\"html\",\"dsr\":[3,15,3,4]}'> foo </p>\n b <div
data-parsoid='{\"stx\":\"html\",\"dsr\":[19,35,5,6]}'> foo </div>\n c
<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[39,69,12,13]}'> foo
</blockquote>\n<pre data-parsoid='{\"dsr\":[70,89,1,0]}'><span
data-parsoid='{\"stx\":\"html\",\"dsr\":[71,89,6,7]}'> foo </span></pre>");
add("wt2html", "3b. Indent-Pre and block tags (multi-line html)", "<pre
data-parsoid='{\"dsr\":[0,19,1,0]}'>a <span
data-parsoid='{\"stx\":\"html\",\"dsr\":[3,19,6,7]}'>foo</span></pre>\n b <div
data-parsoid='{\"stx\":\"html\",\"dsr\":[23,39,5,6]}'> foo </div>");
add("wt2html", "4. Indent-Pre and extension tags", "<pre
data-parsoid='{\"dsr\":[0,39,1,0]}'>a <span typeof=\"mw:Extension/gallery\"
about=\"#mwt1\"
data-parsoid='{\"stx\":\"html\",\"src\":\"<gallery>\\nFile:foobar.jpg\\n</gallery>\",\"tagWidths\":[9,10],\"dsr\":[3,39,9,10]}'><gallery>\nFile:foobar.jpg\n</gallery></span></pre>");
add("wt2html", "6. Pre-blocks should extend across lines with leading WS even
when there is no wrappable content", "<pre
data-parsoid='{\"dsr\":[0,26,1,0]}'>a\n\n <!-- continue -->\nb</pre>\n\n<pre
data-parsoid='{\"dsr\":[28,30,1,0]}'>c</pre>\n \n<p
data-parsoid='{\"dsr\":[33,34,0,0]}'>d</p>");
add("wt2html", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid", "<p
data-parsoid='{\"dsr\":[0,204,0,0]}'><i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[0,29,2,0]}'><a
rel=\"mw:ExtLink\" href=\"http://example.com\"
data-parsoid='{\"targetOff\":22,\"contentOffsets\":[22,28],\"dsr\":[2,29,20,1]}'>text<i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[26,28,2,0]}'></i></a></i>\n<a
rel=\"mw:ExtLink\" href=\"http://example.com\"
data-parsoid='{\"targetOff\":50,\"contentOffsets\":[50,57],\"dsr\":[30,58,20,1]}'><b
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[50,57,3,0]}'>text</b></a><b
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[58,61,3,0]}'></b>\n<i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[62,106,2,0]}'>Something <a
rel=\"mw:ExtLink\" href=\"http://example.com\"
data-parsoid='{\"targetOff\":94,\"contentOffsets\":[94,105],\"dsr\":[74,106,20,1]}'>in
italic<i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[103,105,2,0]}'></i></a></i>\n<i
data-parsoid='{\"dsr\":[107,164,2,2]}'>Something <a rel=\"mw:ExtLink\"
href=\"http://example.com\"
data-parsoid='{\"targetOff\":139,\"contentOffsets\":[139,160],\"dsr\":[119,161,20,1]}'>mixed<b
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[144,160,3,0]}'><i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[147,160,2,0]}'>, even
bold</i></b></a>'</i>\n<b
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[165,204,3,0]}'><i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[168,204,2,0]}'>Now <a
rel=\"mw:ExtLink\" href=\"http://example.com\"
data-parsoid='{\"targetOff\":194,\"contentOffsets\":[194,203],\"dsr\":[174,204,20,1]}'>both<b
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[198,203,3,0]}'><i
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[201,203,2,0]}'></i></b></a></i></b></p>");
add("wt2html", "External link containing double-single-quotes in text embedded
in italics (bug 4598 sanity check)", "<p data-parsoid='{\"dsr\":[0,60,0,0]}'><i
data-parsoid='{\"dsr\":[0,60,2,2]}'>Some <a rel=\"mw:ExtLink\"
href=\"http://example.com/\"
data-parsoid='{\"targetOff\":28,\"contentOffsets\":[28,56],\"dsr\":[7,57,21,1]}'>pretty
<i data-parsoid='{\"dsr\":[35,46,2,2]}'>italics</i> and stuff</a>!</i></p>");
-add("wt2html", "Template-generated table cell attributes and cell content
(3)", "<table data-parsoid='{\"dsr\":[0,35,2,2]}'>\n<tbody
data-parsoid='{\"dsr\":[3,33,0,0]}'><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,32,0,0]}'><td
align=\"center\" style=\"color: red\" typeof=\"mw:Transclusion\"
about=\"#mwt1\" data-mw='{\"parts\":[\"|align=center
\",{\"template\":{\"target\":{\"wt\":\"table_cells\",\"href\":\"./Template:Table_cells\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,32,1,0],\"pi\":[[]]}'>
Foo<span> || Bar || Baz</span></td></tr>\n</tbody></table>");
+add("wt2html", "Template-generated table cell attributes and cell content
(3)", "<table data-parsoid='{\"dsr\":[0,35,2,2]}'>\n<tbody
data-parsoid='{\"dsr\":[3,33,0,0]}'><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,32,0,0]}'><td
align=\"center\" style=\"color: red\" typeof=\"mw:Transclusion\"
about=\"#mwt1\" data-mw='{\"parts\":[\"|align=center
\",{\"template\":{\"target\":{\"wt\":\"table_cells\",\"href\":\"./Template:Table_cells\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,32,1,0],\"pi\":[[]]}'>
Foo<span data-parsoid=\"{}\"> || Bar ||
Baz</span></td></tr>\n</tbody></table>");
add("wt2html", "Broken image links with HTML captions (bug 39700)", "<meta
typeof=\"mw:Placeholder\"
data-parsoid='{\"src\":\"[[File:Nonexistent|<script></script>]]\",\"optList\":[{\"ck\":\"caption\",\"ak\":\"<script></script>\"}],\"dsr\":[0,38,null,null]}'/>\n<meta
typeof=\"mw:Placeholder\"
data-parsoid='{\"src\":\"[[File:Nonexistent|100px|<script></script>]]\",\"optList\":[{\"ck\":\"width\",\"ak\":\"100px\"},{\"ck\":\"caption\",\"ak\":\"<script></script>\"}],\"dsr\":[39,83,null,null]}'/>\n<meta
typeof=\"mw:Placeholder\"
data-parsoid='{\"src\":\"[[File:Nonexistent|&lt;]]\",\"optList\":[{\"ck\":\"caption\",\"ak\":\"&lt;\"}],\"dsr\":[84,109,null,null]}'/>\n<meta
typeof=\"mw:Placeholder\"
data-parsoid='{\"src\":\"[[File:Nonexistent|a<i>b</i>c]]\",\"optList\":[{\"ck\":\"caption\",\"ak\":\"a<i>b</i>c\"}],\"dsr\":[110,141,null,null]}'/>");
add("wt2html", "Self-link to numeric title", "<p
data-parsoid='{\"dsr\":[0,5,0,0]}'><a rel=\"mw:WikiLink\" href=\"./0\"
title=\"0\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./0\"},\"sa\":{\"href\":\"0\"},\"dsr\":[0,5,2,2]}'>0</a></p>");
add("wt2html", "<nowiki> inside a link", "<p
data-parsoid='{\"dsr\":[0,96,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page\"
title=\"Main Page\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main<nowiki>
Page</nowiki>\"},\"dsr\":[0,30,2,2]}'>Main Page</a> <a rel=\"mw:WikiLink\"
href=\"./Main_Page\" title=\"Main Page\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main
Page\"},\"dsr\":[31,96,12,2]}'>the main page <span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[57,94,8,9]}'>[it's not very good]</span></a></p>");
add("wt2html", "Handling html with a div self-closing tag", "<div title=\"\"
data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[0,13,13,0]}'></div>\n<div
title=\"\"
data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[14,26,12,0]}'></div>\n<div
data-parsoid='{\"stx\":\"html\",\"a\":{\"title/\":null},\"sa\":{\"title/\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[27,93,13,0]}'>\n<div
title=\"bar\"
data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[41,58,17,0]}'></div>\n<div
title=\"bar\"
data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[59,75,16,0]}'></div>\n<div
title=\"bar/\"
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[76,93,17,0]}'></div></div>");
add("wt2html", "Horizontal ruler -- Supports content following dashes on same
line", "<hr data-parsoid='{\"lineContent\":true,\"dsr\":[0,4,4,0]}'/> Foo");
-add("wt2html", "2. Lists with start-of-line-transparent tokens before bullets:
Template close", "<ul about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"*foo
\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"bar\\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,18,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"src\":\"*foo
{{echo|bar\\n}}\"}'><li>foo bar</li></ul><span about=\"#mwt1\">\n</span><p
data-parsoid='{\"dsr\":[18,22,0,0]}'>*baz</p>");
+add("wt2html", "2. Lists with start-of-line-transparent tokens before bullets:
Template close", "<ul about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"*foo
\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"bar\\n\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,18,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"src\":\"*foo
{{echo|bar\\n}}\"}'><li data-parsoid='{\"dsr\":[0,null,1,0]}'>foo
bar</li></ul><span about=\"#mwt1\" data-parsoid=\"{}\">\n</span><p
data-parsoid='{\"dsr\":[18,22,0,0]}'>*baz</p>");
add("wt2html", "Multiple list tags generated by templates", "<li
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"<li>\"}},\"i\":0}},\"a\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"<li>\"}},\"i\":1}},\"b\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"<li>\"}},\"i\":2}},\"c\"]}'
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[0,44,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a\n</li><li
about=\"#mwt1\"
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true}'>b\n</li><li
about=\"#mwt1\"
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[null,44,null,0]}'>c</li>");
add("wt2html", "Test the li-hack\n(The PHP parser relies on Tidy for the
hack)", "<ul data-parsoid='{\"dsr\":[0,114,0,0]}'><li
data-parsoid='{\"dsr\":[0,5,1,0]}'> foo</li>\n<li
data-parsoid='{\"stx\":\"html\",\"dsr\":[6,19,6,null],\"liHackSrc\":\"*
\"}'>li-hack</li>\n<li about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"<li>templated
li-hack\"}},\"i\":0}}]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[20,52,2,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"liHackSrc\":\"*
\"}'>templated li-hack</li>\n<li
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[53,66,1,0]}'> <!--foo-->
</li><li data-parsoid='{\"stx\":\"html\",\"dsr\":[66,114,4,null]}'> unsupported
li-hack with preceding comments</li></ul>\n\n<ul
data-parsoid='{\"stx\":\"html\",\"dsr\":[116,154,4,5]}'>\n<li
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[121,125,4,0]}'></li><li
data-parsoid='{\"stx\":\"html\",\"dsr\":[125,148,4,5]}'>not a
li-hack\n</li>\n</ul>");
add("wt2html", "Unbalanced closing non-block tags don't break a list\n(php
parser relies on Tidy to fix up)", "<p data-parsoid='{\"dsr\":[0,6,0,0]}'><span
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[0,6,6,0]}'></span></p>\n<ul
data-parsoid='{\"dsr\":[7,32,0,0]}'><li
data-parsoid='{\"dsr\":[7,22,1,0]}'>a<span
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[16,22,6,0]}'></span></li>\n<li
data-parsoid='{\"dsr\":[23,32,1,0]}'>b</li></ul>");
@@ -111,15 +111,15 @@
add("wt2html", "Template with invalid target containing wikilink", "<p
data-parsoid='{\"dsr\":[0,17,0,0]}'>{{<a rel=\"mw:WikiLink\"
href=\"./Main_Page\" title=\"Main Page\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main
Page\"},\"dsr\":[2,15,2,2]}'>Main Page</a>}}</p>");
add("wt2html", "Template redirect", "<link rel=\"mw:PageProp/redirect\"
href=\"./Template:Templatesimple\" about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"templateredirect\",\"href\":\"./Template:Templateredirect\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"a\":{\"href\":\"./Template:Templatesimple\"},\"sa\":{\"href\":\"Template:templatesimple\"},\"dsr\":[0,20,null,null],\"pi\":[[]]}'/>");
add("wt2html", "Template with thumb image (with link in description)", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"paramtest\",\"href\":\"./Template:Paramtest\"},\"params\":{\"param\":{\"wt\":\"[[Image:noimage.png|thumb|[[no
link|link]] [[no link|caption]]]]\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,88,0,0],\"pi\":[[{\"k\":\"param\",\"named\":true,\"spc\":[\"\\n
\",\" \",\"\",\"\"]}]]}'>This is a test template with parameter </p>");
-add("wt2html", "Template with complex arguments", "<p
data-parsoid='{\"dsr\":[0,106,0,0]}'><a rel=\"mw:WikiLink\"
href=\"./Template:Complextemplate\" title=\"Template:Complextemplate\"
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"complextemplate\",\"href\":\"./Template:Complextemplate\"},\"params\":{\"1\":{\"wt\":\"[[Template:complextemplate|link]]\"},\"param\":{\"wt\":\"{{
templateasargtest |\\n templ = simple }}\"}},\"i\":0}}]}'
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Template:Complextemplate\"},\"sa\":{\"href\":\"Template:complextemplate\"},\"dsr\":[0,106,null,null],\"pi\":[[{\"k\":\"param\",\"named\":true,\"spc\":[\"\\n
\",\"
\",\"\",\"\"]},{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>link</a><span
about=\"#mwt1\"> This is a test template with parameter (test)</span></p>");
+add("wt2html", "Template with complex arguments", "<p
data-parsoid='{\"dsr\":[0,106,0,0]}'><a rel=\"mw:WikiLink\"
href=\"./Template:Complextemplate\" title=\"Template:Complextemplate\"
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"complextemplate\",\"href\":\"./Template:Complextemplate\"},\"params\":{\"1\":{\"wt\":\"[[Template:complextemplate|link]]\"},\"param\":{\"wt\":\"{{
templateasargtest |\\n templ = simple }}\"}},\"i\":0}}]}'
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Template:Complextemplate\"},\"sa\":{\"href\":\"Template:complextemplate\"},\"dsr\":[0,106,null,null],\"pi\":[[{\"k\":\"param\",\"named\":true,\"spc\":[\"\\n
\",\"
\",\"\",\"\"]},{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>link</a><span
about=\"#mwt1\" data-parsoid=\"{}\"> This is a test template with parameter
(test)</span></p>");
add("wt2html", "BUG 553: link with two variables in a piped link", "<table
data-parsoid='{\"dsr\":[0,26,2,2]}'>\n<tbody
data-parsoid='{\"dsr\":[3,24,0,0]}'><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,23,0,0]}'><td
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,23,1,0]}'>[[<span
about=\"#mwt5\" typeof=\"mw:Param\"
data-parsoid='{\"dsr\":[6,13,null,null],\"src\":\"{{{1}}}\"}'>{{{1}}}</span>|<span
about=\"#mwt2\" typeof=\"mw:Param\"
data-parsoid='{\"dsr\":[14,21,null,null],\"src\":\"{{{2}}}\"}'>{{{2}}}</span>]]</td></tr>\n</tbody></table>");
add("wt2html", "Template infinite loop", "<span about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"loop1\",\"href\":\"./Template:Loop1\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,9,null,null],\"pi\":[[]]}'></span>");
-add("wt2html", "BUG 529: Template with table, not included at beginning of
line", "foo <table about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"table\",\"href\":\"./Template:Table\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[4,13,null,null],\"pi\":[[]]}'>\n<tbody><tr><td> 1
</td><td> 2</td></tr>\n<tr>\n<td> 3 </td><td> 4</td></tr>\n</tbody></table>");
+add("wt2html", "BUG 529: Template with table, not included at beginning of
line", "foo <table about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"table\",\"href\":\"./Template:Table\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[4,13,null,null],\"pi\":[[]]}'>\n<tbody
data-parsoid=\"{}\"><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true}'><td
data-parsoid='{\"autoInsertedEnd\":true}'> 1 </td><td
data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true}'> 2</td></tr>\n<tr
data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true}'>\n<td
data-parsoid='{\"autoInsertedEnd\":true}'> 3 </td><td
data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true}'>
4</td></tr>\n</tbody></table>");
add("wt2html", "Template with targets containing wikilinks", "<p
data-parsoid='{\"dsr\":[0,11,0,0]}'>{{<a rel=\"mw:WikiLink\" href=\"./Foo\"
title=\"Foo\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Foo\"},\"sa\":{\"href\":\"foo\"},\"dsr\":[2,9,2,2]}'>foo</a>}}</p>\n\n<p
data-parsoid='{\"dsr\":[13,33,0,0]}'>{{<a
data-mw='{\"attribs\":[[{\"txt\":\"href\"},{\"html\":\"<span
about=\\\"#mwt3\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;foo&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[17,29,null,null]}\\\">foo</span>\"}]]}'
typeof=\"mw:ExpandedAttrs\" about=\"#mwt4\" rel=\"mw:WikiLink\" href=\"./Foo\"
title=\"Foo\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Foo\"},\"sa\":{\"href\":\"{{echo|foo}}\"},\"dsr\":[15,31,null,null]}'>foo</a>}}</p>\n\n<p
data-parsoid='{\"dsr\":[35,55,0,0]}'><span typeof=\"mw:Transclusion
mw:Placeholder\" about=\"#mwt5\" id=\"mwt5\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"{{echo|[[foo}}]]\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[35,55,null,null],\"pi\":[[]]}'>Warning: Page/template
fetching disabled, and no cache for Template:[[foo]]</span></p>");
add("wt2html", "msgnw keyword", "<p data-parsoid='{\"dsr\":[0,20,0,0]}'><span
typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" id=\"mwt1\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"msgnw:MSGNW
test\",\"href\":\"./Msgnw:MSGNW_test\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,20,null,null],\"pi\":[[]]}'>Warning: Page/template
fetching disabled, and no cache for Msgnw:MSGNW_test</span></p>");
add("wt2html", "int keyword", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"int:youhavenewmessages\",\"function\":\"int\"},\"params\":{\"1\":{\"wt\":\"lots
of money\"},\"2\":{\"wt\":\"not!\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,45,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]},{\"k\":\"2\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>Parser
function implementation for pf_int missing in Parsoid.</p>");
-add("wt2html", "<onlyinclude> being included", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\"/></p>");
-add("wt2html", "<onlyinclude> and <includeonly> being included", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes3\",\"href\":\"./Template:Includes3\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\"/></p>");
+add("wt2html", "<onlyinclude> being included", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\" data-parsoid='{\"src\":\"\"}'/></p>");
+add("wt2html", "<onlyinclude> and <includeonly> being included", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes3\",\"href\":\"./Template:Includes3\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\" data-parsoid='{\"src\":\"\"}'/></p>");
add("wt2html", "<includeonly> and <noinclude> on a page", "<p
data-parsoid='{\"dsr\":[0,59,0,0]}'>Foo<meta typeof=\"mw:Includes/NoInclude\"
data-parsoid='{\"src\":\"<noinclude>\",\"dsr\":[3,14,null,null]}'/>zar<meta
typeof=\"mw:Includes/NoInclude/End\"
data-parsoid='{\"src\":\"</noinclude>\",\"dsr\":[17,29,null,null]}'/><meta
typeof=\"mw:Includes/IncludeOnly\"
data-parsoid='{\"src\":\"<includeonly>bar</includeonly>\",\"dsr\":[29,59,null,null]}'/><meta
typeof=\"mw:Includes/IncludeOnly/End\"
data-parsoid='{\"src\":\"\",\"dsr\":[59,59,null,null]}'/></p>");
add("wt2html", "Un-closed <noinclude>", "<meta
typeof=\"mw:Includes/NoInclude\"
data-parsoid='{\"src\":\"<noinclude>\",\"dsr\":[0,11,null,null]}'/>");
add("wt2html", "<onlyinclude> on a page", "<p
data-parsoid='{\"dsr\":[0,33,0,0]}'><meta typeof=\"mw:Includes/OnlyInclude\"
data-parsoid='{\"src\":\"<onlyinclude>\",\"dsr\":[0,13,null,null]}'/>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\"
data-parsoid='{\"src\":\"</onlyinclude>\",\"dsr\":[16,30,null,null]}'/>bar</p>");
@@ -136,14 +136,14 @@
add("wt2html", "Templates: P-wrapping: 1c. Templates on consecutive lines",
"<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"Foo\"}},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,12,0,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>Foo</p>\n<span
about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"bar\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[13,25,null,null]}'>bar</span>
<div data-parsoid='{\"stx\":\"html\",\"dsr\":[26,40,5,6]}'>baz</div>");
add("wt2html", "Templates: HTML Tag: 2. Generation of HTML attr. value", "<div
style=\"'color:red;'\" about=\"#mwt2\" typeof=\"mw:ExpandedAttrs\"
data-mw='{\"attribs\":[[{\"txt\":\"style\"},{\"html\":\"<span
about=\\\"#mwt1\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;'color:red;'&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[11,32,null,null]}\\\">'color:red;'</span>\"}]]}'
data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"'color:red;'\"},\"sa\":{\"style\":\"{{echo|'color:red;'}}\"},\"dsr\":[0,42,33,6]}'>foo</div>");
add("wt2html", "Templates: HTML Tag: 3. Generation of HTML attr key and
value", "<div style=\"'color:red;'\" about=\"#mwt3\"
typeof=\"mw:ExpandedAttrs\"
data-mw='{\"attribs\":[[{\"txt\":\"style\",\"html\":\"<span
about=\\\"#mwt2\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;style&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[5,19,null,null]}\\\">style</span>\"},{\"html\":\"<span
about=\\\"#mwt1\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;'color:red;'&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[20,41,null,null]}\\\">'color:red;'</span>\"}]]}'
data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"'color:red;'\"},\"sa\":{\"style\":\"{{echo|'color:red;'}}\"},\"dsr\":[0,51,42,6]}'>foo</div>");
-add("wt2html", "Templates: Wiki Tables: 1a. Fostering of entire template
content", "<p about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\"}},\"i\":0}},\"\\n|}\"]}'
data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,16,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><table
about=\"#mwt2\">\n\n</table>");
-add("wt2html", "Templates: Wiki Tables: 1b. Fostering of entire template
content", "<div about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"<div>\"}},\"i\":0}},\"\\nfoo\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"</div>\"}},\"i\":1}},\"\\n|}\"]}'
data-parsoid='{\"stx\":\"html\",\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,40,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>\n<p>foo</p>\n</div><table
about=\"#mwt3\">\n\n</table>");
-add("wt2html", "Templates: Wiki Tables: 2. Fostering of partial template
content", "<p about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n<div>b</div>\"}},\"i\":0}},\"\\n|}\"]}'
data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,29,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><div
about=\"#mwt2\"
data-parsoid='{\"stx\":\"html\",\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,0]}'>b</div><table
about=\"#mwt2\">\n\n\n</table>");
+add("wt2html", "Templates: Wiki Tables: 1a. Fostering of entire template
content", "<p about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\"}},\"i\":0}},\"\\n|}\"]}'
data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,16,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><table
about=\"#mwt2\" data-parsoid='{\"dsr\":[0,16,2,2]}'>\n\n</table>");
+add("wt2html", "Templates: Wiki Tables: 1b. Fostering of entire template
content", "<div about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"<div>\"}},\"i\":0}},\"\\nfoo\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"</div>\"}},\"i\":1}},\"\\n|}\"]}'
data-parsoid='{\"stx\":\"html\",\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,40,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>\n<p
data-parsoid='{\"dsr\":[18,21,0,0]}'>foo</p>\n</div><table about=\"#mwt3\"
data-parsoid='{\"dsr\":[0,40,2,2]}'>\n\n</table>");
+add("wt2html", "Templates: Wiki Tables: 2. Fostering of partial template
content", "<p about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n<div>b</div>\"}},\"i\":0}},\"\\n|}\"]}'
data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,29,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>a</p><div
about=\"#mwt2\"
data-parsoid='{\"stx\":\"html\",\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,0]}'>b</div><table
about=\"#mwt2\" data-parsoid='{\"dsr\":[0,29,2,2]}'>\n\n\n</table>");
add("wt2html", "Templates: Wiki Tables: 4. Templated tags, no content",
"<table about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"tbl-start\",\"href\":\"./Template:Tbl-start\"},\"params\":{},\"i\":0}},\"\\n\",{\"template\":{\"target\":{\"wt\":\"tbl-end\",\"href\":\"./Template:Tbl-end\"},\"params\":{},\"i\":1}}]}'
data-parsoid='{\"dsr\":[0,25,null,null],\"pi\":[[],[]]}'>\n</table>");
-add("wt2html", "Templates: Lists: Multi-line list-items via templates", "<ul
data-parsoid='{\"dsr\":[0,71,0,0]}'><li
data-parsoid='{\"dsr\":[0,35,1,0]}'><span about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a
{{nonexistent|\\nunused}}\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[1,35,null,null]}'>a
</span><span typeof=\"mw:Placeholder\" about=\"#mwt1\" id=\"mwt2\">Warning:
Page/template fetching disabled, and no cache for
Template:Nonexistent</span><meta typeof=\"mw:Transclusion/End\" about=\"#mwt1\"
data-parsoid=\"{}\"/></li>\n<li data-parsoid='{\"dsr\":[36,71,1,0]}'><span
about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b
{{nonexistent|\\nunused}}\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[37,71,null,null]}'>b
</span><span typeof=\"mw:Placeholder\" about=\"#mwt3\" id=\"mwt4\">Warning:
Page/template fetching disabled, and no cache for
Template:Nonexistent</span><meta typeof=\"mw:Transclusion/End\" about=\"#mwt3\"
data-parsoid=\"{}\"/></li></ul>");
-add("wt2html", "Templates: Ugly nesting: 1. Quotes opened/closed across
templates (echo)", "<p data-parsoid='{\"dsr\":[0,40,0,0]}'><i about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"''a\"}},\"i\":0}},{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b''c''d\"}},\"i\":1}},{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"''e\"}},\"i\":2}}]}'
data-parsoid='{\"dsr\":[0,40,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>ab</i><span
about=\"#mwt1\">c</span><i about=\"#mwt1\">d</i><span
about=\"#mwt1\">e</span></p>");
-add("wt2html", "Templates: Ugly nesting: 4. Divs opened/closed across
templates", "a<div about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"<div>b\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"c</div>d\"}},\"i\":0}}]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[1,24,5,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>bc</div><span
about=\"#mwt1\">d</span>e");
-add("wt2html", "Templates: Ugly templates: 1. Navbox template parses badly
leading to table misnesting\n(Parsoid-centric)", "<table about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n|\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo</table>\"}},\"i\":0}},\"\\n|bar\\n|}\"]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[0,32,2,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"src\":\"{|\\n|{{echo|foo</table>}}\\n|bar\\n|}\"}'>\n<tbody><tr><td>foo</td></tr></tbody></table><span
about=\"#mwt1\">\n|bar</span><span about=\"#mwt1\">\n</span>");
+add("wt2html", "Templates: Lists: Multi-line list-items via templates", "<ul
data-parsoid='{\"dsr\":[0,71,0,0]}'><li
data-parsoid='{\"dsr\":[0,35,1,0]}'><span about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a
{{nonexistent|\\nunused}}\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[1,35,null,null]}'>a
</span><span typeof=\"mw:Placeholder\" about=\"#mwt1\" id=\"mwt2\"
data-parsoid=\"{}\">Warning: Page/template fetching disabled, and no cache for
Template:Nonexistent</span><meta typeof=\"mw:Transclusion/End\" about=\"#mwt1\"
data-parsoid=\"{}\"/></li>\n<li data-parsoid='{\"dsr\":[36,71,1,0]}'><span
about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b
{{nonexistent|\\nunused}}\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[37,71,null,null]}'>b
</span><span typeof=\"mw:Placeholder\" about=\"#mwt3\" id=\"mwt4\"
data-parsoid=\"{}\">Warning: Page/template fetching disabled, and no cache for
Template:Nonexistent</span><meta typeof=\"mw:Transclusion/End\" about=\"#mwt3\"
data-parsoid=\"{}\"/></li></ul>");
+add("wt2html", "Templates: Ugly nesting: 1. Quotes opened/closed across
templates (echo)", "<p data-parsoid='{\"dsr\":[0,40,0,0]}'><i about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"''a\"}},\"i\":0}},{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b''c''d\"}},\"i\":1}},{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"''e\"}},\"i\":2}}]}'
data-parsoid='{\"dsr\":[0,40,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}],[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>ab</i><span
about=\"#mwt1\" data-parsoid=\"{}\">c</span><i about=\"#mwt1\"
data-parsoid=\"{}\">d</i><span about=\"#mwt1\"
data-parsoid=\"{}\">e</span></p>");
+add("wt2html", "Templates: Ugly nesting: 4. Divs opened/closed across
templates", "a<div about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"<div>b\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"c</div>d\"}},\"i\":0}}]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[1,24,5,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'>bc</div><span
about=\"#mwt1\" data-parsoid=\"{}\">d</span>e");
+add("wt2html", "Templates: Ugly templates: 1. Navbox template parses badly
leading to table misnesting\n(Parsoid-centric)", "<table about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n|\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo</table>\"}},\"i\":0}},\"\\n|bar\\n|}\"]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[0,32,2,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"src\":\"{|\\n|{{echo|foo</table>}}\\n|bar\\n|}\"}'>\n<tbody
data-parsoid='{\"dsr\":[3,24,0,0]}'><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,24,0,0]}'><td
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,24,1,0]}'>foo</td></tr></tbody></table><span
about=\"#mwt1\" data-parsoid=\"{}\">\n|bar</span><span about=\"#mwt1\"
data-parsoid=\"{}\">\n</span>");
add("wt2html", "Templates: Ugly templates: 4. newline-only template parameter
inconsistency", "<span about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[0,10,null,null]}'>\n</span>");
add("wt2html", "pre-save transform: subst:", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"subst:test\",\"href\":\"./Template:Test\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,14,0,0],\"pi\":[[]]}'>This is a test template</p>");
add("wt2html", "pre-save transform: normal template", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"test\",\"href\":\"./Template:Test\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,8,0,0],\"pi\":[[]]}'>This is a test template</p>");
@@ -156,8 +156,8 @@
add("wt2html", "pre-save transform: mixed tag case", "<p
data-parsoid='{\"dsr\":[0,31,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[0,31,8,9]}'>'''not wiki'''</span></p>");
add("wt2html", "pre-save transform: unclosed comment in <nowiki>", "<p
data-parsoid='{\"dsr\":[0,41,0,0]}'>wiki<span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[4,37,8,9]}'>nowiki<!--nowiki</span>wiki</p>");
add("wt2html", "pre-save transform: <noinclude> in subst (bug 3298)", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"subst:Includes\",\"href\":\"./Template:Includes\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,18,0,0],\"pi\":[[]]}'>Foobar</p>");
-add("wt2html", "pre-save transform: <onlyinclude> in subst (bug 3298)", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"subst:Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,19,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\"/></p>");
-add("wt2html", "bug 22297: safesubst: works during PST", "<p
data-parsoid='{\"dsr\":[0,46,0,0]}'><span about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"subst:SafeSubstTest\",\"href\":\"./Template:SafeSubstTest\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"pi\":[[]],\"dsr\":[0,23,null,null]}'>Foo</span><span
about=\"#mwt1\">bar</span><span about=\"#mwt2\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"safesubst:SubstTest\",\"href\":\"./Template:SubstTest\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"pi\":[[]],\"dsr\":[23,46,null,null]}'>Foo</span><span
about=\"#mwt2\">bar</span></p>");
+add("wt2html", "pre-save transform: <onlyinclude> in subst (bug 3298)", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"subst:Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,19,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\" data-parsoid='{\"src\":\"2}}\"}'/></p>");
+add("wt2html", "bug 22297: safesubst: works during PST", "<p
data-parsoid='{\"dsr\":[0,46,0,0]}'><span about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"subst:SafeSubstTest\",\"href\":\"./Template:SafeSubstTest\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"pi\":[[]],\"dsr\":[0,23,null,null]}'>Foo</span><span
about=\"#mwt1\" data-parsoid=\"{}\">bar</span><span about=\"#mwt2\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"safesubst:SubstTest\",\"href\":\"./Template:SubstTest\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"pi\":[[]],\"dsr\":[23,46,null,null]}'>Foo</span><span
about=\"#mwt2\" data-parsoid=\"{}\">bar</span></p>");
add("wt2html", "subst: does not work during normal parse", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SubstTest\",\"href\":\"./Template:SubstTest\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foobar</p>");
add("wt2html", "pre-save transform: context links (\"pipe trick\")", "<p
data-parsoid='{\"dsr\":[0,183,0,0]}'><a rel=\"mw:WikiLink\"
href=\"./Article_(context)\" title=\"Article (context)\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Article_(context)\"},\"sa\":{\"href\":\"Article
(context)\"},\"dsr\":[0,22,2,2]}'>Article</a>\n<a rel=\"mw:WikiLink\"
href=\"./Bar:Article\" title=\"Bar:Article\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Bar:Article\"},\"sa\":{\"href\":\"Bar:Article\"},\"dsr\":[23,39,2,2]}'>Article</a>\n<a
rel=\"mw:WikiLink\" href=\"./Bar:Article\" title=\"Bar:Article\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Bar:Article\"},\"sa\":{\"href\":\":Bar:Article\"},\"dsr\":[40,57,2,2]}'>Article</a>\n<a
rel=\"mw:WikiLink\" href=\"./Bar:Article_(context)\" title=\"Bar:Article
(context)\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Bar:Article_(context)\"},\"sa\":{\"href\":\"Bar:Article
(context)\"},\"dsr\":[58,84,2,2]}'>Article</a>\n<a rel=\"mw:WikiLink\"
href=\"./Bar:Article_(context)\" title=\"Bar:Article (context)\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Bar:Article_(context)\"},\"sa\":{\"href\":\":Bar:Article
(context)\"},\"dsr\":[85,112,2,2]}'>Article</a>\n[[|Article]]\n[[|Article
(context)]]\n<a rel=\"mw:WikiLink\" href=\"./Bar:X_(Y)_Z\" title=\"Bar:X (Y)
Z\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Bar:X_(Y)_Z\"},\"sa\":{\"href\":\"Bar:X
(Y) Z\"},\"dsr\":[149,165,2,2]}'>X (Y) Z</a>\n<a rel=\"mw:WikiLink\"
href=\"./Bar:X_(Y)_Z\" title=\"Bar:X (Y) Z\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Bar:X_(Y)_Z\"},\"sa\":{\"href\":\":Bar:X
(Y) Z\"},\"dsr\":[166,183,2,2]}'>X (Y) Z</a></p>");
add("wt2html", "pre-save transform: context links (\"pipe trick\") with
interwiki prefix", "<p data-parsoid='{\"dsr\":[0,101,0,0]}'><a
rel=\"mw:WikiLink\" href=\"./Interwiki:Article\" title=\"Interwiki:Article\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Interwiki:Article\"},\"sa\":{\"href\":\"interwiki:Article\"},\"dsr\":[0,22,2,2]}'>Article</a>\n<a
rel=\"mw:WikiLink\" href=\"./Interwiki:Article\" title=\"Interwiki:Article\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Interwiki:Article\"},\"sa\":{\"href\":\":interwiki:Article\"},\"dsr\":[23,46,2,2]}'>Article</a>\n<a
rel=\"mw:WikiLink\" href=\"./Interwiki:Bar:Article\"
title=\"Interwiki:Bar:Article\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Interwiki:Bar:Article\"},\"sa\":{\"href\":\"interwiki:Bar:Article\"},\"dsr\":[47,73,2,2]}'>Bar:Article</a>\n<a
rel=\"mw:WikiLink\" href=\"./Interwiki:Bar:Article\"
title=\"Interwiki:Bar:Article\"
data-parsoid='{\"pipetrick\":true,\"stx\":\"simple\",\"a\":{\"href\":\"./Interwiki:Bar:Article\"},\"sa\":{\"href\":\":interwiki:Bar:Article\"},\"dsr\":[74,101,2,2]}'>Bar:Article</a></p>");
@@ -179,7 +179,7 @@
add("wt2html", "message transform: magic variables", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SITENAME\",\"function\":\"sitename\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,12,0,0],\"pi\":[[]]}'>MediaWiki</p>");
add("wt2html", "message transform: should not transform wiki markup", "<p
data-parsoid='{\"dsr\":[0,8,0,0]}'><i
data-parsoid='{\"dsr\":[0,8,2,2]}'>test</i></p>");
add("wt2html", "message transform: <noinclude> in transcluded template (bug
4926)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes\",\"href\":\"./Template:Includes\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,12,0,0],\"pi\":[[]]}'>Foobar</p>");
-add("wt2html", "message transform: <onlyinclude> in transcluded template (bug
4926)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\"/></p>");
+add("wt2html", "message transform: <onlyinclude> in transcluded template (bug
4926)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}'>Foo<meta
typeof=\"mw:Includes/OnlyInclude/End\" data-parsoid='{\"src\":\"\"}'/></p>");
add("wt2html", "{{#special:}} page name, known", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:Recentchanges\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,26,0,0],\"pi\":[[]]}'>Parser function implementation
for pf_#special missing in Parsoid.</p>");
add("wt2html", "{{#special:}} page name with subpage, known", "<p
about=\"#mwt1\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:Recentchanges/param\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,32,0,0],\"pi\":[[]]}'>Parser function implementation
for pf_#special missing in Parsoid.</p>");
add("wt2html", "{{#special:}} page name, unknown", "<p about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:foobar
nonexistent\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[0,31,0,0],\"pi\":[[]]}'>Parser function implementation
for pf_#special missing in Parsoid.</p>");
@@ -205,7 +205,7 @@
add("wt2html", "Category with template in sort key", "<link
rel=\"mw:PageProp/Category\" href=\"./Category:Foo#Bar\" about=\"#mwt2\"
typeof=\"mw:ExpandedAttrs\"
data-mw='{\"attribs\":[[{\"txt\":\"mw:sortKey\"},{\"html\":\"<span
about=\\\"#mwt1\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;Bar&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[15,27,null,null]}\\\">Bar</span>\"}]]}'
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Category:Foo\"},\"sa\":{\"href\":\"Category:Foo\"},\"dsr\":[0,29,null,null]}'/>");
add("wt2html", "Category with template in sort key and title", "<link
data-mw='{\"attribs\":[[{\"txt\":\"href\"},{\"html\":\"Category:<span
about=\\\"#mwt1\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;Foo&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[11,23,null,null]}\\\">Foo</span>\"}],[{\"txt\":\"mw:sortKey\"},{\"html\":\"<span
about=\\\"#mwt2\\\" typeof=\\\"mw:Transclusion\\\"
data-mw=\\\"{&quot;parts&quot;:[{&quot;template&quot;:{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;Bar&quot;}},&quot;i&quot;:0}}]}\\\"
data-parsoid=\\\"{&quot;pi&quot;:[[{&quot;k&quot;:&quot;1&quot;,&quot;spc&quot;:[&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;]}]],&quot;dsr&quot;:[24,36,null,null]}\\\">Bar</span>\"}]]}'
typeof=\"mw:ExpandedAttrs\" about=\"#mwt4\" rel=\"mw:PageProp/Category\"
href=\"./Category:Foo#Bar\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Category:Foo\"},\"sa\":{\"href\":\"Category:{{echo|Foo}}\"},\"dsr\":[0,38,null,null]}'/>");
add("wt2html", "Category / paragraph interactions", "<p
data-parsoid='{\"dsr\":[0,24,0,0]}'>Foo <link rel=\"mw:PageProp/Category\"
href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[4,20,null,null]}'/>
Bar</p>\n\n<p data-parsoid='{\"dsr\":[26,50,0,0]}'>Foo <link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[30,46,null,null]}'/>\nBar</p>\n\n<p
data-parsoid='{\"dsr\":[52,76,0,0]}'>Foo\n<link rel=\"mw:PageProp/Category\"
href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[56,72,null,null]}'/>\nBar</p>\n\n<p
data-parsoid='{\"dsr\":[78,81,0,0]}'>Foo</p>\n<link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[82,98,null,null]}'/><pre
data-parsoid='{\"dsr\":[98,102,1,0]}'>Bar</pre>\n\n<p
data-parsoid='{\"dsr\":[104,163,0,0]}'>Foo\n<link rel=\"mw:PageProp/Category\"
href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[108,124,null,null]}'/>\n
<link rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[126,142,null,null]}'/>\n<link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[143,159,null,null]}'/>\nBar</p>\n\n<link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[165,181,null,null]}'/>\n
<link rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[183,199,null,null]}'/>\n<link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[200,216,null,null]}'/>\n\n<link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[218,234,null,null]}'/>\n
<link rel=\"mw:PageProp/Category\" href=\"./Category:Baz\" about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"[[Category:Baz]]\"}},\"i\":0}}]}'
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[236,261,null,null],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]]}'/>\n<link
rel=\"mw:PageProp/Category\" href=\"./Category:Baz\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Baz\"},\"sa\":{\"href\":\"Category:Baz\"},\"dsr\":[262,278,null,null]}'/>");
-add("wt2html", "Template with sections, __NOTOC__", "<meta
property=\"mw:PageProp/notoc\"
data-parsoid='{\"src\":\"__NOTOC__\",\"magicSrc\":\"__NOTOC__\",\"dsr\":[0,9,null,null]}'/>\n<h2
data-parsoid='{\"dsr\":[10,23,2,2]}'>Section 0</h2>\n<h3 about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"sections\",\"href\":\"./Template:Sections\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[24,36,null,null],\"pi\":[[]]}'>Section 1</h3><span
about=\"#mwt1\">\n</span><h2 about=\"#mwt1\">Section 2</h2>\n<h2
data-parsoid='{\"dsr\":[37,50,2,2]}'>Section 4</h2>");
+add("wt2html", "Template with sections, __NOTOC__", "<meta
property=\"mw:PageProp/notoc\"
data-parsoid='{\"src\":\"__NOTOC__\",\"magicSrc\":\"__NOTOC__\",\"dsr\":[0,9,null,null]}'/>\n<h2
data-parsoid='{\"dsr\":[10,23,2,2]}'>Section 0</h2>\n<h3 about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"sections\",\"href\":\"./Template:Sections\"},\"params\":{},\"i\":0}}]}'
data-parsoid='{\"dsr\":[24,36,null,null],\"pi\":[[]]}'>Section 1</h3><span
about=\"#mwt1\" data-parsoid=\"{}\">\n</span><h2 about=\"#mwt1\"
data-parsoid=\"{}\">Section 2</h2>\n<h2
data-parsoid='{\"dsr\":[37,50,2,2]}'>Section 4</h2>");
add("wt2html", "__NOEDITSECTION__ keyword", "<meta
property=\"mw:PageProp/noeditsection\"
data-parsoid='{\"src\":\"__NOEDITSECTION__\",\"magicSrc\":\"__NOEDITSECTION__\",\"dsr\":[0,17,null,null]}'/>\n<h2
data-parsoid='{\"dsr\":[18,31,2,2]}'>Section 1</h2>\n<h2
data-parsoid='{\"dsr\":[32,45,2,2]}'>Section 2</h2>");
add("wt2html", "TOC regression (bug 12077)", "<meta
property=\"mw:PageProp/toc\"
data-parsoid='{\"src\":\"__TOC__\",\"magicSrc\":\"__TOC__\",\"dsr\":[0,7,null,null]}'/>\n<h2
data-parsoid='{\"dsr\":[8,21,2,2]}'> title 1 </h2>\n<h3
data-parsoid='{\"dsr\":[22,39,3,3]}'> title 1.1 </h3>\n<h2
data-parsoid='{\"dsr\":[40,53,2,2]}'> title 2 </h2>");
add("wt2html", "BUG 1219 URL next to image (good)", "<p
data-parsoid='{\"dsr\":[0,39,0,0]}'><a rel=\"mw:ExtLink\"
href=\"http://example.com\"
data-parsoid='{\"stx\":\"url\",\"dsr\":[0,18,0,0]}'>http://example.com</a>
<span class=\"mw-default-size\" typeof=\"mw:Image\"
data-parsoid='{\"optList\":[],\"dsr\":[19,39,null,null]}'><a
href=\"./File:Foobar.jpg\"
data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img
resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\"
height=\"220\" width=\"1941\"
data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
@@ -662,7 +662,7 @@
add("html2html", "Templates: Links: 5. Generation of link text", "<p
data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\"
title=\"Wiki/Foo\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n");
add("html2html", "Templates: Links: 5. Nested templates (only outermost
template should be marked)", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a
rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n");
add("html2html", "Templates: Lists: Multi-line list-items via templates", "<ul
data-parsoid='{\"dsr\":[0,173,0,0]}'><li data-parsoid='{\"dsr\":[0,86,1,0]}'> a
[/index.php?title=Template:Nonexistent&action=edit&redlink=1
Template:Nonexistent]</li>\n<li data-parsoid='{\"dsr\":[87,173,1,0]}'> b
[/index.php?title=Template:Nonexistent&action=edit&redlink=1
Template:Nonexistent]</li></ul>\n");
-add("html2html", "Templates: Ugly templates: 1. Navbox template parses badly
leading to table misnesting\n(Parsoid-centric)", "<table about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n|\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo</table>\"}},\"i\":0}},\"\\n|bar\\n|}\"]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[0,32,2,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"src\":\"{|\\n|{{echo|foo</table>}}\\n|bar\\n|}\"}'>\n<tbody><tr><td>foo</td></tr></tbody></table><span
about=\"#mwt1\">\n|bar</span><span about=\"#mwt1\">\n</span>");
+add("html2html", "Templates: Ugly templates: 1. Navbox template parses badly
leading to table misnesting\n(Parsoid-centric)", "<table about=\"#mwt1\"
typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[\"{|\\n|\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo</table>\"}},\"i\":0}},\"\\n|bar\\n|}\"]}'
data-parsoid='{\"stx\":\"html\",\"dsr\":[0,32,2,0],\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"src\":\"{|\\n|{{echo|foo</table>}}\\n|bar\\n|}\"}'>\n<tbody
data-parsoid='{\"dsr\":[3,24,0,0]}'><tr
data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,24,0,0]}'><td
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,24,1,0]}'>foo</td></tr></tbody></table><span
about=\"#mwt1\" data-parsoid=\"{}\">\n|bar</span><span about=\"#mwt1\"
data-parsoid=\"{}\">\n</span>");
add("html2html", "Templates: Ugly templates: 4. newline-only template
parameter inconsistency", "\n");
add("html2html", "pre-save transform: subst:", "<p
data-parsoid='{\"dsr\":[0,23,0,0]}'>This is a test template</p>");
add("html2html", "pre-save transform: normal template", "<p
data-parsoid='{\"dsr\":[0,25,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[0,25,8,9]}'>{{test}}</span></p>");
@@ -932,11 +932,11 @@
add("html2html", "Gallery override link with malicious javascript (bug
34852)", "\t\t* <div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[4,239,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div
style=\"margin:68px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img
src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\"
alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\"
data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[186,230,25,6]}'>\n<p
data-parsoid='{\"dsr\":[212,219,0,0]}'>caption</p>\n\n\t\t\t</div>\n\t\t</div>\n");
add("html2html", "Gallery with invalid title as link (bug 43964)", "\t\t* <div
style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[4,229,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div
style=\"margin:68px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img
src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\"
alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\"
data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[186,220,25,6]}'>\t\t\t</div>\n\t\t</div>\n");
add("html2html", "Disable TOC", "<p
data-parsoid='{\"dsr\":[0,4,0,0]}'>Lead</p>\n\n<h2
data-parsoid='{\"dsr\":[6,252,2,2]}'> <span class=\"mw-headline\"
id=\"Section_1\" data-parsoid='{\"stx\":\"html\",\"dsr\":[9,66,41,7]}'>Section
1</span><span class=\"mw-editsection\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[66,249,29,7]}'><span
class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[95,140,37,7]}'>[</span>[/index.php?title=Parser_test&action=edit&section=1
edit]<span class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[197,242,37,7]}'>]</span></span>
</h2>\n\n<h2 data-parsoid='{\"dsr\":[254,500,2,2]}'> <span
class=\"mw-headline\" id=\"Section_2\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[257,314,41,7]}'>Section 2</span><span
class=\"mw-editsection\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[314,497,29,7]}'><span
class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[343,388,37,7]}'>[</span>[/index.php?title=Parser_test&action=edit&section=2
edit]<span class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[445,490,37,7]}'>]</span></span>
</h2>\n\n<h2 data-parsoid='{\"dsr\":[502,748,2,2]}'> <span
class=\"mw-headline\" id=\"Section_3\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[505,562,41,7]}'>Section 3</span><span
class=\"mw-editsection\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[562,745,29,7]}'><span
class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[591,636,37,7]}'>[</span>[/index.php?title=Parser_test&action=edit&section=3
edit]<span class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[693,738,37,7]}'>]</span></span>
</h2>\n\n<h2 data-parsoid='{\"dsr\":[750,996,2,2]}'> <span
class=\"mw-headline\" id=\"Section_4\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[753,810,41,7]}'>Section 4</span><span
class=\"mw-editsection\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[810,993,29,7]}'><span
class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[839,884,37,7]}'>[</span>[/index.php?title=Parser_test&action=edit&section=4
edit]<span class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[941,986,37,7]}'>]</span></span>
</h2>\n\n<h2 data-parsoid='{\"dsr\":[998,1244,2,2]}'> <span
class=\"mw-headline\" id=\"Section_5\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[1001,1058,41,7]}'>Section
5</span><span class=\"mw-editsection\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[1058,1241,29,7]}'><span
class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[1087,1132,37,7]}'>[</span>[/index.php?title=Parser_test&action=edit&section=5
edit]<span class=\"mw-editsection-bracket\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[1189,1234,37,7]}'>]</span></span>
</h2>\n");
-add("html2html", "Ref: 5. body should accept generic wikitext", "<p
data-parsoid='{\"dsr\":[0,81,0,0]}'>A <span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"This is a <b
data-parsoid='{\\\"dsr\\\":[17,38,3,3]}'><a rel=\\\"mw:WikiLink\\\"
href=\\\"./Bolded_link\\\" title=\\\"Bolded link\\\"
data-parsoid='{\\\"stx\\\":\\\"simple\\\",\\\"a\\\":{\\\"href\\\":\\\"./Bolded_link\\\"},\\\"sa\\\":{\\\"href\\\":\\\"bolded
link\\\"},\\\"dsr\\\":[20,35,2,2]}'>bolded link</a></b> and this is
a <span about=\\\"#mwt3\\\" typeof=\\\"mw:Transclusion\\\"
data-mw='{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"transclusion\\\"}},\\\"i\\\":0}}]}'
data-parsoid='{\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\",\\\"spc\\\":[\\\"\\\",\\\"\\\",\\\"\\\",\\\"\\\"]}]],\\\"dsr\\\":[53,74,null,null]}'>transclusion</span>\\n\"},\"attrs\":{}}'
id=\"cite_ref-1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid=\"{"src":"<ref>This is a '''[[bolded link]]'''
and this is a
{{echo|transclusion}}\\n</ref>","dsr":[2,81,5,6]}\"><a
href=\"#cite_note-1\">[1]</a></span></p>\n\n<ol class=\"references\"
typeof=\"mw:Extension/references\" about=\"#mwt5\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[83,97,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\"><span rel=\"mw:referencedBy\"><a
href=\"#cite_ref-1-0\">↑</a></span> This is a <b><a rel=\"mw:WikiLink\"
href=\"./Bolded_link\" title=\"Bolded link\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Bolded_link\"},\"sa\":{\"href\":\"bolded
link\"},\"dsr\":[20,35,2,2]}'>bolded link</a></b> and this is a <span
about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"transclusion\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[53,74,null,null]}'>transclusion</span>\n</li></ol>");
-add("html2html", "Ref: 7. No p-wrapping in ref-body", "<p
data-parsoid='{\"dsr\":[0,30,0,0]}'>A <span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"foo\\nbar\\nbaz\\nbooz\\n\"},\"attrs\":{}}'
id=\"cite_ref-1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref>foo\\nbar\\nbaz\\nbooz\\n</ref>\",\"dsr\":[2,30,5,6]}'><a
href=\"#cite_note-1\">[1]</a></span></p>\n\n<ol class=\"references\"
typeof=\"mw:Extension/references\" about=\"#mwt4\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[32,46,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\"><span rel=\"mw:referencedBy\"><a
href=\"#cite_ref-1-0\">↑</a></span> foo\nbar\nbaz\nbooz\n</li></ol>");
-add("html2html", "Ref: 8. transclusion wikitext has lower precedence", "<p
data-parsoid='{\"dsr\":[0,47,0,0]}'>A <span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"foo <span
typeof=\\\"mw:Nowiki\\\"
data-parsoid='{\\\"src\\\":\\\"{{\\\",\\\"dsr\\\":[11,13,0,0]}'>{{</span>echo|\"},\"attrs\":{}}'
id=\"cite_ref-1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref>foo {{echo|</ref>\",\"dsr\":[2,24,5,6]}'><a
href=\"#cite_note-1\">[1]</a></span> B C<span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[28,47,8,9]}'>}}</span></p>\n<ol class=\"references\"
typeof=\"mw:Extension/references\" about=\"#mwt4\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[48,62,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\"><span rel=\"mw:referencedBy\"><a
href=\"#cite_ref-1-0\">↑</a></span> foo <span
typeof=\"mw:Nowiki\">{{</span>echo|</li></ol>");
-add("html2html", "Ref: 10. Unclosed HTML tags should not leak out of
ref-body", "<p data-parsoid='{\"dsr\":[0,25,0,0]}'>A <span about=\"#mwt2\"
class=\"reference\" data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"<b
data-parsoid='{\\\"stx\\\":\\\"html\\\",\\\"autoInsertedEnd\\\":true,\\\"dsr\\\":[7,15,3,0]}'>
foo </b>\"},\"attrs\":{}}' id=\"cite_ref-1-0\" rel=\"dc:references\"
typeof=\"mw:Extension/ref\" data-parsoid='{\"src\":\"<ref><b> foo
</ref>\",\"dsr\":[2,21,5,6]}'><a href=\"#cite_note-1\">[1]</a></span> B
C</p>\n\n<ol class=\"references\" typeof=\"mw:Extension/references\"
about=\"#mwt4\" data-parsoid='{\"src\":\"<references
/>\",\"dsr\":[27,41,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{}}'><li
about=\"#cite_note-1\" id=\"cite_note-1\"><span rel=\"mw:referencedBy\"><a
href=\"#cite_ref-1-0\">↑</a></span> <b
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[7,15,3,0]}'>
foo </b></li></ol>");
-add("html2html", "References: 5. ref tags in references should be processed
while ignoring all other content", "<p data-parsoid='{\"dsr\":[0,44,0,0]}'>A
<span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"attrs\":{\"name\":\"a\"}}' id=\"cite_ref-a-1-0\"
rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref name=\\\"a\\\" />\",\"dsr\":[2,18,16,0]}'><a
href=\"#cite_note-a-1\">[1]</a></span>\nB <span about=\"#mwt4\"
class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"bar\"},\"attrs\":{\"name\":\"b\"}}'
id=\"cite_ref-b-2-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref
name=\\\"b\\\">bar</ref>\",\"dsr\":[21,44,14,6]}'><a
href=\"#cite_note-b-2\">[2]</a></span></p>\n\n<ol class=\"references\"
typeof=\"mw:Extension/references\" about=\"#mwt6\"
data-parsoid='{\"src\":\"<references>\\n<ref
name=\\\"a\\\">foo</ref>\\n</references>\",\"dsr\":[46,96,2,2]}'
data-mw='{\"name\":\"references\",\"body\":{\"extsrc\":\"<ref
name=\\\"a\\\">foo</ref>\",\"html\":\"\\n<span about=\\\"#mwt8\\\"
class=\\\"reference\\\"
data-mw='{\\\"name\\\":\\\"ref\\\",\\\"body\\\":{\\\"html\\\":\\\"foo\\\"},\\\"attrs\\\":{\\\"name\\\":\\\"a\\\"}}'
rel=\\\"dc:references\\\" typeof=\\\"mw:Extension/ref\\\"><a
href=\\\"#cite_note-a-1\\\">[1]</a></span>\\n\"},\"attrs\":{}}'><li
about=\"#cite_note-a-1\" id=\"cite_note-a-1\"><span rel=\"mw:referencedBy\"><a
href=\"#cite_ref-a-1-0\">↑</a></span> foo</li><li about=\"#cite_note-b-2\"
id=\"cite_note-b-2\"><span rel=\"mw:referencedBy\"><a
href=\"#cite_ref-b-2-0\">↑</a></span> bar</li></ol>");
+add("html2html", "Ref: 5. body should accept generic wikitext", "<p
data-parsoid='{\"dsr\":[0,81,0,0]}'>A <span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"This is a <b
data-parsoid='{\\\"dsr\\\":[17,38,3,3]}'><a rel=\\\"mw:WikiLink\\\"
href=\\\"./Bolded_link\\\" title=\\\"Bolded link\\\"
data-parsoid='{\\\"stx\\\":\\\"simple\\\",\\\"a\\\":{\\\"href\\\":\\\"./Bolded_link\\\"},\\\"sa\\\":{\\\"href\\\":\\\"bolded
link\\\"},\\\"dsr\\\":[20,35,2,2]}'>bolded link</a></b> and this is
a <span about=\\\"#mwt3\\\" typeof=\\\"mw:Transclusion\\\"
data-mw='{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"transclusion\\\"}},\\\"i\\\":0}}]}'
data-parsoid='{\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\",\\\"spc\\\":[\\\"\\\",\\\"\\\",\\\"\\\",\\\"\\\"]}]],\\\"dsr\\\":[53,74,null,null]}'>transclusion</span>\\n\"},\"attrs\":{}}'
id=\"cite_ref-1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid=\"{"src":"<ref>This is a '''[[bolded link]]'''
and this is a
{{echo|transclusion}}\\n</ref>","dsr":[2,81,5,6]}\"><a
href=\"#cite_note-1\" data-parsoid=\"{}\">[1]</a></span></p>\n\n<ol
class=\"references\" typeof=\"mw:Extension/references\" about=\"#mwt5\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[83,97,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\" data-parsoid=\"{}\"><span rel=\"mw:referencedBy\"
data-parsoid=\"{}\"><a href=\"#cite_ref-1-0\" data-parsoid=\"{}\">↑</a></span>
This is a <b data-parsoid='{\"dsr\":[17,38,3,3]}'><a rel=\"mw:WikiLink\"
href=\"./Bolded_link\" title=\"Bolded link\"
data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Bolded_link\"},\"sa\":{\"href\":\"bolded
link\"},\"dsr\":[20,35,2,2]}'>bolded link</a></b> and this is a <span
about=\"#mwt3\" typeof=\"mw:Transclusion\"
data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"transclusion\"}},\"i\":0}}]}'
data-parsoid='{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[53,74,null,null]}'>transclusion</span>\n</li></ol>");
+add("html2html", "Ref: 7. No p-wrapping in ref-body", "<p
data-parsoid='{\"dsr\":[0,30,0,0]}'>A <span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"foo\\nbar\\nbaz\\nbooz\\n\"},\"attrs\":{}}'
id=\"cite_ref-1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref>foo\\nbar\\nbaz\\nbooz\\n</ref>\",\"dsr\":[2,30,5,6]}'><a
href=\"#cite_note-1\" data-parsoid=\"{}\">[1]</a></span></p>\n\n<ol
class=\"references\" typeof=\"mw:Extension/references\" about=\"#mwt4\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[32,46,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\" data-parsoid=\"{}\"><span rel=\"mw:referencedBy\"
data-parsoid=\"{}\"><a href=\"#cite_ref-1-0\" data-parsoid=\"{}\">↑</a></span>
foo\nbar\nbaz\nbooz\n</li></ol>");
+add("html2html", "Ref: 8. transclusion wikitext has lower precedence", "<p
data-parsoid='{\"dsr\":[0,47,0,0]}'>A <span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"foo <span
typeof=\\\"mw:Nowiki\\\"
data-parsoid='{\\\"src\\\":\\\"{{\\\",\\\"dsr\\\":[11,13,0,0]}'>{{</span>echo|\"},\"attrs\":{}}'
id=\"cite_ref-1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref>foo {{echo|</ref>\",\"dsr\":[2,24,5,6]}'><a
href=\"#cite_note-1\" data-parsoid=\"{}\">[1]</a></span> B C<span
typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[28,47,8,9]}'>}}</span></p>\n<ol
class=\"references\" typeof=\"mw:Extension/references\" about=\"#mwt4\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[48,62,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\" data-parsoid=\"{}\"><span rel=\"mw:referencedBy\"
data-parsoid=\"{}\"><a href=\"#cite_ref-1-0\" data-parsoid=\"{}\">↑</a></span>
foo <span typeof=\"mw:Nowiki\"
data-parsoid='{\"src\":\"{{\",\"dsr\":[11,13,0,0]}'>{{</span>echo|</li></ol>");
+add("html2html", "Ref: 10. Unclosed HTML tags should not leak out of
ref-body", "<p data-parsoid='{\"dsr\":[0,25,0,0]}'>A <span about=\"#mwt2\"
class=\"reference\" data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"<b
data-parsoid='{\\\"stx\\\":\\\"html\\\",\\\"autoInsertedEnd\\\":true,\\\"dsr\\\":[7,15,3,0]}'>
foo </b>\"},\"attrs\":{}}' id=\"cite_ref-1-0\" rel=\"dc:references\"
typeof=\"mw:Extension/ref\" data-parsoid='{\"src\":\"<ref><b> foo
</ref>\",\"dsr\":[2,21,5,6]}'><a href=\"#cite_note-1\"
data-parsoid=\"{}\">[1]</a></span> B C</p>\n\n<ol class=\"references\"
typeof=\"mw:Extension/references\" about=\"#mwt4\"
data-parsoid='{\"src\":\"<references />\",\"dsr\":[27,41,2,2]}'
data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\"
id=\"cite_note-1\" data-parsoid=\"{}\"><span rel=\"mw:referencedBy\"
data-parsoid=\"{}\"><a href=\"#cite_ref-1-0\" data-parsoid=\"{}\">↑</a></span>
<b
data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[7,15,3,0]}'>
foo </b></li></ol>");
+add("html2html", "References: 5. ref tags in references should be processed
while ignoring all other content", "<p data-parsoid='{\"dsr\":[0,44,0,0]}'>A
<span about=\"#mwt2\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"attrs\":{\"name\":\"a\"}}' id=\"cite_ref-a-1-0\"
rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref name=\\\"a\\\" />\",\"dsr\":[2,18,16,0]}'><a
href=\"#cite_note-a-1\" data-parsoid=\"{}\">[1]</a></span>\nB <span
about=\"#mwt4\" class=\"reference\"
data-mw='{\"name\":\"ref\",\"body\":{\"html\":\"bar\"},\"attrs\":{\"name\":\"b\"}}'
id=\"cite_ref-b-2-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\"
data-parsoid='{\"src\":\"<ref
name=\\\"b\\\">bar</ref>\",\"dsr\":[21,44,14,6]}'><a href=\"#cite_note-b-2\"
data-parsoid=\"{}\">[2]</a></span></p>\n\n<ol class=\"references\"
typeof=\"mw:Extension/references\" about=\"#mwt6\"
data-parsoid='{\"src\":\"<references>\\n<ref
name=\\\"a\\\">foo</ref>\\n</references>\",\"dsr\":[46,96,2,2]}'
data-mw='{\"name\":\"references\",\"body\":{\"extsrc\":\"<ref
name=\\\"a\\\">foo</ref>\",\"html\":\"\\n<span about=\\\"#mwt8\\\"
class=\\\"reference\\\"
data-mw='{\\\"name\\\":\\\"ref\\\",\\\"body\\\":{\\\"html\\\":\\\"foo\\\"},\\\"attrs\\\":{\\\"name\\\":\\\"a\\\"}}'
rel=\\\"dc:references\\\" typeof=\\\"mw:Extension/ref\\\"><a
href=\\\"#cite_note-a-1\\\">[1]</a></span>\\n\"},\"attrs\":{}}'><li
about=\"#cite_note-a-1\" id=\"cite_note-a-1\" data-parsoid=\"{}\"><span
rel=\"mw:referencedBy\" data-parsoid=\"{}\"><a href=\"#cite_ref-a-1-0\"
data-parsoid=\"{}\">↑</a></span> foo</li><li about=\"#cite_note-b-2\"
id=\"cite_note-b-2\" data-parsoid=\"{}\"><span rel=\"mw:referencedBy\"
data-parsoid=\"{}\"><a href=\"#cite_ref-b-2-0\"
data-parsoid=\"{}\">↑</a></span> bar</li></ol>");
add("html2html", "Empty LI and TR nodes should not be stripped from top-level
content", "<ul data-parsoid='{\"dsr\":[0,9,0,0]}'><li
data-parsoid='{\"dsr\":[0,3,1,0]}'> a</li>\n<li
data-parsoid='{\"dsr\":[4,5,1,0]}'></li>\n<li
data-parsoid='{\"dsr\":[6,9,1,0]}'> b</li></ul>\n\n<table
data-parsoid='{\"dsr\":[11,26,2,2]}'>\n\n<tbody
data-parsoid='{\"dsr\":[15,24,0,0]}'><tr
data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[15,22,2,0]}'>\n<td
data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[18,22,1,0]}'>foo</td></tr>\n\n</tbody></table>\n");
add("html2html", "Headings: 6a. Heading chars in SOL context (with trailing
spaces)", "<p data-parsoid='{\"dsr\":[0,20,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[0,20,8,9]}'>=a=</span></p>\n\n<p
data-parsoid='{\"dsr\":[22,43,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[22,42,8,9]}'>=a=</span> </p>\n\n<p
data-parsoid='{\"dsr\":[45,66,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[45,65,8,9]}'>=a=</span>\t</p>\n\n<p
data-parsoid='{\"dsr\":[68,90,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[68,88,8,9]}'>=a=</span> \t</p>\n");
add("html2html", "Headings: 6b. Heading chars in SOL context (with trailing
newlines)", "<p data-parsoid='{\"dsr\":[0,22,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[0,22,8,9]}'>=a=\nb</span></p>\n\n<p
data-parsoid='{\"dsr\":[24,47,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[24,47,8,9]}'>=a= \nb</span></p>\n\n<p
data-parsoid='{\"dsr\":[49,72,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[49,72,8,9]}'>=a=\t\nb</span></p>\n\n<p
data-parsoid='{\"dsr\":[74,98,0,0]}'><span typeof=\"mw:Nowiki\"
data-parsoid='{\"dsr\":[74,98,8,9]}'>=a=\t \nb</span></p>\n");
--
To view, visit https://gerrit.wikimedia.org/r/162112
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iec9b47522524d3bea32b08f740b09d3427fc2c4a
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/parsoid
Gerrit-Branch: master
Gerrit-Owner: Subramanya Sastry <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits