Subramanya Sastry has uploaded a new change for review.
https://gerrit.wikimedia.org/r/180574
Change subject: Bug fix in list wikitext escape handler
......................................................................
Bug fix in list wikitext escape handler
* If the parent node of the text node is not a list-node,
there is no need to worry about escaping!
* Updated existing parser test to capture this.
Change-Id: Iebfd43c85082b4c506d5fb770f1a035b35e3802c
---
M lib/wts.escapeWikitext.js
M tests/parserTests-blacklist.js
M tests/parserTests.txt
3 files changed, 14 insertions(+), 8 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid
refs/changes/74/180574/1
diff --git a/lib/wts.escapeWikitext.js b/lib/wts.escapeWikitext.js
index 4388515..7ad6051 100644
--- a/lib/wts.escapeWikitext.js
+++ b/lib/wts.escapeWikitext.js
@@ -47,9 +47,13 @@
};
WEHP.liHandler = function(liNode, state, text, opts) {
+ if (opts.node.parentNode !== liNode) {
+ return false;
+ }
+
// For <dt> nodes, ":" trigger nowiki outside of elements
// For first nodes of <li>'s, bullets in sol posn trigger escaping
- if (liNode.nodeName === 'DT' && opts.node.parentNode === liNode &&
/:/.test(text)) {
+ if (liNode.nodeName === 'DT'&& /:/.test(text)) {
return true;
} else if (state.currLine.text === '' &&
this.isFirstContentNode(opts.node)) {
return text.match(/^[#\*:;]/);
diff --git a/tests/parserTests-blacklist.js b/tests/parserTests-blacklist.js
index b199a28..f2214e0 100644
--- a/tests/parserTests-blacklist.js
+++ b/tests/parserTests-blacklist.js
@@ -794,7 +794,7 @@
add("html2html", "Section replacement, <pre> around bogus header (bug 10309)",
"<h2 data-parsoid='{\"dsr\":[0,17,2,2]}'> Section One </h2>\n<pre
data-parsoid='{\"dsr\":[18,26,1,0]}'>=======</pre>\n\n<p
data-parsoid='{\"dsr\":[28,31,0,0]}'>xxx</p>");
add("html2html", "Special:Search page linking.", "<p
data-parsoid='{\"dsr\":[0,38,0,0]}'><a rel=\"mw:WikiLink\"
href=\"./Wiki/Special:Search\" title=\"Wiki/Special:Search\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:Search\"},\"sa\":{\"href\":\"wiki/Special:Search\"},\"dsr\":[0,38,22,2]}'>Special:Search</a></p>\n");
add("html2html", "Say the magic word", "<ul
data-parsoid='{\"dsr\":[0,312,0,0]}'><li data-parsoid='{\"dsr\":[0,13,1,0]}'>
Parser test</li>\n<li data-parsoid='{\"dsr\":[14,27,1,0]}'>
Parser_test</li>\n<li data-parsoid='{\"dsr\":[28,41,1,0]}'> Parser
test</li>\n<li data-parsoid='{\"dsr\":[42,55,1,0]}'> Parser_test</li>\n<li
data-parsoid='{\"dsr\":[56,69,1,0]}'> Parser test</li>\n<li
data-parsoid='{\"dsr\":[70,83,1,0]}'> Parser_test</li>\n<li
data-parsoid='{\"dsr\":[84,97,1,0]}'> Parser test</li>\n<li
data-parsoid='{\"dsr\":[98,111,1,0]}'> Parser_test</li>\n<li
data-parsoid='{\"dsr\":[112,125,1,0]}'> Parser test</li>\n<li
data-parsoid='{\"dsr\":[126,139,1,0]}'> Parser_test</li>\n<li
data-parsoid='{\"dsr\":[140,158,1,0]}'> Talk:Parser test</li>\n<li
data-parsoid='{\"dsr\":[159,177,1,0]}'> Talk:Parser_test</li>\n<li
data-parsoid='{\"dsr\":[178,191,1,0]}'> Parser test</li>\n<li
data-parsoid='{\"dsr\":[192,205,1,0]}'> Parser_test</li>\n<li
data-parsoid='{\"dsr\":[206,208,1,0]}'> </li>\n<li
data-parsoid='{\"dsr\":[209,211,1,0]}'> </li>\n<li
data-parsoid='{\"dsr\":[212,215,1,0]}'> 0</li>\n<li
data-parsoid='{\"dsr\":[216,222,1,0]}'> Talk</li>\n<li
data-parsoid='{\"dsr\":[223,229,1,0]}'> Talk</li>\n<li
data-parsoid='{\"dsr\":[230,232,1,0]}'> </li>\n<li
data-parsoid='{\"dsr\":[233,235,1,0]}'> </li>\n<li
data-parsoid='{\"dsr\":[236,312,1,0]}'>
[/index.php?title=Template:Dynamic&action=edit&redlink=1
Template:Dynamic]</li></ul>\n");
-add("html2html", "Gallery", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t*
</p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[4,139,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[34,92,42,6]}'>Image1.png</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[96,130,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[140,144,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[144,286,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[174,232,42,6]}'>Image2.gif</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[236,277,25,6]}'>\n<p
data-parsoid='{\"dsr\":[262,266,0,0]}'>||||</p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[287,291,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[291,422,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[321,375,42,6]}'>Image3</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[379,413,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[423,427,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[427,574,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[457,511,42,6]}'>Image4</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[515,565,25,6]}'>\n<p
data-parsoid='{\"dsr\":[541,554,0,0]}'>300px|
centre</p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[575,579,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[579,731,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[609,667,42,6]}'>Image5.svg</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[671,722,25,6]}'>\n<p
data-parsoid='{\"dsr\":[697,711,0,0]}'><a rel=\"mw:ExtLink\"
href=\"http://///////\"
data-parsoid='{\"stx\":\"url\",\"dsr\":[697,711,0,0]}'>http://///////</a></p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[732,736,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[736,886,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[766,839,42,6]}'><span
typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[808,833,8,9]}'>*
image6</span></div>\n\t\t\t<div class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[843,877,25,6]}'>\t\t\t</div>\n\t\t</div>\n");
+add("html2html", "Gallery", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t*
</p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[4,139,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[34,92,42,6]}'>Image1.png</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[96,130,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[140,144,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[144,286,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[174,232,42,6]}'>Image2.gif</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[236,277,25,6]}'>\n<p
data-parsoid='{\"dsr\":[262,266,0,0]}'>||||</p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[287,291,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[291,422,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[321,375,42,6]}'>Image3</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[379,413,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[423,427,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[427,574,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[457,511,42,6]}'>Image4</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[515,565,25,6]}'>\n<p
data-parsoid='{\"dsr\":[541,554,0,0]}'>300px|
centre</p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[575,579,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[579,731,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[609,667,42,6]}'>Image5.svg</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[671,722,25,6]}'>\n<p
data-parsoid='{\"dsr\":[697,711,0,0]}'><a rel=\"mw:ExtLink\"
href=\"http://///////\"
data-parsoid='{\"stx\":\"url\",\"dsr\":[697,711,0,0]}'>http://///////</a></p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[732,736,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[736,869,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[766,822,42,6]}'>*
image6</div>\n\t\t\t<div class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[826,860,25,6]}'>\t\t\t</div>\n\t\t</div>\n");
add("html2html", "Gallery (with options)", "<p
data-parsoid='{\"dsr\":[0,35,0,0]}'>\t* Foo <a rel=\"mw:WikiLink\"
href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main
Page\"},\"dsr\":[7,35,17,2]}'>Main Page</a></p>\n<p
data-parsoid='{\"dsr\":[36,40,0,0]}'>\t\t* </p><div style=\"width: 105px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[40,189,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 70px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[70,132,41,6]}'>Nonexistant.jpg</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[136,180,25,6]}'>\n<p
data-parsoid='{\"dsr\":[162,169,0,0]}'>caption</p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[190,194,0,0]}'>\t\t* </p><div style=\"width: 105px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[194,333,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"height: 70px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[224,286,41,6]}'>Nonexistant.jpg</div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[290,324,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[334,338,0,0]}'>\t\t* </p><div style=\"width: 105px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[338,612,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 100px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[368,515,41,6]}'><div
style=\"margin:31px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[409,509,31,6]}'><img
src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg\"
alt=\"70px-Foobar.jpg\" rel=\"mw:externalImage\"
data-parsoid='{\"dsr\":[440,503,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[519,603,25,6]}'>\n<p
data-parsoid='{\"dsr\":[545,592,0,0]}'>some <b
data-parsoid='{\"dsr\":[550,563,3,3]}'>caption</b> <a rel=\"mw:WikiLink\"
href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\"
data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main
Page\"},\"dsr\":[564,592,17,2]}'>Main
Page</a></p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[613,617,0,0]}'>\t\t* </p><div style=\"width: 105px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[617,841,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 100px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[647,794,41,6]}'><div
style=\"margin:31px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[688,788,31,6]}'><img
src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg\"
alt=\"70px-Foobar.jpg\" rel=\"mw:externalImage\"
data-parsoid='{\"dsr\":[719,782,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[798,832,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[842,846,0,0]}'>\t\t* </p><div style=\"width: 105px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[846,1087,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 100px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[876,1023,41,6]}'><div
style=\"margin:31px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[917,1017,31,6]}'><img
src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg\"
alt=\"70px-Foobar.jpg\" rel=\"mw:externalImage\"
data-parsoid='{\"dsr\":[948,1011,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[1027,1078,25,6]}'>\n<p
data-parsoid='{\"dsr\":[1053,1067,0,0]}'>Blabla|blabla.</p>\n\n\t\t\t</div>\n\t\t</div>\n");
add("html2html", "Gallery with link that has fragment", "<p
data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><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<p
data-parsoid='{\"dsr\":[230,234,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[234,459,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[264,412,41,6]}'><div
style=\"margin:68px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[305,406,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\":[336,400,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[416,450,25,6]}'>\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[460,464,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[464,699,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[494,642,41,6]}'><div
style=\"margin:68px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[535,636,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\":[566,630,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[646,690,25,6]}'>\n<p
data-parsoid='{\"dsr\":[672,679,0,0]}'>caption</p>\n\n\t\t\t</div>\n\t\t</div>\n");
add("html2html", "Gallery with wikitext inside caption", "<p
data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[4,295,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,286,25,6]}'>\n<p
data-parsoid='{\"dsr\":[212,275,0,0]}'><img
src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/20px-Foobar.jpg\"
alt=\"20px-Foobar.jpg\" rel=\"mw:externalImage\"
data-parsoid='{\"dsr\":[212,275,null,null]}'/></p>\n\n\t\t\t</div>\n\t\t</div>\n<p
data-parsoid='{\"dsr\":[296,300,0,0]}'>\t\t* </p><div style=\"width: 155px\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[300,551,26,6]}'>\n\t\t\t<div
class=\"thumb\" style=\"width: 150px;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[330,478,41,6]}'><div
style=\"margin:68px auto;\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[371,472,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\":[402,466,null,null]}'/></div></div>\n\t\t\t<div
class=\"gallerytext\"
data-parsoid='{\"stx\":\"html\",\"dsr\":[482,542,25,6]}'>\n<p
data-parsoid='{\"dsr\":[508,531,0,0]}'>This is a test
template</p>\n\n\t\t\t</div>\n\t\t</div>\n");
@@ -1561,7 +1561,7 @@
add("html2wt", "Section replacement, <pre> around bogus header (bug 10309)",
"== Section One ==\n =======\n\nxxx");
add("html2wt", "Special:Search page linking.",
"[[wiki/Special:Search|Special:Search]]\n");
add("html2wt", "Say the magic word", "* Parser test\n* Parser_test\n* Parser
test\n* Parser_test\n* Parser test\n* Parser_test\n* Parser test\n*
Parser_test\n* Parser test\n* Parser_test\n* Talk:Parser test\n*
Talk:Parser_test\n* Parser test\n* Parser_test\n* \n* \n* 0\n* Talk\n* Talk\n*
\n* \n* [/index.php?title=Template:Dynamic&action=edit&redlink=1
Template:Dynamic]\n");
-add("html2wt", "Gallery", "\t\t* <div style=\"width: 155px\">\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\">Image1.png</div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image2.gif</div>\n\t\t\t<div
class=\"gallerytext\">\n||||\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div
style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image3</div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image4</div>\n\t\t\t<div class=\"gallerytext\">\n300px|
centre\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image5.svg</div>\n\t\t\t<div
class=\"gallerytext\">\nhttp://///////\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div
style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\"><nowiki>* image6</nowiki></div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n");
+add("html2wt", "Gallery", "\t\t* <div style=\"width: 155px\">\n\t\t\t<div
class=\"thumb\" style=\"height: 150px;\">Image1.png</div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image2.gif</div>\n\t\t\t<div
class=\"gallerytext\">\n||||\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div
style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image3</div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image4</div>\n\t\t\t<div class=\"gallerytext\">\n300px|
centre\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"height:
150px;\">Image5.svg</div>\n\t\t\t<div
class=\"gallerytext\">\nhttp://///////\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div
style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"height: 150px;\">*
image6</div>\n\t\t\t<div class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n");
add("html2wt", "Gallery (with options)", "\t* Foo [[wiki/Main Page|Main
Page]]\n\t\t* <div style=\"width: 105px\">\n\t\t\t<div class=\"thumb\"
style=\"height: 70px;\">Nonexistant.jpg</div>\n\t\t\t<div
class=\"gallerytext\">\ncaption\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div
style=\"width: 105px\">\n\t\t\t<div class=\"thumb\" style=\"height:
70px;\">Nonexistant.jpg</div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
105px\">\n\t\t\t<div class=\"thumb\" style=\"width: 100px;\"><div
style=\"margin:31px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\nsome '''caption''' [[wiki/Main Page|Main
Page]]\n\n\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
105px\">\n\t\t\t<div class=\"thumb\" style=\"width: 100px;\"><div
style=\"margin:31px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
105px\">\n\t\t\t<div class=\"thumb\" style=\"width: 100px;\"><div
style=\"margin:31px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\nBlabla|blabla.\n\n\t\t\t</div>\n\t\t</div>\n");
add("html2wt", "Gallery with link that has fragment", "\t\t* <div
style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"width:
150px;\"><div style=\"margin:68px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div
style=\"margin:68px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\t\t\t</div>\n\t\t</div>\n\t\t* <div style=\"width:
155px\">\n\t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div
style=\"margin:68px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\ncaption\n\n\t\t\t</div>\n\t\t</div>\n");
add("html2wt", "Gallery with wikitext inside caption", "\t\t* <div
style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"width:
150px;\"><div style=\"margin:68px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\nhttp://example.com/images/thumb/3/3a/Foobar.jpg/20px-Foobar.jpg\n\n\t\t\t</div>\n\t\t</div>\n\t\t*
<div style=\"width: 155px\">\n\t\t\t<div class=\"thumb\" style=\"width:
150px;\"><div style=\"margin:68px
auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div>\n\t\t\t<div
class=\"gallerytext\">\nThis is a test
template\n\n\t\t\t</div>\n\t\t</div>\n");
@@ -1750,7 +1750,6 @@
add("html2wt", "Lists: 2. Inside definition lists", ";
<nowiki>;foo</nowiki>\n\n; <nowiki>:foo</nowiki>\n\n; <nowiki>:foo</nowiki>\n:
bar\n\n: <nowiki>:foo</nowiki>\n");
add("html2wt", "Lists: 3. Only bullets at start of text should be escaped", "*
<nowiki>*foo*bar</nowiki>\n\n* <nowiki>*foo</nowiki>''it''*bar\n");
add("html2wt", "Lists: 4. No escapes needed", "* foo*bar\n\n* ''foo''*bar\n\n*
[[Foo]]: bar\n\n* [[Foo]]*bar\n");
-add("html2wt", "Lists: 5. No unnecessary escapes", "* bar
<span><nowiki>[[foo]]</nowiki></span>\n\n* =bar
<span><nowiki>[[foo]]</nowiki></span>\n\n* [[bar
<span><nowiki>[[foo]]</nowiki></span>\n\n* ]]bar
<span><nowiki>[[foo]]</nowiki></span>\n\n* =bar <span>foo]]</span>=\n\n*
<s></s>: a\n");
add("html2wt", "Links 13: Protect link-like plain text. (Parsoid bug T78425)",
"this is not a link: http://example.com\n");
add("html2wt", "1. Leading whitespace in SOL context should be escaped",
"<nowiki> </nowiki>a\n\n<nowiki> </nowiki> a\n\n\ta(tab)\n\n
\ta\n\n<!--cmt--><nowiki> </nowiki> a\n\na\n<nowiki>
</nowiki>b\n\na\n\tb\n\na\n\t b\n");
add("html2wt", "3. Leading whitespace in indent-pre suppressing contexts
should not be escaped", "<blockquote>\n\n a\n <span>b</span>\n
c\n</blockquote>");
diff --git a/tests/parserTests.txt b/tests/parserTests.txt
index fb105be..e6afda2 100644
--- a/tests/parserTests.txt
+++ b/tests/parserTests.txt
@@ -20194,15 +20194,17 @@
!! wikitext
* bar <span><nowiki>[[foo]]</nowiki></span>
-*=bar <span><nowiki>[[foo]]</nowiki></span>
+* =bar <span><nowiki>[[foo]]</nowiki></span>
-*[[bar <span><nowiki>[[foo]]</nowiki></span>
+* [[bar <span><nowiki>[[foo]]</nowiki></span>
-*]]bar <span><nowiki>[[foo]]</nowiki></span>
+* ]]bar <span><nowiki>[[foo]]</nowiki></span>
-*=bar <span>foo]]</span>=
+* =bar <span>foo]]</span>=
* <s></s>: a
+
+* ''* foo''
!! html
<ul><li> bar <span>[[foo]]</span></li></ul>
<ul><li>=bar <span>[[foo]]</span></li></ul>
@@ -20210,6 +20212,7 @@
<ul><li>]]bar <span>[[foo]]</span></li></ul>
<ul><li>=bar <span>foo]]</span>=</li></ul>
<ul><li> <s></s>: a</li></ul>
+<ul><li><i>* foo</i></li></ul>
!!end
--
To view, visit https://gerrit.wikimedia.org/r/180574
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iebfd43c85082b4c506d5fb770f1a035b35e3802c
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