Auto merge of #7163 - Ms2ger:wpt_20150811, r=Ms2ger

Update web-platform-tests to revision 58133dd71b16037669a0aa011b2afd448b52d434.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7163)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-08-12 00:54:57 -06:00
commit 3b1b3fe0a0
192 changed files with 50802 additions and 1334 deletions

View file

@ -1045,6 +1045,10 @@
"path": "quirks-mode/active-and-hover-manual.html",
"url": "/quirks-mode/active-and-hover-manual.html"
},
{
"path": "screen-orientation/page-visibility-manual.html",
"url": "/screen-orientation/page-visibility-manual.html"
},
{
"path": "svg/import/animate-dom-01-f-manual.svg",
"url": "/svg/import/animate-dom-01-f-manual.svg"
@ -8227,10 +8231,18 @@
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex3.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex3.html"
},
{
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex4.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex4.html"
},
{
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex6.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex6.html"
},
{
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex8.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex8.html"
},
{
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hsl-1.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hsl-1.html"
@ -12111,6 +12123,10 @@
"path": "XMLHttpRequest/setrequestheader-allow-empty-value.htm",
"url": "/XMLHttpRequest/setrequestheader-allow-empty-value.htm"
},
{
"path": "XMLHttpRequest/setrequestheader-allow-whitespace-in-value.htm",
"url": "/XMLHttpRequest/setrequestheader-allow-whitespace-in-value.htm"
},
{
"path": "XMLHttpRequest/setrequestheader-before-open.htm",
"url": "/XMLHttpRequest/setrequestheader-before-open.htm"
@ -12127,6 +12143,10 @@
"path": "XMLHttpRequest/setrequestheader-case-insensitive.htm",
"url": "/XMLHttpRequest/setrequestheader-case-insensitive.htm"
},
{
"path": "XMLHttpRequest/setrequestheader-content-type.htm",
"url": "/XMLHttpRequest/setrequestheader-content-type.htm"
},
{
"path": "XMLHttpRequest/setrequestheader-header-allowed.htm",
"url": "/XMLHttpRequest/setrequestheader-header-allowed.htm"
@ -12195,6 +12215,10 @@
"path": "animation-timing/idlharness.html",
"url": "/animation-timing/idlharness.html"
},
{
"path": "animation-timing/same-dispatch-time.html",
"url": "/animation-timing/same-dispatch-time.html"
},
{
"path": "battery-status/battery-interface-idlharness.html",
"url": "/battery-status/battery-interface-idlharness.html"
@ -12539,22 +12563,6 @@
"path": "content-security-policy/blink-contrib/object-src-no-url-blocked.sub.html",
"url": "/content-security-policy/blink-contrib/object-src-no-url-blocked.sub.html"
},
{
"path": "content-security-policy/blink-contrib/object-src-param-code-blocked.sub.html",
"url": "/content-security-policy/blink-contrib/object-src-param-code-blocked.sub.html"
},
{
"path": "content-security-policy/blink-contrib/object-src-param-movie-blocked.sub.html",
"url": "/content-security-policy/blink-contrib/object-src-param-movie-blocked.sub.html"
},
{
"path": "content-security-policy/blink-contrib/object-src-param-src-blocked.sub.html",
"url": "/content-security-policy/blink-contrib/object-src-param-src-blocked.sub.html"
},
{
"path": "content-security-policy/blink-contrib/object-src-param-url-blocked.sub.html",
"url": "/content-security-policy/blink-contrib/object-src-param-url-blocked.sub.html"
},
{
"path": "content-security-policy/blink-contrib/object-src-url-allowed.sub.html",
"url": "/content-security-policy/blink-contrib/object-src-url-allowed.sub.html"
@ -13899,6 +13907,142 @@
"path": "domxpath/evaluator-constructor.html",
"url": "/domxpath/evaluator-constructor.html"
},
{
"path": "editing/event.html",
"url": "/editing/event.html"
},
{
"path": "editing/run/backcolor.html",
"url": "/editing/run/backcolor.html"
},
{
"path": "editing/run/bold.html",
"url": "/editing/run/bold.html"
},
{
"path": "editing/run/createlink.html",
"url": "/editing/run/createlink.html"
},
{
"path": "editing/run/delete.html",
"url": "/editing/run/delete.html"
},
{
"path": "editing/run/fontname.html",
"url": "/editing/run/fontname.html"
},
{
"path": "editing/run/fontsize.html",
"url": "/editing/run/fontsize.html"
},
{
"path": "editing/run/forecolor.html",
"url": "/editing/run/forecolor.html"
},
{
"path": "editing/run/formatblock.html",
"url": "/editing/run/formatblock.html"
},
{
"path": "editing/run/forwarddelete.html",
"url": "/editing/run/forwarddelete.html"
},
{
"path": "editing/run/hilitecolor.html",
"url": "/editing/run/hilitecolor.html"
},
{
"path": "editing/run/indent.html",
"url": "/editing/run/indent.html"
},
{
"path": "editing/run/inserthorizontalrule.html",
"url": "/editing/run/inserthorizontalrule.html"
},
{
"path": "editing/run/inserthtml.html",
"url": "/editing/run/inserthtml.html"
},
{
"path": "editing/run/insertimage.html",
"url": "/editing/run/insertimage.html"
},
{
"path": "editing/run/insertlinebreak.html",
"url": "/editing/run/insertlinebreak.html"
},
{
"path": "editing/run/insertorderedlist.html",
"url": "/editing/run/insertorderedlist.html"
},
{
"path": "editing/run/insertparagraph.html",
"url": "/editing/run/insertparagraph.html"
},
{
"path": "editing/run/inserttext.html",
"url": "/editing/run/inserttext.html"
},
{
"path": "editing/run/insertunorderedlist.html",
"url": "/editing/run/insertunorderedlist.html"
},
{
"path": "editing/run/italic.html",
"url": "/editing/run/italic.html"
},
{
"path": "editing/run/justifycenter.html",
"url": "/editing/run/justifycenter.html"
},
{
"path": "editing/run/justifyfull.html",
"url": "/editing/run/justifyfull.html"
},
{
"path": "editing/run/justifyleft.html",
"url": "/editing/run/justifyleft.html"
},
{
"path": "editing/run/justifyright.html",
"url": "/editing/run/justifyright.html"
},
{
"path": "editing/run/misc.html",
"url": "/editing/run/misc.html"
},
{
"path": "editing/run/multitest.html",
"url": "/editing/run/multitest.html"
},
{
"path": "editing/run/outdent.html",
"url": "/editing/run/outdent.html"
},
{
"path": "editing/run/removeformat.html",
"url": "/editing/run/removeformat.html"
},
{
"path": "editing/run/strikethrough.html",
"url": "/editing/run/strikethrough.html"
},
{
"path": "editing/run/subscript.html",
"url": "/editing/run/subscript.html"
},
{
"path": "editing/run/superscript.html",
"url": "/editing/run/superscript.html"
},
{
"path": "editing/run/underline.html",
"url": "/editing/run/underline.html"
},
{
"path": "editing/run/unlink.html",
"url": "/editing/run/unlink.html"
},
{
"path": "encoding/api-basics.html",
"url": "/encoding/api-basics.html"
@ -16651,6 +16795,10 @@
"path": "html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html",
"url": "/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html"
},
{
"path": "html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html",
"url": "/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html"
},
{
"path": "html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html",
"url": "/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html"
@ -24783,6 +24931,86 @@
"path": "resource-timing/test_resource_timing.html",
"url": "/resource-timing/test_resource_timing.html"
},
{
"path": "screen-orientation/lock-bad-argument.html",
"url": "/screen-orientation/lock-bad-argument.html"
},
{
"path": "screen-orientation/lock-basic.html",
"url": "/screen-orientation/lock-basic.html"
},
{
"path": "screen-orientation/lock-sandboxed-iframe.html",
"url": "/screen-orientation/lock-sandboxed-iframe.html"
},
{
"path": "screen-orientation/onchange-event-subframe.html",
"url": "/screen-orientation/onchange-event-subframe.html"
},
{
"path": "screen-orientation/onchange-event.html",
"url": "/screen-orientation/onchange-event.html"
},
{
"path": "screen-orientation/orientation-api.html",
"url": "/screen-orientation/orientation-api.html"
},
{
"path": "screen-orientation/orientation-reading.html",
"url": "/screen-orientation/orientation-reading.html"
},
{
"path": "selection/Document-open.html",
"url": "/selection/Document-open.html"
},
{
"path": "selection/addRange.html",
"url": "/selection/addRange.html"
},
{
"path": "selection/collapse.html",
"url": "/selection/collapse.html"
},
{
"path": "selection/collapseToStartEnd.html",
"url": "/selection/collapseToStartEnd.html"
},
{
"path": "selection/deleteFromDocument.html",
"url": "/selection/deleteFromDocument.html"
},
{
"path": "selection/dir.manual.html",
"url": "/selection/dir.manual.html"
},
{
"path": "selection/extend.html",
"url": "/selection/extend.html"
},
{
"path": "selection/getRangeAt.html",
"url": "/selection/getRangeAt.html"
},
{
"path": "selection/getSelection.html",
"url": "/selection/getSelection.html"
},
{
"path": "selection/interfaces.html",
"url": "/selection/interfaces.html"
},
{
"path": "selection/isCollapsed.html",
"url": "/selection/isCollapsed.html"
},
{
"path": "selection/removeAllRanges.html",
"url": "/selection/removeAllRanges.html"
},
{
"path": "selection/selectAllChildren.html",
"url": "/selection/selectAllChildren.html"
},
{
"path": "selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html",
"url": "/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html"
@ -27685,6 +27913,11 @@
"timeout": "long",
"url": "/dom/traversal/NodeIterator.html"
},
{
"path": "dom/traversal/TreeWalker.html",
"timeout": "long",
"url": "/dom/traversal/TreeWalker.html"
},
{
"path": "encoding/api-invalid-label.html",
"timeout": "long",
@ -28856,36 +29089,8 @@
]
},
"local_changes": {
"deleted": [
"shadow-dom/shadow-trees/hosting-multiple-shadow-trees-002.html",
"shadow-dom/shadow-trees/hosting-multiple-shadow-trees-006.html",
"shadow-dom/shadow-trees/hosting-multiple-shadow-trees-004.html",
"shadow-dom/shadow-trees/hosting-multiple-shadow-trees-003.html",
"2dcontext/transformations/canvas_transformations_reset_001.htm",
"shadow-dom/shadow-trees/hosting-multiple-shadow-trees-005.html"
],
"items": {
"testharness": {
"2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex4.html": [
{
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex4.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex4.html"
}
],
"2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex8.html": [
{
"path": "2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex8.html",
"url": "/2dcontext/fill-and-stroke-styles/2d.fillStyle.parse.hex8.html"
}
],
"animation-timing/same-dispatch-time.html": [
{
"path": "animation-timing/same-dispatch-time.html",
"url": "/animation-timing/same-dispatch-time.html"
}
]
}
},
"deleted": [],
"items": {},
"reftest_nodes": {}
},
"reftest_nodes": {
@ -34362,7 +34567,7 @@
}
]
},
"rev": "12d3e15e5ecae695e1216c358d613705fbff6b68",
"rev": "58133dd71b16037669a0aa011b2afd448b52d434",
"url_base": "/",
"version": 2
}

View file

@ -0,0 +1,5 @@
[XMLHttpRequest-withCredentials.html]
type: testharness
[setting withCredentials when in DONE state (synchronous)]
expected: FAIL

View file

@ -0,0 +1,5 @@
[XMLHttpRequest-withCredentials.worker]
type: testharness
[setting withCredentials when in DONE state (synchronous)]
expected: FAIL

View file

@ -225,135 +225,141 @@
[Resulting cursor position for range 36 [docfrag, 0, docfrag, 0\]]
expected: FAIL
[Resulting DOM for range 37 [paras[1\].firstChild, 0, paras[1\].firstChild, 1\]]
[Resulting DOM for range 37 [processingInstruction, 0, processingInstruction, 4\]]
expected: FAIL
[Resulting cursor position for range 37 [paras[1\].firstChild, 0, paras[1\].firstChild, 1\]]
[Resulting cursor position for range 37 [processingInstruction, 0, processingInstruction, 4\]]
expected: FAIL
[Resulting DOM for range 38 [paras[1\].firstChild, 2, paras[1\].firstChild, 8\]]
[Resulting DOM for range 38 [paras[1\].firstChild, 0, paras[1\].firstChild, 1\]]
expected: FAIL
[Resulting cursor position for range 38 [paras[1\].firstChild, 2, paras[1\].firstChild, 8\]]
[Resulting cursor position for range 38 [paras[1\].firstChild, 0, paras[1\].firstChild, 1\]]
expected: FAIL
[Resulting DOM for range 39 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1\]]
[Resulting DOM for range 39 [paras[1\].firstChild, 2, paras[1\].firstChild, 8\]]
expected: FAIL
[Resulting cursor position for range 39 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1\]]
[Resulting cursor position for range 39 [paras[1\].firstChild, 2, paras[1\].firstChild, 8\]]
expected: FAIL
[Resulting DOM for range 40 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1\]]
[Resulting DOM for range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1\]]
expected: FAIL
[Resulting cursor position for range 40 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1\]]
[Resulting cursor position for range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1\]]
expected: FAIL
[Resulting DOM for range 41 [foreignDoc.head, 1, foreignDoc.head, 1\]]
[Resulting DOM for range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1\]]
expected: FAIL
[Resulting cursor position for range 41 [foreignDoc.head, 1, foreignDoc.head, 1\]]
[Resulting cursor position for range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1\]]
expected: FAIL
[Resulting DOM for range 42 [foreignDoc.body, 0, foreignDoc.body, 0\]]
[Resulting DOM for range 42 [foreignDoc.head, 1, foreignDoc.head, 1\]]
expected: FAIL
[Resulting cursor position for range 42 [foreignDoc.body, 0, foreignDoc.body, 0\]]
[Resulting cursor position for range 42 [foreignDoc.head, 1, foreignDoc.head, 1\]]
expected: FAIL
[Resulting DOM for range 43 [paras[0\], 0, paras[0\], 0\]]
[Resulting DOM for range 43 [foreignDoc.body, 0, foreignDoc.body, 0\]]
expected: FAIL
[Resulting cursor position for range 43 [paras[0\], 0, paras[0\], 0\]]
[Resulting cursor position for range 43 [foreignDoc.body, 0, foreignDoc.body, 0\]]
expected: FAIL
[Resulting DOM for range 44 [detachedPara1, 0, detachedPara1, 0\]]
[Resulting DOM for range 44 [paras[0\], 0, paras[0\], 0\]]
expected: FAIL
[Resulting cursor position for range 44 [detachedPara1, 0, detachedPara1, 0\]]
[Resulting cursor position for range 44 [paras[0\], 0, paras[0\], 0\]]
expected: FAIL
[Resulting DOM for range 45 [testDiv, 1, paras[2\].firstChild, 5\]]
[Resulting DOM for range 45 [detachedPara1, 0, detachedPara1, 0\]]
expected: FAIL
[Resulting cursor position for range 45 [testDiv, 1, paras[2\].firstChild, 5\]]
[Resulting cursor position for range 45 [detachedPara1, 0, detachedPara1, 0\]]
expected: FAIL
[Resulting DOM for range 46 [document.documentElement, 1, document.body, 0\]]
[Resulting DOM for range 46 [testDiv, 1, paras[2\].firstChild, 5\]]
expected: FAIL
[Resulting cursor position for range 46 [document.documentElement, 1, document.body, 0\]]
[Resulting cursor position for range 46 [testDiv, 1, paras[2\].firstChild, 5\]]
expected: FAIL
[Resulting DOM for range 47 [foreignDoc.documentElement, 1, foreignDoc.body, 0\]]
[Resulting DOM for range 47 [document.documentElement, 1, document.body, 0\]]
expected: FAIL
[Resulting cursor position for range 47 [foreignDoc.documentElement, 1, foreignDoc.body, 0\]]
[Resulting cursor position for range 47 [document.documentElement, 1, document.body, 0\]]
expected: FAIL
[Resulting DOM for range 48 [document, 1, document, 2\]]
[Resulting DOM for range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0\]]
expected: FAIL
[Resulting cursor position for range 48 [document, 1, document, 2\]]
[Resulting cursor position for range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0\]]
expected: FAIL
[Resulting DOM for range 49 [paras[2\].firstChild, 4, comment, 2\]]
[Resulting DOM for range 49 [document, 1, document, 2\]]
expected: FAIL
[Resulting cursor position for range 49 [paras[2\].firstChild, 4, comment, 2\]]
[Resulting cursor position for range 49 [document, 1, document, 2\]]
expected: FAIL
[Resulting DOM for range 50 [paras[3\], 1, comment, 8\]]
[Resulting DOM for range 50 [paras[2\].firstChild, 4, comment, 2\]]
expected: FAIL
[Resulting cursor position for range 50 [paras[3\], 1, comment, 8\]]
[Resulting cursor position for range 50 [paras[2\].firstChild, 4, comment, 2\]]
expected: FAIL
[Resulting DOM for range 51 [foreignDoc, 0, foreignDoc, 0\]]
[Resulting DOM for range 51 [paras[3\], 1, comment, 8\]]
expected: FAIL
[Resulting cursor position for range 51 [foreignDoc, 0, foreignDoc, 0\]]
[Resulting cursor position for range 51 [paras[3\], 1, comment, 8\]]
expected: FAIL
[Resulting DOM for range 52 [xmlDoc, 0, xmlDoc, 0\]]
[Resulting DOM for range 52 [foreignDoc, 0, foreignDoc, 0\]]
expected: FAIL
[Resulting cursor position for range 52 [xmlDoc, 0, xmlDoc, 0\]]
[Resulting cursor position for range 52 [foreignDoc, 0, foreignDoc, 0\]]
expected: FAIL
[Resulting DOM for range 53 [detachedForeignTextNode, 7, detachedForeignTextNode, 7\]]
[Resulting DOM for range 53 [xmlDoc, 0, xmlDoc, 0\]]
expected: FAIL
[Resulting cursor position for range 53 [detachedForeignTextNode, 7, detachedForeignTextNode, 7\]]
[Resulting cursor position for range 53 [xmlDoc, 0, xmlDoc, 0\]]
expected: FAIL
[Resulting DOM for range 54 [detachedXmlTextNode, 7, detachedXmlTextNode, 7\]]
[Resulting DOM for range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7\]]
expected: FAIL
[Resulting cursor position for range 54 [detachedXmlTextNode, 7, detachedXmlTextNode, 7\]]
[Resulting cursor position for range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7\]]
expected: FAIL
[Resulting DOM for range 55 [detachedComment, 5, detachedComment, 5\]]
[Resulting DOM for range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7\]]
expected: FAIL
[Resulting cursor position for range 55 [detachedComment, 5, detachedComment, 5\]]
[Resulting cursor position for range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7\]]
expected: FAIL
[Resulting DOM for range 56 [detachedForeignComment, 4, detachedForeignComment, 4\]]
[Resulting DOM for range 56 [detachedComment, 5, detachedComment, 5\]]
expected: FAIL
[Resulting cursor position for range 56 [detachedForeignComment, 4, detachedForeignComment, 4\]]
[Resulting cursor position for range 56 [detachedComment, 5, detachedComment, 5\]]
expected: FAIL
[Resulting DOM for range 57 [foreignDocfrag, 0, foreignDocfrag, 0\]]
[Resulting DOM for range 57 [detachedForeignComment, 4, detachedForeignComment, 4\]]
expected: FAIL
[Resulting cursor position for range 57 [foreignDocfrag, 0, foreignDocfrag, 0\]]
[Resulting cursor position for range 57 [detachedForeignComment, 4, detachedForeignComment, 4\]]
expected: FAIL
[Resulting DOM for range 58 [xmlDocfrag, 0, xmlDocfrag, 0\]]
[Resulting DOM for range 58 [foreignDocfrag, 0, foreignDocfrag, 0\]]
expected: FAIL
[Resulting cursor position for range 58 [xmlDocfrag, 0, xmlDocfrag, 0\]]
[Resulting cursor position for range 58 [foreignDocfrag, 0, foreignDocfrag, 0\]]
expected: FAIL
[Resulting DOM for range 59 [xmlDocfrag, 0, xmlDocfrag, 0\]]
expected: FAIL
[Resulting cursor position for range 59 [xmlDocfrag, 0, xmlDocfrag, 0\]]
expected: FAIL

View file

@ -48,21 +48,30 @@
[Resulting cursor position for range 35 [detachedXmlComment, 2, detachedXmlComment, 6\]]
expected: FAIL
[Resulting cursor position for range 37 [paras[1\].firstChild, 0, paras[1\].firstChild, 1\]]
[Resulting DOM for range 37 [processingInstruction, 0, processingInstruction, 4\]]
expected: FAIL
[Resulting cursor position for range 38 [paras[1\].firstChild, 2, paras[1\].firstChild, 8\]]
[Resulting cursor position for range 37 [processingInstruction, 0, processingInstruction, 4\]]
expected: FAIL
[Resulting cursor position for range 39 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1\]]
[Returned fragment for range 37 [processingInstruction, 0, processingInstruction, 4\]]
expected: FAIL
[Resulting cursor position for range 40 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1\]]
[Resulting cursor position for range 38 [paras[1\].firstChild, 0, paras[1\].firstChild, 1\]]
expected: FAIL
[Resulting cursor position for range 49 [paras[2\].firstChild, 4, comment, 2\]]
[Resulting cursor position for range 39 [paras[1\].firstChild, 2, paras[1\].firstChild, 8\]]
expected: FAIL
[Resulting cursor position for range 50 [paras[3\], 1, comment, 8\]]
[Resulting cursor position for range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1\]]
expected: FAIL
[Resulting cursor position for range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1\]]
expected: FAIL
[Resulting cursor position for range 50 [paras[2\].firstChild, 4, comment, 2\]]
expected: FAIL
[Resulting cursor position for range 51 [paras[3\], 1, comment, 8\]]
expected: FAIL

View file

@ -1,722 +0,0 @@
[Range-insertNode.html]
type: testharness
[0,0: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\]]
expected: FAIL
[0,0: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\]]
expected: FAIL
[0,1: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\].firstChild]
expected: FAIL
[0,7: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node document]
expected: FAIL
[0,7: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node document]
expected: FAIL
[0,9: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node foreignDoc]
expected: FAIL
[0,9: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node foreignDoc]
expected: FAIL
[0,11: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node xmlDoc]
expected: FAIL
[0,11: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node xmlDoc]
expected: FAIL
[0,20: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node doctype]
expected: FAIL
[0,20: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node doctype]
expected: FAIL
[0,21: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node foreignDoctype]
expected: FAIL
[0,21: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node foreignDoctype]
expected: FAIL
[1,0: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node paras[0\]]
expected: FAIL
[1,0: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node paras[0\]]
expected: FAIL
[1,7: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node document]
expected: FAIL
[1,7: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node document]
expected: FAIL
[1,9: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node foreignDoc]
expected: FAIL
[1,9: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node foreignDoc]
expected: FAIL
[1,11: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node xmlDoc]
expected: FAIL
[1,11: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node xmlDoc]
expected: FAIL
[1,20: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node doctype]
expected: FAIL
[1,20: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node doctype]
expected: FAIL
[1,21: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node foreignDoctype]
expected: FAIL
[1,21: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node foreignDoctype]
expected: FAIL
[2,0: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\]]
expected: FAIL
[2,0: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\]]
expected: FAIL
[2,1: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\].firstChild]
expected: FAIL
[2,2: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[1\].firstChild]
expected: FAIL
[2,3: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignPara1]
expected: FAIL
[2,4: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignPara1.firstChild]
expected: FAIL
[2,5: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node detachedPara1]
expected: FAIL
[2,6: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node detachedPara1.firstChild]
expected: FAIL
[2,7: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node document]
expected: FAIL
[2,7: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node document]
expected: FAIL
[2,8: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node detachedDiv]
expected: FAIL
[2,9: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignDoc]
expected: FAIL
[2,9: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignDoc]
expected: FAIL
[2,10: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignPara2]
expected: FAIL
[2,11: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node xmlDoc]
expected: FAIL
[2,11: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node xmlDoc]
expected: FAIL
[2,12: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node xmlElement]
expected: FAIL
[2,13: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node detachedTextNode]
expected: FAIL
[2,14: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignTextNode]
expected: FAIL
[2,15: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node processingInstruction]
expected: FAIL
[2,16: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node detachedProcessingInstruction]
expected: FAIL
[2,17: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node comment]
expected: FAIL
[2,18: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node detachedComment]
expected: FAIL
[2,19: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node docfrag]
expected: FAIL
[2,20: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node doctype]
expected: FAIL
[2,20: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node doctype]
expected: FAIL
[2,21: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignDoctype]
expected: FAIL
[2,21: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node foreignDoctype]
expected: FAIL
[3,0: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\]]
expected: FAIL
[3,0: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\]]
expected: FAIL
[3,1: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\].firstChild]
expected: FAIL
[3,2: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[1\].firstChild]
expected: FAIL
[3,3: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignPara1]
expected: FAIL
[3,4: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignPara1.firstChild]
expected: FAIL
[3,5: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node detachedPara1]
expected: FAIL
[3,6: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node detachedPara1.firstChild]
expected: FAIL
[3,7: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node document]
expected: FAIL
[3,7: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node document]
expected: FAIL
[3,8: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node detachedDiv]
expected: FAIL
[3,9: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignDoc]
expected: FAIL
[3,9: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignDoc]
expected: FAIL
[3,10: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignPara2]
expected: FAIL
[3,11: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node xmlDoc]
expected: FAIL
[3,11: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node xmlDoc]
expected: FAIL
[3,12: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node xmlElement]
expected: FAIL
[3,13: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node detachedTextNode]
expected: FAIL
[3,14: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignTextNode]
expected: FAIL
[3,15: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node processingInstruction]
expected: FAIL
[3,16: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node detachedProcessingInstruction]
expected: FAIL
[3,17: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node comment]
expected: FAIL
[3,18: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node detachedComment]
expected: FAIL
[3,19: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node docfrag]
expected: FAIL
[3,20: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node doctype]
expected: FAIL
[3,20: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node doctype]
expected: FAIL
[3,21: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignDoctype]
expected: FAIL
[3,21: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node foreignDoctype]
expected: FAIL
[4,2: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node paras[1\].firstChild]
expected: FAIL
[4,7: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node document]
expected: FAIL
[4,7: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node document]
expected: FAIL
[4,9: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoc]
expected: FAIL
[4,9: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoc]
expected: FAIL
[4,11: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node xmlDoc]
expected: FAIL
[4,11: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node xmlDoc]
expected: FAIL
[4,20: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node doctype]
expected: FAIL
[4,20: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node doctype]
expected: FAIL
[4,21: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoctype]
expected: FAIL
[4,21: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoctype]
expected: FAIL
[5,0: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[0\]]
expected: FAIL
[5,1: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[0\].firstChild]
expected: FAIL
[5,2: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[1\].firstChild]
expected: FAIL
[5,3: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignPara1]
expected: FAIL
[5,4: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignPara1.firstChild]
expected: FAIL
[5,5: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node detachedPara1]
expected: FAIL
[5,6: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node detachedPara1.firstChild]
expected: FAIL
[5,7: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node document]
expected: FAIL
[5,7: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node document]
expected: FAIL
[5,8: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node detachedDiv]
expected: FAIL
[5,9: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignDoc]
expected: FAIL
[5,9: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignDoc]
expected: FAIL
[5,10: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignPara2]
expected: FAIL
[5,11: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node xmlDoc]
expected: FAIL
[5,11: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node xmlDoc]
expected: FAIL
[5,12: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node xmlElement]
expected: FAIL
[5,13: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node detachedTextNode]
expected: FAIL
[5,14: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignTextNode]
expected: FAIL
[5,15: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node processingInstruction]
expected: FAIL
[5,16: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node detachedProcessingInstruction]
expected: FAIL
[5,17: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node comment]
expected: FAIL
[5,18: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node detachedComment]
expected: FAIL
[5,19: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node docfrag]
expected: FAIL
[5,20: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node doctype]
expected: FAIL
[5,20: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node doctype]
expected: FAIL
[5,21: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignDoctype]
expected: FAIL
[5,21: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node foreignDoctype]
expected: FAIL
[6,5: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1]
expected: FAIL
[6,5: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1]
expected: FAIL
[6,6: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1.firstChild]
expected: FAIL
[6,7: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node document]
expected: FAIL
[6,7: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node document]
expected: FAIL
[6,8: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedDiv]
expected: FAIL
[6,8: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedDiv]
expected: FAIL
[6,9: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node foreignDoc]
expected: FAIL
[6,9: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node foreignDoc]
expected: FAIL
[6,11: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node xmlDoc]
expected: FAIL
[6,11: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node xmlDoc]
expected: FAIL
[6,20: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node doctype]
expected: FAIL
[6,20: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node doctype]
expected: FAIL
[6,21: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node foreignDoctype]
expected: FAIL
[6,21: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node foreignDoctype]
expected: FAIL
[7,0: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node paras[0\]]
expected: FAIL
[7,1: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node paras[0\].firstChild]
expected: FAIL
[7,2: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node paras[1\].firstChild]
expected: FAIL
[7,3: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignPara1]
expected: FAIL
[7,4: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignPara1.firstChild]
expected: FAIL
[7,5: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1]
expected: FAIL
[7,5: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1]
expected: FAIL
[7,6: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1.firstChild]
expected: FAIL
[7,7: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node document]
expected: FAIL
[7,7: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node document]
expected: FAIL
[7,8: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedDiv]
expected: FAIL
[7,8: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedDiv]
expected: FAIL
[7,9: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignDoc]
expected: FAIL
[7,9: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignDoc]
expected: FAIL
[7,10: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignPara2]
expected: FAIL
[7,11: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node xmlDoc]
expected: FAIL
[7,11: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node xmlDoc]
expected: FAIL
[7,12: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node xmlElement]
expected: FAIL
[7,13: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedTextNode]
expected: FAIL
[7,14: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignTextNode]
expected: FAIL
[7,15: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node processingInstruction]
expected: FAIL
[7,16: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedProcessingInstruction]
expected: FAIL
[7,17: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node comment]
expected: FAIL
[7,18: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedComment]
expected: FAIL
[7,19: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node docfrag]
expected: FAIL
[7,20: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node doctype]
expected: FAIL
[7,20: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node doctype]
expected: FAIL
[7,21: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignDoctype]
expected: FAIL
[7,21: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node foreignDoctype]
expected: FAIL
[8,3: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1]
expected: FAIL
[8,3: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1]
expected: FAIL
[8,4: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1.firstChild]
expected: FAIL
[8,7: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node document]
expected: FAIL
[8,7: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node document]
expected: FAIL
[8,9: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignDoc]
expected: FAIL
[8,9: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignDoc]
expected: FAIL
[8,11: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node xmlDoc]
expected: FAIL
[8,11: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node xmlDoc]
expected: FAIL
[8,20: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node doctype]
expected: FAIL
[8,20: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node doctype]
expected: FAIL
[8,21: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignDoctype]
expected: FAIL
[8,21: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignDoctype]
expected: FAIL
[9,0: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node paras[0\]]
expected: FAIL
[9,1: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node paras[0\].firstChild]
expected: FAIL
[9,2: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node paras[1\].firstChild]
expected: FAIL
[9,3: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1]
expected: FAIL
[9,3: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1]
expected: FAIL
[9,4: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1.firstChild]
expected: FAIL
[9,5: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node detachedPara1]
expected: FAIL
[9,6: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node detachedPara1.firstChild]
expected: FAIL
[9,7: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node document]
expected: FAIL
[9,7: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node document]
expected: FAIL
[9,8: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node detachedDiv]
expected: FAIL
[9,9: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignDoc]
expected: FAIL
[9,9: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignDoc]
expected: FAIL
[9,10: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara2]
expected: FAIL
[9,11: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node xmlDoc]
expected: FAIL
[9,11: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node xmlDoc]
expected: FAIL
[9,12: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node xmlElement]
expected: FAIL
[9,13: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node detachedTextNode]
expected: FAIL
[9,14: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignTextNode]
expected: FAIL
[9,15: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node processingInstruction]
expected: FAIL
[9,16: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node detachedProcessingInstruction]
expected: FAIL
[9,17: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node comment]
expected: FAIL
[9,18: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node detachedComment]
expected: FAIL
[9,19: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node docfrag]
expected: FAIL
[9,20: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node doctype]
expected: FAIL
[9,20: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node doctype]
expected: FAIL
[9,21: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignDoctype]
expected: FAIL
[9,21: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignDoctype]
expected: FAIL
[18,0: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node paras[0\]]
expected: FAIL
[18,0: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node paras[0\]]
expected: FAIL
[18,7: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node document]
expected: FAIL
[18,7: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node document]
expected: FAIL
[18,9: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoc]
expected: FAIL
[18,9: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoc]
expected: FAIL
[18,11: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node xmlDoc]
expected: FAIL
[18,11: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node xmlDoc]
expected: FAIL
[18,20: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node doctype]
expected: FAIL
[18,20: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node doctype]
expected: FAIL
[18,21: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoctype]
expected: FAIL
[18,21: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node foreignDoctype]
expected: FAIL
[19,0: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node paras[0\]]
expected: FAIL
[19,0: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node paras[0\]]
expected: FAIL
[19,7: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node document]
expected: FAIL
[19,7: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node document]
expected: FAIL
[19,9: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node foreignDoc]
expected: FAIL
[19,9: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node foreignDoc]
expected: FAIL
[19,11: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node xmlDoc]
expected: FAIL
[19,11: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node xmlDoc]
expected: FAIL
[19,20: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node doctype]
expected: FAIL
[19,20: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node doctype]
expected: FAIL
[19,21: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node foreignDoctype]
expected: FAIL
[19,21: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node foreignDoctype]
expected: FAIL
[20,0: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node paras[0\]]
expected: FAIL
[20,0: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node paras[0\]]
expected: FAIL
[20,7: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node document]
expected: FAIL
[20,7: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node document]
expected: FAIL
[20,9: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node foreignDoc]
expected: FAIL
[20,9: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node foreignDoc]
expected: FAIL
[20,11: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node xmlDoc]
expected: FAIL
[20,11: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node xmlDoc]
expected: FAIL
[20,20: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node doctype]
expected: FAIL
[20,20: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node doctype]
expected: FAIL
[20,21: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node foreignDoctype]
expected: FAIL
[20,21: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node foreignDoctype]
expected: FAIL

View file

@ -3780,3 +3780,117 @@
[36,21: resulting DOM for range [docfrag, 0, docfrag, 0\], node foreignDoctype]
expected: FAIL
[37,0: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node paras[0\]]
expected: FAIL
[37,0: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node paras[0\]]
expected: FAIL
[37,1: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node paras[0\].firstChild]
expected: FAIL
[37,1: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node paras[0\].firstChild]
expected: FAIL
[37,2: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node paras[1\].firstChild]
expected: FAIL
[37,2: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node paras[1\].firstChild]
expected: FAIL
[37,3: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node foreignPara1]
expected: FAIL
[37,3: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node foreignPara1]
expected: FAIL
[37,4: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node foreignPara1.firstChild]
expected: FAIL
[37,4: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node foreignPara1.firstChild]
expected: FAIL
[37,5: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node detachedPara1]
expected: FAIL
[37,5: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node detachedPara1]
expected: FAIL
[37,6: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node detachedPara1.firstChild]
expected: FAIL
[37,6: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node detachedPara1.firstChild]
expected: FAIL
[37,7: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node document]
expected: FAIL
[37,8: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node detachedDiv]
expected: FAIL
[37,8: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node detachedDiv]
expected: FAIL
[37,9: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node foreignDoc]
expected: FAIL
[37,10: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node foreignPara2]
expected: FAIL
[37,10: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node foreignPara2]
expected: FAIL
[37,11: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node xmlDoc]
expected: FAIL
[37,12: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node xmlElement]
expected: FAIL
[37,12: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node xmlElement]
expected: FAIL
[37,13: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node detachedTextNode]
expected: FAIL
[37,13: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node detachedTextNode]
expected: FAIL
[37,14: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node foreignTextNode]
expected: FAIL
[37,14: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node foreignTextNode]
expected: FAIL
[37,15: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node processingInstruction]
expected: FAIL
[37,15: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node processingInstruction]
expected: FAIL
[37,16: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node detachedProcessingInstruction]
expected: FAIL
[37,16: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node detachedProcessingInstruction]
expected: FAIL
[37,17: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node comment]
expected: FAIL
[37,17: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node comment]
expected: FAIL
[37,18: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node detachedComment]
expected: FAIL
[37,18: resulting range position for range [processingInstruction, 0, processingInstruction, 4\], node detachedComment]
expected: FAIL
[37,19: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node docfrag]
expected: FAIL
[37,20: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node doctype]
expected: FAIL
[37,21: resulting DOM for range [processingInstruction, 0, processingInstruction, 4\], node foreignDoctype]
expected: FAIL

View file

@ -0,0 +1,5 @@
[NodeIterator.html]
type: testharness
[createNodeIterator() with undefined as arguments]
expected: FAIL

View file

@ -0,0 +1,5 @@
[toDataURL.jpg.html]
type: testharness
[toDataURL with image/jpg is invalid type hence returns a PNG]
expected: FAIL

View file

@ -1 +1 @@
78455ec033c6116732a8f43b909093b7d7732779
84c4a26e4d05015da4cbbf1f120b317a23bec0b4

View file

@ -483,6 +483,16 @@
var data = canvas.toDataURL('image/png');
@assert data =~ /^data:image\/png[;,]/;
- name: toDataURL.jpg
desc: toDataURL with image/jpg is invalid type hence returns a PNG
testing:
- toDataURL.jpg
- toDataURL.witharguments
code: |
var data = canvas.toDataURL('image/jpg');
@assert data =~ /^data:image\/png[;,]/;
- name: toDataURL.bogustype
desc: toDataURL with a syntactically invalid type returns a PNG
testing:

View file

@ -29,18 +29,18 @@
var cursor = e.target.result;
assert_equals(cursor.value, "data", "prequisite cursor.value");
assert_object_equals(cursor.key, key, 'key');
assert_key_equals(cursor.key, key, 'key');
assert_readonly(cursor, 'key');
if (key instanceof Array) {
cursor.key.push("new");
key.push("new");
assert_object_equals(cursor.key, key, 'key after array push');
assert_key_equals(cursor.key, key, 'key after array push');
// But we can not change key (like readonly, just a bit different)
cursor.key = 10;
assert_object_equals(cursor.key, key, 'key after assignment');
assert_key_equals(cursor.key, key, 'key after assignment');
}
t.done();

View file

@ -33,18 +33,18 @@
assert_equals(cursor.value, "data", "prequisite cursor.value");
assert_equals(cursor.key, "data", "prequisite cursor.key");
assert_object_equals(cursor.primaryKey, key, 'primaryKey');
assert_key_equals(cursor.primaryKey, key, 'primaryKey');
assert_readonly(cursor, 'primaryKey');
if (key instanceof Array) {
cursor.primaryKey.push("new");
key.push("new");
assert_object_equals(cursor.primaryKey, key, 'primaryKey after array push');
assert_key_equals(cursor.primaryKey, key, 'primaryKey after array push');
// But we can not change key (like readonly, just a bit different)
cursor.key = 10;
assert_object_equals(cursor.primaryKey, key, 'key after assignment');
assert_key_equals(cursor.primaryKey, key, 'key after assignment');
}
t.done();

View file

@ -33,7 +33,7 @@ open_rq.onupgradeneeded = function(e) {
}
open_rq.onsuccess = function(e) {
assert_object_equals(keys, [5, 6, 1], "keys");
assert_array_equals(keys, [5, 6, 1], "keys");
t.done();
}

View file

@ -44,7 +44,7 @@
idx.getKey('Bobby').onsuccess = this.step_func(function(e) {
gotten_keys.push(e.target.result)
assert_object_equals(gotten_keys, expected_keys);
assert_array_equals(gotten_keys, expected_keys);
this.done();
});
}

View file

@ -42,13 +42,13 @@
open_rq.onsuccess = function(e) {
log("open_rq.success")(e);
assert_object_equals(events, [ "rq_add1.success",
"rq_add2.error: ConstraintError",
"rq_add3.success",
assert_array_equals(events, [ "rq_add1.success",
"rq_add2.error: ConstraintError",
"rq_add3.success",
"transaction.complete",
"transaction.complete",
"open_rq.success" ],
"open_rq.success" ],
"events");
t.done();
}

View file

@ -47,17 +47,17 @@
open_rq.onerror = function(e) {
log("open_rq.error")(e);
assert_object_equals(events, [ "rq_add1.success",
"rq_add2.success",
assert_array_equals(events, [ "rq_add1.success",
"rq_add2.success",
"rq_add3.error: AbortError",
"transaction.error: AbortError",
"db.error: AbortError",
"rq_add3.error: AbortError",
"transaction.error: AbortError",
"db.error: AbortError",
"transaction.abort: ConstraintError",
"db.abort: ConstraintError",
"transaction.abort: ConstraintError",
"db.abort: ConstraintError",
"open_rq.error: AbortError" ],
"open_rq.error: AbortError" ],
"events");
t.done();
}

View file

@ -49,20 +49,20 @@
open_rq.onerror = function(e) {
log("open_rq.error")(e);
assert_object_equals(events, [ "rq_add1.success",
assert_array_equals(events, [ "rq_add1.success",
"rq_add2.error: ConstraintError",
"transaction.error: ConstraintError",
"db.error: ConstraintError",
"rq_add2.error: ConstraintError",
"transaction.error: ConstraintError",
"db.error: ConstraintError",
"rq_add3.error: AbortError",
"transaction.error: AbortError",
"db.error: AbortError",
"rq_add3.error: AbortError",
"transaction.error: AbortError",
"db.error: AbortError",
"transaction.abort: ConstraintError",
"db.abort: ConstraintError",
"transaction.abort: ConstraintError",
"db.abort: ConstraintError",
"open_rq.error: AbortError" ],
"open_rq.error: AbortError" ],
"events");
t.done();
}

View file

@ -38,7 +38,7 @@
});
idx.get(ar).onsuccess = t.step_func(function(e) {
assert_equals(e.target.result.key, 'array', 'key');
assert_object_equals(e.target.result.i, ar, 'array is the same');
assert_array_equals(e.target.result.i, ar, 'array is the same');
});
idx.get(num).onsuccess = t.step_func(function(e) {
assert_equals(e.target.result.key, 'number', 'key');

View file

@ -35,7 +35,8 @@
.objectStore("store2")
.get(['v', key])
rq.onsuccess = t.step_func(function(e) {
assert_object_equals(e.target.result, { x: 'v', keypath: key })
assert_equals(e.target.result.x, 'v');
assert_key_equals(e.target.result.keypath, key);
t.done()
})
})

View file

@ -62,10 +62,7 @@
}
else {
assert_equals(errors, 2, "expected ConstraintError's");
assert_equals(actual_keys.length, expected.length, "array length");
assert_object_equals(actual_keys, expected, "keygenerator array");
assert_array_equals(actual_keys, expected, "keygenerator array");
t.done();
}
});

View file

@ -58,7 +58,7 @@
}
else {
assert_true(overflow_error_fired, "error fired on 'current number' overflow");
assert_object_equals(actual_keys, expected_keys, "keygenerator array");
assert_array_equals(actual_keys, expected_keys, "keygenerator array");
t.done();
}

View file

@ -43,9 +43,7 @@
cursor.continue();
}
else {
assert_equals(actual_keys.length, expected_keys.length, "array length");
assert_object_equals(actual_keys, expected_keys, "keygenerator array");
assert_key_equals(actual_keys, expected_keys, "keygenerator array");
t.done();
}
});

View file

@ -45,11 +45,11 @@
var cursor = e.target.result;
if (cursor) {
actual_keys.push(cursor.key.valueOf());
actual_keys.push(cursor.key);
cursor.continue();
}
else {
assert_object_equals(actual_keys, expected, "keyorder array");
assert_key_equals(actual_keys, expected, "keyorder array");
assert_equals(actual_keys.length, expected.length, "array length");
t.done();
@ -60,12 +60,7 @@
// The IDBKey.cmp test
test(function () {
var sorted = unsorted.slice(0).sort(function(a, b) { return indexedDB.cmp(a, b)});
for (var i in sorted)
if (typeof sorted[i] === "object" && 'valueOf' in sorted[i])
sorted[i] = sorted[i].valueOf();
assert_object_equals(sorted, expected, "sorted array");
assert_key_equals(sorted, expected, "sorted array");
}, "IDBKey.cmp sorted - " + desc);
}
@ -84,16 +79,16 @@
keysort('float < Date',
[ now, 0, 9999999999999, -0.22 ],
[ -0.22, 0, 9999999999999, now.valueOf() ]);
[ -0.22, 0, 9999999999999, now ]);
keysort('float < Date < String < Array',
[ [], "", now, [0], "-1", 0, 9999999999999, ],
[ 0, 9999999999999, now.valueOf(), "", "-1", [], [0] ]);
[ 0, 9999999999999, now, "", "-1", [], [0] ]);
keysort('Date(1 sec ago) < Date(now) < Date(1 minute in future)',
[ now, one_sec_ago, one_min_future ],
[ one_sec_ago.valueOf(), now.valueOf(), one_min_future.valueOf() ]);
[ one_sec_ago, now, one_min_future ]);
keysort('-1.1 < 1 < 1.01337 < 1.013373 < 2',
[ 1.013373, 2, 1.01337, -1.1, 1 ],
@ -157,12 +152,12 @@
1,
2.55,
Infinity,
one_sec_ago.valueOf(),
now.valueOf(),
one_sec_ago,
now,
"test",
[],
[0 ,2, "c"],
[0, now.valueOf()],
[0, now],
[0, "b", "c"],
[0, []],
[0, [], 3],

View file

@ -41,9 +41,7 @@
cursor.continue();
}
else {
assert_equals(actual_keys.length, expected_keys.length, "array length");
assert_object_equals(actual_keys, expected_keys, "keyorder array");
assert_key_equals(actual_keys, expected_keys, "keyorder array");
t.done();
}
});

View file

@ -39,9 +39,7 @@
actual_keys.push(cursor.key.valueOf());
cursor.continue();
} else {
assert_equals(actual_keys.length, expected_keys.length, "array length");
assert_object_equals(actual_keys, expected_keys, "keyorder array");
assert_array_equals(actual_keys, expected_keys, "keyorder array");
t.done();
}
});
@ -63,4 +61,3 @@
</script>
<div id=log></log>

View file

@ -29,20 +29,20 @@
open_rq.onsuccess = function(e) {
log("open_rq.success")(e);
assert_object_equals(events, [
"capture db.success",
"capture txn.success",
"capture rq1.success",
"bubble rq1.success",
assert_array_equals(events, [
"capture db.success",
"capture txn.success",
"capture rq1.success",
"bubble rq1.success",
"capture db.error: ConstraintError",
"capture txn.error: ConstraintError",
"capture rq2.error: ConstraintError",
"bubble rq2.error: ConstraintError",
"bubble txn.error: ConstraintError",
"bubble db.error: ConstraintError",
"capture db.error: ConstraintError",
"capture txn.error: ConstraintError",
"capture rq2.error: ConstraintError",
"bubble rq2.error: ConstraintError",
"bubble txn.error: ConstraintError",
"bubble db.error: ConstraintError",
"open_rq.success"
"open_rq.success"
],
"events");
this.done();

View file

@ -120,3 +120,7 @@ function createdb_for_multiple_tests(dbname, version) {
return rq_open;
}
function assert_key_equals(actual, expected, description) {
assert_equals(indexedDB.cmp(actual, expected), 0, description);
}

View file

@ -50,18 +50,18 @@
.addEventListener("success", log("complete2_get.success"))
txn.oncomplete = this.step_func(function(e) {
assert_object_equals(events, [
"versionchange_add.success: 1",
"versionchange_count.success: 0",
"versionchange_add2.success: 2",
"versionchange_txn.complete",
assert_array_equals(events, [
"versionchange_add.success: 1",
"versionchange_count.success: 0",
"versionchange_add2.success: 2",
"versionchange_txn.complete",
"open_rq.success: [object IDBDatabase]",
"open_rq.success: [object IDBDatabase]",
"complete_count.success: 2",
"complete2_get.success: 1",
],
"events")
"complete_count.success: 2",
"complete2_get.success: 1",
],
"events")
this.done()
})
}

View file

@ -23,8 +23,6 @@ open_rq.onupgradeneeded = function(e) {
os.put({ os: "os" + i, k: i});
os.add({ os: "os" + i });
}
// assert_object_equals(db.objectStoreNames, ["os1", "os2", "os3", "os4", "os5" ], "objectStores");
}
open_rq.onsuccess = function(e) {
@ -67,22 +65,22 @@ function finish() {
if (--finish_to_go)
return;
assert_object_equals(keys['txn'], [
"os1: 1",
"os3: 1",
"os1: 2",
"os2: 3",
"os2: 1", "os2: 1", "os2: 1",
"os1: 2",
], 'transaction keys');
assert_array_equals(keys['txn'], [
"os1: 1",
"os3: 1",
"os1: 2",
"os2: 3",
"os2: 1", "os2: 1", "os2: 1",
"os1: 2",
], 'transaction keys');
assert_object_equals(keys['txn2'], [
"os4: 1", "os4: 5", "os4: 4", "os3: 1",
"os4: 1", "os4: 5", "os4: 4", "os3: 1",
"os4: 1", "os4: 5", "os4: 4", "os3: 1",
"os1: 2",
"os4: 5",
], 'transaction 2 keys');
assert_array_equals(keys['txn2'], [
"os4: 1", "os4: 5", "os4: 4", "os3: 1",
"os4: 1", "os4: 5", "os4: 4", "os3: 1",
"os4: 1", "os4: 5", "os4: 4", "os3: 1",
"os1: 2",
"os4: 5",
], 'transaction 2 keys');
t.done();
}

View file

@ -37,20 +37,20 @@
open_rq.onsuccess = function(e) {
log("open_rq.success")(e);
assert_object_equals(events, [
"capture db.success",
"capture txn.success",
"capture rq1.success",
"bubble rq1.success",
assert_array_equals(events, [
"capture db.success",
"capture txn.success",
"capture rq1.success",
"bubble rq1.success",
"capture db.error: ConstraintError",
"capture txn.error: ConstraintError",
"capture rq2.error: ConstraintError",
"bubble rq2.error: ConstraintError",
"bubble txn.error: ConstraintError",
"bubble db.error: ConstraintError",
"capture db.error: ConstraintError",
"capture txn.error: ConstraintError",
"capture rq2.error: ConstraintError",
"bubble rq2.error: ConstraintError",
"bubble txn.error: ConstraintError",
"bubble db.error: ConstraintError",
"open_rq.success",
"open_rq.success",
],
"events");
this.done();

View file

@ -9,6 +9,5 @@
following::ol/li[3] following::ol/li[4]">
<div id="log"></div>
<script>
setup({ explicit_done: true })
test_withCredentials(false)
</script>

View file

@ -27,8 +27,7 @@ function test_withCredentials(worker) {
}
}, "setting on synchronous XHR")
async_test("setting withCredentials when not in UNSENT, OPENED state").step(function() {
this.add_cleanup(done)
async_test(function() {
var client = new XMLHttpRequest()
client.open("GET", "resources/delay.py?ms=1000")
client.send()
@ -39,5 +38,11 @@ function test_withCredentials(worker) {
this.done()
}
})
})
}, "setting withCredentials when not in UNSENT, OPENED state (asynchronous)")
test(function() {
var client = new XMLHttpRequest()
client.open("GET", "resources/delay.py?ms=1000", false)
assert_throws("InvalidStateError", function() { client.withCredentials = true })
}, "setting withCredentials when in DONE state (synchronous)")
}

View file

@ -1,3 +1,4 @@
importScripts("/resources/testharness.js")
importScripts("XMLHttpRequest-withCredentials.js")
test_withCredentials(true);
done()

View file

@ -0,0 +1,27 @@
<!DOCTYPE html>
<html>
<head>
<title>XMLHttpRequest: setRequestHeader() - header value with whitespace</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method" data-tested-assertations="/following::ol/li[4]/p[contains(@class,'note')] /following::ol/li[6]" />
</head>
<body>
<div id="log"></div>
<script>
function request(value) {
test(function() {
var client = new XMLHttpRequest()
client.open("POST", "resources/inspect-headers.py?filter_name=X-Empty", false)
client.setRequestHeader('X-Empty', value)
client.send(null)
assert_equals(client.responseText, 'x-empty: '+ String(value.trim()).toLowerCase()+'\n' )
}, document.title + " (" + value + ")")
}
request(" ")
request(" t")
request("t ")
request(" t ")
</script>
</body>
</html>

View file

@ -19,6 +19,8 @@
}
try_value("t\rt")
try_value("t\nt")
try_value("t\bt");
try_value("\x7f");
try_value("テスト")
test(function() {

View file

@ -0,0 +1,27 @@
<!DOCTYPE html>
<html>
<head>
<title>XMLHttpRequest: setRequestHeader() - Content-Type header</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method" data-tested-assertations="/following::ol/li[4]/p[contains(@class,'note')] /following::ol/li[6]" />
</head>
<body>
<div id="log"></div>
<script>
function request(value) {
test(function() {
var client = new XMLHttpRequest()
client.open("POST", "resources/inspect-headers.py?filter_name=Content-Type", false)
client.setRequestHeader('Content-Type', value)
client.send("")
assert_equals(client.responseText, 'content-type: '+ String(value ? value.trim() : value).toLowerCase()+'\n' )
}, document.title + " (" + value + ")")
}
request("")
request(" ")
request(null)
request(undefined)
</script>
</body>
</html>

View file

@ -13,7 +13,6 @@ base-uri http://www1.{{host}}:{{ports[http][0]}}; script-src 'self' 'unsafe-inli
-->
<base href="http://www1.{{host}}:{{ports[http][0]}}/">
<script>
console.info('Check that base URIs can be set if they do not violate the page\'s policy.');
test(function() {
assert_equals(document.baseURI, 'http://www1.{{host}}:{{ports[http][0]}}/');
log("TEST COMPLETE")
@ -23,6 +22,7 @@ base-uri http://www1.{{host}}:{{ports[http][0]}}; script-src 'self' 'unsafe-inli
</head>
<body>
<p>Check that base URIs can be set if they do not violate the page's policy.</p>
<div id="log"></div>
<script async defer src="./content-security-policy/support/checkReport.sub.js?reportExists=false"></script>
</body>

View file

@ -13,7 +13,6 @@
base-uri 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script>
console.info('Check that base URIs cannot be set if they violate the page\'s policy.');
var base = document.createElement('base');
base.href = 'http://www1.{{host}}:{{ports[http][0]}}/';
document.head.appendChild(base);
@ -26,6 +25,7 @@ base-uri 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
</head>
<body>
<p>Check that base URIs cannot be set if they violate the page's policy.</p>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=base-uri%20&apos;self&apos;"></script>
</body>

View file

@ -15,13 +15,13 @@ img-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
<body>
<script>
console.info('Check that a SecurityPolicyViolationEvent strips detail from cross-origin blocked URLs.');
var img = document.createElement('img');
img.src = 'http://{{host}}:{{ports[http][0]}}/security/resources/abe.png';
document.body.appendChild(img);
log("TEST COMPLETE");
</script>
<p>Check that a SecurityPolicyViolationEvent strips detail from cross-origin blocked URLs.</p>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=img-src%20&apos;none&apos;"></script>
</body>

View file

@ -15,13 +15,13 @@ img-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
<body>
<script>
console.info('Check that a SecurityPolicyViolationEvent is fired upon blocking an image injected via script.');
var script = document.createElement('script');
script.src = '../support/inject-image.js';
document.body.appendChild(script);
log("TEST COMPLETE");
</script>
<p>Check that a SecurityPolicyViolationEvent is fired upon blocking an image injected via script.</p>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=img-src%20&apos;none&apos;"></script>
</body>

View file

@ -15,7 +15,6 @@ img-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
<body>
<script>
console.info('Check that a SecurityPolicyViolationEvent is fired upon blocking an image.');
var img = document.createElement('img');
img.src = '../support/fail.png';
img.onerror = function() {
@ -27,6 +26,7 @@ img-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
document.body.appendChild(img);
</script>
<p>Check that a SecurityPolicyViolationEvent is fired upon blocking an image.</p>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=img-src%20&apos;none&apos;"></script>
</body>

View file

@ -36,7 +36,6 @@ style-src 'self' nonce-noncynonce' 'nonce-noncy+/=nonce'; script-src 'self' 'uns
<p id="test1">This text should be green.</p>
<p id="test2">This text should also be green.</p>
<script>
console.info("Style correctly whitelisted via a 'nonce-*' expression in 'style-src' should be applied to the page.");
var el = document.querySelector('#test1');
test(function() {
assert_equals(window.getComputedStyle(el).color, "rgb(0, 128, 0)")
@ -47,6 +46,7 @@ style-src 'self' nonce-noncynonce' 'nonce-noncy+/=nonce'; script-src 'self' 'uns
});
</script>
<p>Style correctly whitelisted via a 'nonce-*' expression in 'style-src' should be applied to the page.</p>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=style-src%20&apos;nonce-noncynonce&apos;%20&apos;nonce-noncy+/=nonce&apos;"></script>
</body>

View file

@ -24,13 +24,13 @@ style-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
<body>
<p id="test">This text should be green.</p>
<script>
console.info("Style that does not match a 'nonce-*' expression in 'style-src' should not be applied to the page.");
var el = document.querySelector('#test');
test(function() {
assert_equals(window.getComputedStyle(el).color, "rgb(0, 128, 0)")
});
</script>
<p>Style that does not match a 'nonce-*' expression in 'style-src' should not be applied to the page.</p>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=style-src%20&apos;self&apos;"></script>
</body>

View file

@ -17,8 +17,8 @@ Content-Security-Policy: img-src 'none'
<body>
This test checks that we enforce all the supplied policies. This test passe if it doesn&apos;t alert fail and if the style doesn&apos;t apply.
Check that a SecurityPolicyViolationEvent is fired upon blocking an image.
<script>
console.info('Check that a SecurityPolicyViolationEvent is fired upon blocking an image.');
var img = document.createElement('img');
img.src = '../support/fail.png';
img.onerror = function() {

View file

@ -14,7 +14,6 @@ connect-src 'self' http://{{host}}:{{ports[http][0]}}; script-src 'self' 'unsafe
</head>
<body>
<pre id="console"></pre>
<script>
try {
var es = navigator.sendBeacon("http://{{host}}:{{ports[http][0]}}/cors/resources/status.py");

View file

@ -14,7 +14,6 @@ connect-src 'self' http://{{host}}:{{ports[http][0]}}; script-src 'self' 'unsafe
</head>
<body>
<pre id="console"></pre>
<script>
try {
var es = navigator.sendBeacon("http://www1.{{host}}:{{ports[http][0]}}/security/contentSecurityPolicy/echo-report.php");

View file

@ -16,8 +16,8 @@ connect-src 'self'; script-src 'self' 'unsafe-inline';
<body>
<p>The beacon should not follow the redirect to http://www1.{{host}}:{{ports[http][0]}}/content-security-policy/support/fail.png and send a CSP violation report.</p>
<p>Verify that a CSP connect-src directive blocks redirects.</p>
<script>
console.info("Verify that a CSP connect-src directive blocks redirects.");
navigator.sendBeacon(
"/common/redirect.py?location=http://www1.{{host}}:{{ports[http][0]}}/content-security-policy/support/fail.png",
"ping");

View file

@ -14,7 +14,6 @@ connect-src 'self' http://{{host}}:{{ports[http][0]}}; script-src 'self' 'unsafe
</head>
<body>
<pre id="console"></pre>
<script>
try {
var es = new EventSource("http://{{host}}:{{ports[http][0]}}/content-security-policy/blink-contrib/resources/simple-event-stream");

View file

@ -14,7 +14,6 @@ connect-src 'self'; script-src 'self' 'unsafe-inline';
</head>
<body>
<pre id="console"></pre>
<script>
try {
var es = new EventSource("http://www1.{{host}}:{{ports[http][0]}}/content-security-policy/blink-contrib/resources/simple-event-stream");

View file

@ -14,7 +14,6 @@ connect-src 'self' ws://127.0.0.1:8880; script-src 'self' 'unsafe-inline';
</head>
<body>
<pre id="console"></pre>
<script>
try {
var ws = new WebSocket("ws://127.0.0.1:8880/echo");

View file

@ -14,7 +14,6 @@ connect-src 'self' ws://127.0.0.1:8880; script-src 'self' 'unsafe-inline';
</head>
<body>
<pre id="console"></pre>
<script>
try {
var ws = new WebSocket("ws://localhost:8880/echo");

View file

@ -14,7 +14,6 @@ connect-src 'self' http://{{host}}:{{ports[http][0]}}; script-src 'self' 'unsafe
</head>
<body>
<pre id="console"></pre>
<script>
try {
var xhr = new XMLHttpRequest;

View file

@ -14,7 +14,6 @@ connect-src 'self'; script-src 'self' 'unsafe-inline';
</head>
<body>
<pre id="console"></pre>
<script>
try {
var xhr = new XMLHttpRequest;

View file

@ -40,10 +40,11 @@
<!-- enforcing policy:
frame-src 'self' http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script></script>
<p>
IFrames blocked by CSP should generate a 'load' event, regardless of blocked state. This means they appear to be normal cross-origin loads, thereby not leaking URL information directly to JS.
</p>
<script>
window.wasPostTestScriptParsed = true;
console.info("IFrames blocked by CSP should generate a 'load' event, regardless of blocked state. This means they appear to be normal cross-origin loads, thereby not leaking URL information directly to JS.");
var loads = 0;
function loadEvent() {

View file

@ -11,10 +11,8 @@
<!-- enforcing policy:
style-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script></script>
<script>
window.onload = function() {
console.info("This test ensures that styles can be set by object.cloneNode()");
window.nodes = document.getElementById('nodes');
window.node1 = document.getElementById('node1');
window.node1.style.background = "yellow";
@ -76,7 +74,6 @@ style-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
test(function() {
assert_equals(ops.style.background, "")
});
console.info("getComputedStyle(clonedOps).background: " + window.getComputedStyle(ops).background);
test(function() {
assert_equals(ops.style.color, "red")
});
@ -92,7 +89,6 @@ style-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
test(function() {
assert_equals(window.getComputedStyle(clonedOps).color, window.getComputedStyle(ops).color)
});
console.info("getComputedStyle(violetOps).background: " + window.getComputedStyle(violetOps).background);
test(function() {
assert_equals(window.getComputedStyle(ops).background, window.getComputedStyle(violetOps).background)
});
@ -111,6 +107,9 @@ style-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self';
</head>
<body>
<p>
This test ensures that styles can be set by object.cloneNode()
</p>
<div id="nodes">
This is a div (nodes)
<div id="node1"> This is a div. (node 1 or 2)</div>

View file

@ -20,7 +20,6 @@ object-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
var allTypes = "";
var appletMimeType = "application/x-java-applet";
for (var i = 0; i < len; i++) {
console.log("Found navigator.mimeType " + navigator.mimeTypes[i].type);
allTypes += navigator.mimeTypes[i].type + ';';
}
if (allTypes.indexOf(appletMimeType) == -1) {

View file

@ -20,7 +20,6 @@ object-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
var allTypes = "";
var appletMimeType = "application/x-java-applet";
for (var i = 0; i < len; i++) {
console.log("Found navigator.mimeType " + navigator.mimeTypes[i].type);
allTypes += navigator.mimeTypes[i].type + ';';
}
if (allTypes.indexOf(appletMimeType) == -1) {

View file

@ -20,7 +20,6 @@ object-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
var allTypes = "";
var appletMimeType = "application/x-java-applet";
for (var i = 0; i < len; i++) {
console.log("Found navigator.mimeType " + navigator.mimeTypes[i].type);
allTypes += navigator.mimeTypes[i].type + ';';
}
if (allTypes.indexOf(appletMimeType) == -1) {

View file

@ -20,7 +20,6 @@ object-src 'none'; script-src 'self' 'unsafe-inline'; connect-src 'self';
var allTypes = "";
var appletMimeType = "application/x-java-applet";
for (var i = 0; i < len; i++) {
console.log("Found navigator.mimeType " + navigator.mimeTypes[i].type);
allTypes += navigator.mimeTypes[i].type + ';';
}
if (allTypes.indexOf(appletMimeType) == -1) {

View file

@ -1,27 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<!-- Programmatically converted from a WebKit Reftest, please forgive resulting idiosyncracies.-->
<title>object-src-param-code-blocked</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../support/logTest.sub.js?logs=[]"></script>
<script src="../support/alertAssert.sub.js?alerts=[]"></script>
<!-- enforcing policy:
object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script src="resources/object-src-param.js"></script>
</head>
<body>
This test passes if there is a CSP violation saying the plugin was blocked.
<script>
appendObjectElement('code');
</script>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=object-src%20http://localhost:8080"></script>
</body>
</html>

View file

@ -1,6 +0,0 @@
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0, false
Pragma: no-cache
Set-Cookie: object-src-param-code-blocked={{$id:uuid()}}; Path=/content-security-policy/blink-contrib
Content-Security-Policy: object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self'; report-uri /content-security-policy/support/report.py?op=put&reportID={{$id}}

View file

@ -1,27 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<!-- Programmatically converted from a WebKit Reftest, please forgive resulting idiosyncracies.-->
<title>object-src-param-movie-blocked</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../support/logTest.sub.js?logs=[]"></script>
<script src="../support/alertAssert.sub.js?alerts=[]"></script>
<!-- enforcing policy:
object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script src="resources/object-src-param.js"></script>
</head>
<body>
This test passes if there is a CSP violation saying the plugin was blocked.
<script>
appendObjectElement('movie');
</script>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=object-src%20http://localhost:8080"></script>
</body>
</html>

View file

@ -1,6 +0,0 @@
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0, false
Pragma: no-cache
Set-Cookie: object-src-param-movie-blocked={{$id:uuid()}}; Path=/content-security-policy/blink-contrib
Content-Security-Policy: object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self'; report-uri /content-security-policy/support/report.py?op=put&reportID={{$id}}

View file

@ -1,27 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<!-- Programmatically converted from a WebKit Reftest, please forgive resulting idiosyncracies.-->
<title>object-src-param-src-blocked</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../support/logTest.sub.js?logs=[]"></script>
<script src="../support/alertAssert.sub.js?alerts=[]"></script>
<!-- enforcing policy:
object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script src="resources/object-src-param.js"></script>
</head>
<body>
This test passes if there is a CSP violation saying the plugin was blocked.
<script>
appendObjectElement('src');
</script>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=object-src%20http://localhost:8080"></script>
</body>
</html>

View file

@ -1,6 +0,0 @@
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0, false
Pragma: no-cache
Set-Cookie: object-src-param-src-blocked={{$id:uuid()}}; Path=/content-security-policy/blink-contrib
Content-Security-Policy: object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self'; report-uri /content-security-policy/support/report.py?op=put&reportID={{$id}}

View file

@ -1,27 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<!-- Programmatically converted from a WebKit Reftest, please forgive resulting idiosyncracies.-->
<title>object-src-param-url-blocked</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../support/logTest.sub.js?logs=[]"></script>
<script src="../support/alertAssert.sub.js?alerts=[]"></script>
<!-- enforcing policy:
object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self';
-->
<script src="resources/object-src-param.js"></script>
</head>
<body>
This test passes if there is a CSP violation saying the plugin was blocked.
<script>
appendObjectElement('url');
</script>
<div id="log"></div>
<script async defer src="../support/checkReport.sub.js?reportExists=true&amp;reportField=violated-directive&amp;reportValue=object-src%20http://localhost:8080"></script>
</body>
</html>

View file

@ -1,6 +0,0 @@
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0, false
Pragma: no-cache
Set-Cookie: object-src-param-url-blocked={{$id:uuid()}}; Path=/content-security-policy/blink-contrib
Content-Security-Policy: object-src http://localhost:8080; script-src 'self' 'unsafe-inline'; connect-src 'self'; report-uri /content-security-policy/support/report.py?op=put&reportID={{$id}}

View file

@ -1,29 +0,0 @@
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
function appendObjectElement(type) {
window.onload = function() {
var o = document.createElement('object');
o.setAttribute('type', 'application/x-webkit-test-netscape');
o.addEventListener('load', function() {
console.log('FAIL: The object should have been blocked.');
if (window.testRunner)
testRunner.notifyDone();
});
o.addEventListener('error', function() {
console.log('PASS: Error occurred, so load was correctly blocked.');
if (window.testRunner)
testRunner.notifyDone();
});
var p = document.createElement('param');
p.setAttribute('value', 'http://127.0.0.1:8080/plugins/resources/mock-plugin.pl?' + type);
p.setAttribute('name', type);
o.appendChild(p);
document.body.appendChild(o);
};
}

View file

@ -163,6 +163,7 @@ function setupRangeTests() {
"[detachedForeignComment, 0, detachedForeignComment, 1]",
"[detachedXmlComment, 2, detachedXmlComment, 6]",
"[docfrag, 0, docfrag, 0]",
"[processingInstruction, 0, processingInstruction, 4]",
];
testRanges = testRangesShort.concat([
@ -825,96 +826,213 @@ function myExtractContents(range) {
}
/**
* insertNode() implementation, following the spec. If an exception is
* supposed to be thrown, will return a string with the name (e.g.,
* "HIERARCHY_REQUEST_ERR") instead of a document fragment. It might also
* return an arbitrary human-readable string if a condition is hit that implies
* a spec bug.
* insertNode() implementation, following the spec. If an exception is meant
* to be thrown, will return a string with the expected exception name, for
* instance "HIERARCHY_REQUEST_ERR".
*/
function myInsertNode(range, node) {
// "If the detached flag is set, throw an "InvalidStateError" exception and
// terminate these steps."
//
// Assume that if accessing collapsed throws, it's detached.
try {
range.collapsed;
} catch (e) {
return "INVALID_STATE_ERR";
// "If range's start node is either a ProcessingInstruction or Comment
// node, or a Text node whose parent is null, throw an
// "HierarchyRequestError" exception and terminate these steps."
if (range.startContainer.nodeType == Node.PROCESSING_INSTRUCTION_NODE
|| range.startContainer.nodeType == Node.COMMENT_NODE
|| (range.startContainer.nodeType == Node.TEXT_NODE
&& !range.startContainer.parentNode)) {
return "HIERARCHY_REQUEST_ERR";
}
// "If start node is a Comment node, or a Text node whose parent is null,
// throw an "HierarchyRequestError" exception and terminate these steps."
if (range.startContainer.nodeType == Node.COMMENT_NODE
|| (range.startContainer.nodeType == Node.TEXT_NODE
&& !range.startContainer.parentNode)) {
return "HIERARCHY_REQUEST_ERR";
}
// "Let referenceNode be null."
var referenceNode = null;
// "If start node is a Text node, split it with offset context object's
// start offset, and let reference node be the result."
var referenceNode;
// "If range's start node is a Text node, set referenceNode to that Text node."
if (range.startContainer.nodeType == Node.TEXT_NODE) {
// We aren't testing how ranges vary under mutations, and browsers vary
// in how they mutate for splitText, so let's just force the correct
// way.
var start = [range.startContainer, range.startOffset];
var end = [range.endContainer, range.endOffset];
referenceNode = range.startContainer;
referenceNode = range.startContainer.splitText(range.startOffset);
if (start[0] == end[0]
&& end[1] > start[1]) {
end[0] = referenceNode;
end[1] -= start[1];
} else if (end[0] == start[0].parentNode
&& end[1] > indexOf(referenceNode)) {
end[1]++;
}
range.setStart(start[0], start[1]);
range.setEnd(end[0], end[1]);
// "Otherwise, let reference node be the child of start node whose index is
// start offset, or null if there is no such child."
// "Otherwise, set referenceNode to the child of start node whose index is
// start offset, and null if there is no such child."
} else {
referenceNode = range.startContainer.childNodes[range.startOffset];
if (typeof referenceNode == "undefined") {
if (range.startOffset < range.startContainer.childNodes.length) {
referenceNode = range.startContainer.childNodes[range.startOffset];
} else {
referenceNode = null;
}
}
// "If reference node is null, let parent be start node."
var parent_;
if (!referenceNode) {
parent_ = range.startContainer;
// "Let parent be range's start node if referenceNode is null, and
// referenceNode's parent otherwise."
var parent_ = referenceNode === null ? range.startContainer :
referenceNode.parentNode;
// "Otherwise, let parent be the parent of reference node."
} else {
parent_ = referenceNode.parentNode;
// "Ensure pre-insertion validity of node into parent before
// referenceNode."
var error = ensurePreInsertionValidity(node, parent_, referenceNode);
if (error) {
return error;
}
// "Let new offset be the index of reference node, or parent's length if
// reference node is null."
var newOffset = referenceNode ? indexOf(referenceNode) : nodeLength(parent_);
// "Add node's length to new offset, if node is a DocumentFragment.
// Otherwise add one to new offset."
newOffset += node.nodeType == Node.DOCUMENT_FRAGMENT_NODE
? nodeLength(node)
: 1;
// "Pre-insert node into parent before reference node."
try {
parent_.insertBefore(node, referenceNode);
} catch (e) {
return getDomExceptionName(e);
// "If range's start node is a Text node, set referenceNode to the result
// of splitting it with offset range's start offset."
if (range.startContainer.nodeType == Node.TEXT_NODE) {
referenceNode = range.startContainer.splitText(range.startOffset);
}
// "If start and end are the same, set end to (parent, new offset)."
if (range.collapsed) {
// "If node is referenceNode, set referenceNode to its next sibling."
if (node == referenceNode) {
referenceNode = referenceNode.nextSibling;
}
// "If node's parent is not null, remove node from its parent."
if (node.parentNode) {
node.parentNode.removeChild(node);
}
// "Let newOffset be parent's length if referenceNode is null, and
// referenceNode's index otherwise."
var newOffset = referenceNode === null ? nodeLength(parent_) :
indexOf(referenceNode);
// "Increase newOffset by node's length if node is a DocumentFragment node,
// and one otherwise."
newOffset += node.nodeType == Node.DOCUMENT_FRAGMENT_NODE ?
nodeLength(node) : 1;
// "Pre-insert node into parent before referenceNode."
parent_.insertBefore(node, referenceNode);
// "If range's start and end are the same, set range's end to (parent,
// newOffset)."
if (range.startContainer == range.endContainer
&& range.startOffset == range.endOffset) {
range.setEnd(parent_, newOffset);
}
}
// To make filter() calls more readable
function isElement(node) {
return node.nodeType == Node.ELEMENT_NODE;
}
function isText(node) {
return node.nodeType == Node.TEXT_NODE;
}
function isDoctype(node) {
return node.nodeType == Node.DOCUMENT_TYPE_NODE;
}
function ensurePreInsertionValidity(node, parent_, child) {
// "If parent is not a Document, DocumentFragment, or Element node, throw a
// HierarchyRequestError."
if (parent_.nodeType != Node.DOCUMENT_NODE
&& parent_.nodeType != Node.DOCUMENT_FRAGMENT_NODE
&& parent_.nodeType != Node.ELEMENT_NODE) {
return "HIERARCHY_REQUEST_ERR";
}
// "If node is a host-including inclusive ancestor of parent, throw a
// HierarchyRequestError."
//
// XXX Does not account for host
if (isInclusiveAncestor(node, parent_)) {
return "HIERARCHY_REQUEST_ERR";
}
// "If child is not null and its parent is not parent, throw a NotFoundError
// exception."
if (child && child.parentNode != parent_) {
return "NOT_FOUND_ERR";
}
// "If node is not a DocumentFragment, DocumentType, Element, Text,
// ProcessingInstruction, or Comment node, throw a HierarchyRequestError."
if (node.nodeType != Node.DOCUMENT_FRAGMENT_NODE
&& node.nodeType != Node.DOCUMENT_TYPE_NODE
&& node.nodeType != Node.ELEMENT_NODE
&& node.nodeType != Node.TEXT_NODE
&& node.nodeType != Node.PROCESSING_INSTRUCTION_NODE
&& node.nodeType != Node.COMMENT_NODE) {
return "HIERARCHY_REQUEST_ERR";
}
// "If either node is a Text node and parent is a document, or node is a
// doctype and parent is not a document, throw a HierarchyRequestError."
if ((node.nodeType == Node.TEXT_NODE
&& parent_.nodeType == Node.DOCUMENT_NODE)
|| (node.nodeType == Node.DOCUMENT_TYPE_NODE
&& parent_.nodeType != Node.DOCUMENT_NODE)) {
return "HIERARCHY_REQUEST_ERR";
}
// "If parent is a document, and any of the statements below, switched on
// node, are true, throw a HierarchyRequestError."
if (parent_.nodeType == Node.DOCUMENT_NODE) {
switch (node.nodeType) {
case Node.DOCUMENT_FRAGMENT_NODE:
// "If node has more than one element child or has a Text node
// child. Otherwise, if node has one element child and either
// parent has an element child, child is a doctype, or child is not
// null and a doctype is following child."
if ([].filter.call(node.childNodes, isElement).length > 1) {
return "HIERARCHY_REQUEST_ERR";
}
if ([].some.call(node.childNodes, isText)) {
return "HIERARCHY_REQUEST_ERR";
}
if ([].filter.call(node.childNodes, isElement).length == 1) {
if ([].some.call(parent_.childNodes, isElement)) {
return "HIERARCHY_REQUEST_ERR";
}
if (child && child.nodeType == Node.DOCUMENT_TYPE_NODE) {
return "HIERARCHY_REQUEST_ERR";
}
if (child && [].slice.call(parent_.childNodes, indexOf(child) + 1)
.filter(isDoctype)) {
return "HIERARCHY_REQUEST_ERR";
}
}
break;
case Node.ELEMENT_NODE:
// "parent has an element child, child is a doctype, or child is
// not null and a doctype is following child."
if ([].some.call(parent_.childNodes, isElement)) {
return "HIERARCHY_REQUEST_ERR";
}
if (child.nodeType == Node.DOCUMENT_TYPE_NODE) {
return "HIERARCHY_REQUEST_ERR";
}
if (child && [].slice.call(parent_.childNodes, indexOf(child) + 1)
.filter(isDoctype)) {
return "HIERARCHY_REQUEST_ERR";
}
break;
case Node.DOCUMENT_TYPE_NODE:
// "parent has a doctype child, an element is preceding child, or
// child is null and parent has an element child."
if ([].some.call(parent_.childNodes, isDoctype)) {
return "HIERARCHY_REQUEST_ERR";
}
if (child && [].slice.call(parent_.childNodes, 0, indexOf(child))
.some(isElement)) {
return "HIERARCHY_REQUEST_ERR";
}
if (!child && [].some.call(parent_.childNodes, isElement)) {
return "HIERARCHY_REQUEST_ERR";
}
break;
}
}
}
/**
* Asserts that two nodes are equal, in the sense of isEqualNode(). If they
* aren't, tries to print a relatively informative reason why not. TODO: Move
@ -927,8 +1045,7 @@ function assertNodesEqual(actual, expected, msg) {
while (actual && expected) {
assert_true(actual.nodeType === expected.nodeType
&& actual.nodeName === expected.nodeName
&& actual.nodeValue === expected.nodeValue
&& actual.childNodes.length === expected.childNodes.length,
&& actual.nodeValue === expected.nodeValue,
"First differing node: expected " + format_value(expected)
+ ", got " + format_value(actual) + " [" + msg + "]");
actual = nextNode(actual);

View file

@ -43,6 +43,17 @@ function testNode(create, type) {
assert_equals(node.substringData(4, 1), "")
}, type + ".substringData() with in-bounds offset")
test(function() {
var node = create()
assert_equals(node.data, "test")
assert_equals(node.substringData(0, 0), "")
assert_equals(node.substringData(1, 0), "")
assert_equals(node.substringData(2, 0), "")
assert_equals(node.substringData(3, 0), "")
assert_equals(node.substringData(4, 0), "")
}, type + ".substringData() with zero count")
test(function() {
var node = create()
assert_equals(node.data, "test")

View file

@ -9,6 +9,22 @@
<script>
"use strict";
function check_iter(iter, root, whatToShowValue) {
whatToShowValue = whatToShowValue === undefined ? 0xFFFFFFFF : whatToShowValue;
assert_equals(iter.toString(), '[object NodeIterator]', 'toString');
assert_equals(iter.root, root, 'root');
assert_equals(iter.whatToShow, whatToShowValue, 'whatToShow');
assert_equals(iter.filter, null, 'filter');
assert_equals(iter.referenceNode, root, 'referenceNode');
assert_equals(iter.pointerBeforeReferenceNode, true, 'pointerBeforeReferenceNode');
assert_readonly(iter, 'root');
assert_readonly(iter, 'whatToShow');
assert_readonly(iter, 'filter');
assert_readonly(iter, 'referenceNode');
assert_readonly(iter, 'pointerBeforeReferenceNode');
}
test(function() {
var iter = document.createNodeIterator(document);
iter.detach();
@ -17,10 +33,19 @@ test(function() {
test(function() {
var iter = document.createNodeIterator(document);
assert_equals(iter.whatToShow, 0xFFFFFFFF, "whatToShow");
assert_equals(iter.filter, null, "filter");
check_iter(iter, document);
}, "createNodeIterator() parameter defaults");
test(function() {
var iter = document.createNodeIterator(document, null, null);
check_iter(iter, document, 0);
}, "createNodeIterator() with null as arguments");
test(function() {
var iter = document.createNodeIterator(document, undefined, undefined);
check_iter(iter, document);
}, "createNodeIterator() with undefined as arguments");
test(function() {
var iter = document.createNodeIterator(document, NodeFilter.SHOW_ALL,
function() { throw {name: "failed"} });

View file

@ -37,11 +37,11 @@ test(function()
function filter(node)
{
if (node.id == "B1")
return /*NodeFilter.*/FILTER_SKIP;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_SKIP;
return NodeFilter.FILTER_ACCEPT;
}
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.currentNode, { type: Element, id: 'A1' });
@ -51,11 +51,11 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, {
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, {
acceptNode : function(node) {
if (node.id == "B1")
return /*NodeFilter.*/FILTER_SKIP;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_SKIP;
return NodeFilter.FILTER_ACCEPT;
}
});
assert_node(walker.currentNode, { type: Element, id: 'root' });
@ -67,7 +67,7 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, null);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, null);
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.currentNode, { type: Element, id: 'A1' });
@ -77,7 +77,7 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, undefined);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, undefined);
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.currentNode, { type: Element, id: 'A1' });
@ -87,7 +87,7 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, {});
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, {});
assert_throws(new TypeError(), function () { walker.firstChild(); });
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_throws(new TypeError(), function () { walker.nextNode(); });
@ -96,7 +96,7 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, { acceptNode: "foo" });
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, { acceptNode: "foo" });
assert_throws(new TypeError(), function () { walker.firstChild(); });
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_throws(new TypeError(), function () { walker.nextNode(); });
@ -105,9 +105,9 @@ test(function()
test(function()
{
var filter = function() { return /*NodeFilter.*/FILTER_ACCEPT; };
filter.acceptNode = function(node) { return /*NodeFilter.*/FILTER_SKIP; };
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var filter = function() { return NodeFilter.FILTER_ACCEPT; };
filter.acceptNode = function(node) { return NodeFilter.FILTER_SKIP; };
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.nextNode(), { type: Element, id: 'B1' });
}, 'Testing with function having acceptNode function');
@ -116,17 +116,17 @@ test(function()
{
var filter = {
acceptNode: function(node) {
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_ACCEPT;
}
};
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
}, 'Testing acceptNode callee');
test(function()
{
var test_error = { name: "test" };
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT,
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT,
function(node) {
throw test_error;
});
@ -139,7 +139,7 @@ test(function()
test(function()
{
var test_error = { name: "test" };
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT,
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT,
{
acceptNode : function(node) {
throw test_error;

View file

@ -70,13 +70,15 @@ function createSampleDOM()
return div;
}
function check_walker(walker, root)
function check_walker(walker, root, whatToShowValue)
{
assert_equals(walker.toString(), '[object TreeWalker]');
assert_equals(walker.root, root);
assert_equals(walker.whatToShow, 0xFFFFFFFF);
assert_equals(walker.filter, null);
assert_equals(walker.currentNode, root);
whatToShowValue = whatToShowValue === undefined ? 0xFFFFFFFF : whatToShowValue;
assert_equals(walker.toString(), '[object TreeWalker]', 'toString');
assert_equals(walker.root, root, 'root');
assert_equals(walker.whatToShow, whatToShowValue, 'whatToShow');
assert_equals(walker.filter, null, 'filter');
assert_equals(walker.currentNode, root, 'currentNode');
assert_readonly(walker, 'root');
assert_readonly(walker, 'whatToShow');
assert_readonly(walker, 'filter');
@ -89,6 +91,13 @@ test(function ()
check_walker(walker, root);
}, 'Construct a TreeWalker by document.createTreeWalker(root).');
test(function ()
{
var root = createSampleDOM();
var walker = document.createTreeWalker(root, null, null);
check_walker(walker, root, 0);
}, 'Construct a TreeWalker by document.createTreeWalker(root, null, null).');
test(function ()
{
var root = createSampleDOM();

View file

@ -26,7 +26,7 @@ var all = function(node) { return true; }
test(function()
{
var w = document.createTreeWalker(subTree, /*NodeFilter.*/SHOW_ELEMENT, all);
var w = document.createTreeWalker(subTree, NodeFilter.SHOW_ELEMENT, all);
assert_node(w.currentNode, { type: Element, id: 'subTree' });
assert_equals(w.parentNode(), null);
assert_node(w.currentNode, { type: Element, id: 'subTree' });
@ -35,8 +35,8 @@ test(function()
test(function()
{
var w = document.createTreeWalker(subTree,
/*NodeFilter.*/SHOW_ELEMENT
| /*NodeFilter.*/SHOW_COMMENT,
NodeFilter.SHOW_ELEMENT
| NodeFilter.SHOW_COMMENT,
all);
w.currentNode = document.documentElement;
assert_equals(w.parentNode(), null);
@ -63,7 +63,7 @@ test(function()
test(function()
{
var w = document.createTreeWalker(subTree, /*NodeFilter.*/SHOW_ELEMENT, all);
var w = document.createTreeWalker(subTree, NodeFilter.SHOW_ELEMENT, all);
w.currentNode = subTree.previousSibling;
assert_equals(w.nextNode(), subTree);
w.currentNode = document.getElementById("parent");

View file

@ -66,11 +66,11 @@ test(function()
function filter(node)
{
if (node.id == "C2")
return /*NodeFilter.*/FILTER_REJECT;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_REJECT;
return NodeFilter.FILTER_ACCEPT;
}
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.currentNode, { type: Element, id: 'A1' });

View file

@ -66,11 +66,11 @@ test(function()
function filter(node)
{
if (node.id == "B1")
return /*NodeFilter.*/FILTER_SKIP;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_SKIP;
return NodeFilter.FILTER_ACCEPT;
}
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
assert_node(walker.currentNode, { type: Element, id: 'root' });
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.currentNode, { type: Element, id: 'A1' });

View file

@ -45,24 +45,24 @@ setup(function() {
var rejectB1Filter = {
acceptNode: function(node) {
if (node.id == 'B1')
return /*NodeFilter.*/FILTER_REJECT;
return NodeFilter.FILTER_REJECT;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_ACCEPT;
}
}
var skipB2Filter = {
acceptNode: function(node) {
if (node.id == 'B2')
return /*NodeFilter.*/FILTER_SKIP;
return NodeFilter.FILTER_SKIP;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_ACCEPT;
}
}
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, rejectB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, rejectB1Filter);
assert_node(walker.nextNode(), { type: Element, id: 'A1' });
assert_node(walker.nextNode(), { type: Element, id: 'B2' });
assert_node(walker.nextNode(), { type: Element, id: 'B3' });
@ -70,14 +70,14 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, rejectB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, rejectB1Filter);
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.firstChild(), { type: Element, id: 'B2' });
}, 'Testing firstChild');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB2Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB2Filter);
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.firstChild(), { type: Element, id: 'B1' });
assert_node(walker.nextSibling(), { type: Element, id: 'B3' });
@ -85,21 +85,21 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, rejectB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, rejectB1Filter);
walker.currentNode = testElement.querySelectorAll('#C1')[0];
assert_node(walker.parentNode(), { type: Element, id: 'A1' });
}, 'Testing parentNode');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB2Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB2Filter);
walker.currentNode = testElement.querySelectorAll('#B3')[0];
assert_node(walker.previousSibling(), { type: Element, id: 'B1' });
}, 'Testing previousSibling');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, rejectB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, rejectB1Filter);
walker.currentNode = testElement.querySelectorAll('#B3')[0];
assert_node(walker.previousNode(), { type: Element, id: 'B2' });
assert_node(walker.previousNode(), { type: Element, id: 'A1' });

View file

@ -42,22 +42,22 @@ setup(function() {
var filter = {
acceptNode: function(node) {
if (node.className == 'keep')
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_ACCEPT;
return /*NodeFilter.*/FILTER_SKIP;
return NodeFilter.FILTER_SKIP;
}
}
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
assert_node(walker.firstChild(), { type: Element, id: 'B1' });
assert_node(walker.nextSibling(), { type: Element, id: 'B3' });
}, 'Testing nextSibling');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, filter);
walker.currentNode = testElement.querySelectorAll('#B3')[0];
assert_node(walker.previousSibling(), { type: Element, id: 'B1' });
}, 'Testing previousSibling');

View file

@ -45,24 +45,24 @@ setup(function() {
var skipB1Filter = {
acceptNode: function(node) {
if (node.id == 'B1')
return /*NodeFilter.*/FILTER_SKIP;
return NodeFilter.FILTER_SKIP;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_ACCEPT;
}
}
var skipB2Filter = {
acceptNode: function(node) {
if (node.id == 'B2')
return /*NodeFilter.*/FILTER_SKIP;
return NodeFilter.FILTER_SKIP;
return /*NodeFilter.*/FILTER_ACCEPT;
return NodeFilter.FILTER_ACCEPT;
}
}
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB1Filter);
assert_node(walker.nextNode(), { type: Element, id: 'A1' });
assert_node(walker.nextNode(), { type: Element, id: 'C1' });
assert_node(walker.nextNode(), { type: Element, id: 'B2' });
@ -71,14 +71,14 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB1Filter);
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.firstChild(), { type: Element, id: 'C1' });
}, 'Testing firstChild');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB2Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB2Filter);
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
assert_node(walker.firstChild(), { type: Element, id: 'B1' });
assert_node(walker.nextSibling(), { type: Element, id: 'B3' });
@ -86,21 +86,21 @@ test(function()
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB1Filter);
walker.currentNode = testElement.querySelectorAll('#C1')[0];
assert_node(walker.parentNode(), { type: Element, id: 'A1' });
}, 'Testing parentNode');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB2Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB2Filter);
walker.currentNode = testElement.querySelectorAll('#B3')[0];
assert_node(walker.previousSibling(), { type: Element, id: 'B1' });
}, 'Testing previousSibling');
test(function()
{
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
var walker = document.createTreeWalker(testElement, NodeFilter.SHOW_ELEMENT, skipB1Filter);
walker.currentNode = testElement.querySelectorAll('#B3')[0];
assert_node(walker.previousNode(), { type: Element, id: 'B2' });
assert_node(walker.previousNode(), { type: Element, id: 'C1' });

View file

@ -0,0 +1,298 @@
<!doctype html>
<title>TreeWalker tests</title>
<link rel="author" title="Aryeh Gregor" href=ayg@aryeh.name>
<meta name=timeout content=long>
<div id=log></div>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=../common.js></script>
<script>
"use strict";
// TODO .previousNode, .nextNode
function filterNode(node, whatToShow, filter) {
// "If active flag is set throw an "InvalidStateError"."
// Ignore active flag for these tests, we aren't calling recursively
// TODO Test me
// "Let n be node's nodeType attribute value minus 1."
var n = node.nodeType - 1;
// "If the nth bit (where 0 is the least significant bit) of whatToShow is
// not set, return FILTER_SKIP."
if (!(whatToShow & (1 << n))) {
return NodeFilter.FILTER_SKIP;
}
// "If filter is null, return FILTER_ACCEPT."
if (!filter) {
return NodeFilter.FILTER_ACCEPT;
}
// "Set the active flag."
//
// "Let result be the return value of invoking filter."
//
// "Unset the active flag."
//
// "If an exception was thrown, re-throw the exception."
// TODO Test me
//
// "Return result."
return filter(node);
}
function testTraverseChildren(type, walker, root, whatToShow, filter) {
// TODO We don't test .currentNode other than the root
walker.currentNode = root;
assert_equals(walker.currentNode, root, "Setting .currentNode");
var expectedReturn = null;
var expectedCurrentNode = root;
// "To traverse children of type type, run these steps:
//
// "Let node be the value of the currentNode attribute."
var node = walker.currentNode;
// "Set node to node's first child if type is first, and node's last child
// if type is last."
node = type == "first" ? node.firstChild : node.lastChild;
// "Main: While node is not null, run these substeps:"
while (node) {
// "Filter node and let result be the return value."
var result = filterNode(node, whatToShow, filter);
// "If result is FILTER_ACCEPT, then set the currentNode attribute to
// node and return node."
if (result == NodeFilter.FILTER_ACCEPT) {
expectedCurrentNode = expectedReturn = node;
break;
}
// "If result is FILTER_SKIP, run these subsubsteps:"
if (result == NodeFilter.FILTER_SKIP) {
// "Let child be node's first child if type is first, and node's
// last child if type is last."
var child = type == "first" ? node.firstChild : node.lastChild;
// "If child is not null, set node to child and goto Main."
if (child) {
node = child;
continue;
}
}
// "While node is not null, run these subsubsteps:"
while (node) {
// "Let sibling be node's next sibling if type is first, and node's
// previous sibling if type is last."
var sibling = type == "first" ? node.nextSibling
: node.previousSibling;
// "If sibling is not null, set node to sibling and goto Main."
if (sibling) {
node = sibling;
break;
}
// "Let parent be node's parent."
var parent = node.parentNode;
// "If parent is null, parent is root, or parent is currentNode
// attribute's value, return null."
if (!parent || parent == root || parent == walker.currentNode) {
expectedReturn = node = null;
break;
} else {
// "Otherwise, set node to parent."
node = parent;
}
}
}
if (type == "first") {
assert_equals(walker.firstChild(), expectedReturn, ".firstChild()");
assert_equals(walker.currentNode, expectedCurrentNode,
".currentNode after .firstChild()");
} else {
assert_equals(walker.lastChild(), expectedReturn, ".lastChild()");
assert_equals(walker.currentNode, expectedCurrentNode,
".currentNode after .lastChild()");
}
}
function testTraverseSiblings(type, walker, root, whatToShow, filter) {
// TODO We don't test .currentNode other than the root's first or last child
if (!root.firstChild) {
// Nothing much to test
walker.currentNode = root;
assert_equals(walker.currentNode, root, "Setting .currentNode");
if (type == "next") {
assert_equals(walker.nextSibling(), null, ".nextSibling()");
assert_equals(walker.currentNode, root,
".currentNode after .nextSibling()")
} else {
assert_equals(walker.previousSibling(), null, ".previousSibling()");
assert_equals(walker.currentNode, root,
".currentNode after .previousSibling()")
}
return;
}
if (type == "next") {
walker.currentNode = root.firstChild;
assert_equals(walker.currentNode, root.firstChild,
"Setting .currentNode");
} else {
walker.currentNode = root.lastChild;
assert_equals(walker.currentNode, root.lastChild,
"Setting .currentNode");
}
var expectedReturn = null;
var expectedCurrentNode = type == "next" ? root.firstChild : root.lastChild;
// "To traverse siblings of type type run these steps:"
(function() {
// "Let node be the value of the currentNode attribute."
var node = type == "next" ? root.firstChild : root.lastChild;
// "If node is root, return null.
//
// "Run these substeps:
do {
// "Let sibling be node's next sibling if type is next, and node's
// previous sibling if type is previous."
var sibling = type == "next" ? node.nextSibling :
node.previousSibling;
// "While sibling is not null, run these subsubsteps:"
while (sibling) {
// "Set node to sibling."
node = sibling;
// "Filter node and let result be the return value."
var result = filterNode(node, whatToShow, filter);
// "If result is FILTER_ACCEPT, then set the currentNode
// attribute to node and return node."
if (result == NodeFilter.FILTER_ACCEPT) {
expectedCurrentNode = expectedReturn = node;
return;
}
// "Set sibling to node's first child if type is next, and
// node's last child if type is previous."
sibling = type == "next" ? node.firstChild : node.lastChild;
// "If result is FILTER_REJECT or sibling is null, then set
// sibling to node's next sibling if type is next, and node's
// previous sibling if type is previous."
if (result == NodeFilter.FILTER_REJECT || !sibling) {
sibling = type == "next" ? node.nextSibling :
node.previousSibling;
}
}
// "Set node to its parent."
node = node.parentNode;
// "If node is null or is root, return null.
if (!node || node == root) {
return;
}
// "Filter node and if the return value is FILTER_ACCEPT, then
// return null."
if (filterNode(node, whatToShow, filter)) {
return;
}
// "Run these substeps again."
} while (true);
})();
if (type == "next") {
assert_equals(walker.nextSibling(), expectedReturn, ".nextSibling()");
assert_equals(walker.currentNode, expectedCurrentNode,
".currentNode after .nextSibling()");
} else {
assert_equals(walker.previousSibling(), expectedReturn, ".previousSibling()");
assert_equals(walker.currentNode, expectedCurrentNode,
".currentNode after .previousSibling()");
}
}
function testWalker(root, whatToShow, filter) {
var walker = document.createTreeWalker(root, whatToShow, filter);
assert_equals(walker.root, root, ".root");
assert_equals(walker.whatToShow, whatToShow, ".whatToShow");
assert_equals(walker.filter, filter, ".filter");
assert_equals(walker.currentNode, root, ".currentNode");
var expectedReturn = null;
var expectedCurrentNode = walker.currentNode;
// "The parentNode() method must run these steps:"
//
// "Let node be the value of the currentNode attribute."
var node = walker.currentNode;
// "While node is not null and is not root, run these substeps:"
while (node && node != root) {
// "Let node be node's parent."
node = node.parentNode;
// "If node is not null and filtering node returns FILTER_ACCEPT, then
// set the currentNode attribute to node, return node."
if (node && filterNode(node, whatToShow, filter) ==
NodeFilter.FILTER_ACCEPT) {
expectedCurrentNode = expectedReturn = node;
}
}
assert_equals(walker.parentNode(), expectedReturn, ".parentNode()");
assert_equals(walker.currentNode, expectedCurrentNode,
".currentNode after .parentNode()");
testTraverseChildren("first", walker, root, whatToShow, filter);
testTraverseChildren("last", walker, root, whatToShow, filter);
testTraverseSiblings("next", walker, root, whatToShow, filter);
testTraverseSiblings("previous", walker, root, whatToShow, filter);
}
var whatToShows = [
"0",
"0xFFFFFFFF",
"NodeFilter.SHOW_ELEMENT",
"NodeFilter.SHOW_ATTRIBUTE",
"NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_DOCUMENT",
];
var callbacks = [
"null",
"(function(node) { return true })",
"(function(node) { return false })",
"(function(node) { return node.nodeName[0] == '#' })",
];
var tests = [];
for (var i = 0; i < testNodes.length; i++) {
for (var j = 0; j < whatToShows.length; j++) {
for (var k = 0; k < callbacks.length; k++) {
tests.push([
"document.createTreeWalker(" + testNodes[i] +
", " + whatToShows[j] + ", " + callbacks[k] + ")",
eval(testNodes[i]), eval(whatToShows[j]), eval(callbacks[k])
]);
}
}
}
generate_tests(testWalker, tests);
testDiv.style.display = "none";
</script>

View file

@ -8,21 +8,3 @@ function assert_node(actual, expected)
if (typeof(expected.nodeValue) !== 'undefined')
assert_equals(actual.nodeValue, expected.nodeValue);
}
// XXX Servo doesn't have these constants in NodeFilter yet
var FILTER_ACCEPT = 1;
var FILTER_REJECT = 2;
var FILTER_SKIP = 3;
var SHOW_ALL = 0xFFFFFFFF;
var SHOW_ELEMENT = 0x1;
var SHOW_ATTRIBUTE = 0x2;
var SHOW_TEXT = 0x4;
var SHOW_CDATA_SECTION = 0x8;
var SHOW_ENTITY_REFERENCE = 0x10;
var SHOW_ENTITY = 0x20;
var SHOW_PROCESSING_INSTRUCTION = 0x40;
var SHOW_COMMENT = 0x80;
var SHOW_DOCUMENT = 0x100;
var SHOW_DOCUMENT_TYPE = 0x200;
var SHOW_DOCUMENT_FRAGMENT = 0x400;
var SHOW_NOTATION = 0x800;

View file

@ -0,0 +1,9 @@
This suite tests conformance to the editing spec written long ago by Aryeh
Gregor. Nobody actually implements the spec, but the tests are still useful
for regression testing. The files in data/ were generated from a JavaScript
implementation of the specification using a complex procedure that can't
actually be replicated right now as-is. Editing them manually is possible, but
they're not really meant to be human-readable. If anyone is interested, it
would be possible for Aryeh to get the test generation procedure working again.
Or you could look into the repository history and figure out how to do it
yourself, if you're brave.

View file

@ -0,0 +1,352 @@
var browserTests = [
["foo[]bar",
[["backcolor","#00FFFF"]],
"foo[]bar",
[true],
{"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p> <p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p> <p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p> <span style=\"background-color:rgb(0, 255, 255)\"><span>bar</span></span> </p><p><span style=\"background-color:rgb(0, 255, 255)\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p> <span style=\"background-color:rgb(0, 255, 255)\"><span>bar</span></span> </p><p><span style=\"background-color:rgb(0, 255, 255)\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p><span style=\"background-color:rgb(0, 255, 255)\"><br></span></p><p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p><span style=\"background-color:rgb(0, 255, 255)\"><br></span></p><p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<b>foo[]bar</b>",
[["backcolor","#00FFFF"]],
"<b>foo[]bar</b>",
[true],
{"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<i>foo[]bar</i>",
[["backcolor","#00FFFF"]],
"<i>foo[]bar</i>",
[true],
{"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>foo</span>{}<span>bar</span>",
[["backcolor","#00FFFF"]],
"<span>foo</span>{}<span>bar</span>",
[true],
{"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>foo[</span><span>]bar</span>",
[["backcolor","#00FFFF"]],
"<span>foo[</span><span>]bar</span>",
[true],
{"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><b><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><b><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><i><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><i><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"{<p></p><p> </p><p><span style=\"background-color:rgb(0, 255, 255)\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"{<p></p><p> </p><p><span style=\"background-color:rgb(0, 255, 255)\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"background-color:rgb(0, 255, 255)\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"background-color:rgb(0, 255, 255)\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<table><tbody><tr>{<td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<table><tbody><tr>{<td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<table><tbody>{<tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<table><tbody>{<tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<table>{<tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<table>{<tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"{<table><tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"{<table><tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: rgb(0, 255, 255)\">foo[bar]baz</p>",
[["backcolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</p>",
[true],
{"backcolor":[false,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: #00ffff\">foo[bar]baz</p>",
[["backcolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</p>",
[true],
{"backcolor":[false,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: aqua\">foo[bar]baz</p>",
[["backcolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</p>",
[true],
{"backcolor":[false,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["{<p style=\"background-color: aqua\">foo</p><p>bar</p>}",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"{<p style=\"background-color:rgb(0, 255, 255)\">foo</p><p><span style=\"background-color:rgb(0, 255, 255)\">bar</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[true,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["{<p style=\"background-color: aqua\">foo</p><p>bar</p>}",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"{<p style=\"background-color:rgb(0, 255, 255)\">foo</p><p><span style=\"background-color:rgb(0, 255, 255)\">bar</span></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[true,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: aqua\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: aqua\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #00ffff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #00ffff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #0ff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #0ff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: rgb(0, 255, 255)\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: rgb(0, 255, 255)\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: aqua\">foo<span style=\"background-color: tan\">b[ar]</span>baz</span>",
[["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo<span style=\"background-color:rgb(210, 180, 140)\">b</span>[ar]baz</span>",
[true],
{"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: aqua\">foo<span style=\"background-color: tan\">b[ar]</span>baz</p>",
[["backcolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo<span style=\"background-color:rgb(210, 180, 140)\">b</span>[ar]baz</p>",
[true],
{"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<div style=\"background-color: aqua\"><p style=\"background-color: tan\">b[ar]</p></div>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<div style=\"background-color:rgb(0, 255, 255)\"><p style=\"background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></p></div>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<div style=\"background-color: aqua\"><p style=\"background-color: tan\">b[ar]</p></div>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<div style=\"background-color:rgb(0, 255, 255)\"><p style=\"background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></p></div>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"display: block; background-color: aqua\"><span style=\"display: block; background-color: tan\">b[ar]</span></span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"display:block; background-color:rgb(0, 255, 255)\"><span style=\"display:block; background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"display: block; background-color: aqua\"><span style=\"display: block; background-color: tan\">b[ar]</span></span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"display:block; background-color:rgb(0, 255, 255)\"><span style=\"display:block; background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["fo[o<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[true,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["fo[o<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[true,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>b]az",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span><span style=\"background-color:rgb(0, 255, 255)\">b]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>b]az",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span><span style=\"background-color:rgb(0, 255, 255)\">b]</span>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["fo[o<span style=background-color:tan>bar</span>b]az",
[["backcolor","#00FFFF"]],
"fo<span style=\"background-color:rgb(0, 255, 255)\">[obarb]</span>az",
[true],
{"backcolor":[true,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"foo[<span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo[<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"foo[<span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>]baz",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>]baz",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo[<span style=background-color:tan>bar</span>]baz",
[["backcolor","#00FFFF"]],
"foo[<span style=\"background-color:rgb(0, 255, 255)\">bar</span>]baz",
[true],
{"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>[bar]</span>baz",
[["backcolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz",
[true],
{"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo{<span style=background-color:tan>bar</span>}baz",
[["backcolor","#00FFFF"]],
"foo{<span style=\"background-color:rgb(0, 255, 255)\">bar}</span>baz",
[true],
{"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:yellow>b]ar</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(255, 255, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:yellow>b]ar</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(255, 255, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:tan>b]ar</span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:tan>b]ar</span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o<span style=background-color:transparent>b]ar</span></span>",
[["stylewithcss","true"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgba(0, 0, 0, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o<span style=background-color:transparent>b]ar</span></span>",
[["stylewithcss","false"],["backcolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgba(0, 0, 0, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"backcolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}]
]

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,242 @@
var browserTests = [
["foo[]bar",
[["createlink","http://www.google.com/"]],
"foo[]bar",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<p>[foo</p> <p>bar]</p>",
[["createlink","http://www.google.com/"]],
"<p><a href=\"http://www.google.com/\">[foo</a></p> <p><a href=\"http://www.google.com/\">bar]</a></p>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<span>[foo</span> <span>bar]</span>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\"><span>[foo</span> <span>bar]</span></a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["createlink","http://www.google.com/"]],
"<p><a href=\"http://www.google.com/\">[foo</a></p><p> <a href=\"http://www.google.com/\"><span>bar</span></a> </p><p><a href=\"http://www.google.com/\">baz]</a></p>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<p>[foo<p><br><p>bar]",
[["createlink","http://www.google.com/"]],
"<p><a href=\"http://www.google.com/\">[foo</a></p><p><a href=\"http://www.google.com/\"><br></a></p><p><a href=\"http://www.google.com/\">bar]</a></p>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<b>foo[]bar</b>",
[["createlink","http://www.google.com/"]],
"<b>foo[]bar</b>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<i>foo[]bar</i>",
[["createlink","http://www.google.com/"]],
"<i>foo[]bar</i>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<span>foo</span>{}<span>bar</span>",
[["createlink","http://www.google.com/"]],
"<span>foo</span>{}<span>bar</span>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<span>foo[</span><span>]bar</span>",
[["createlink","http://www.google.com/"]],
"<span>foo[</span><span>]bar</span>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[bar]</a>baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo[bar<b>baz]qoz</b>quz",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[bar</a><b><a href=\"http://www.google.com/\">baz]</a>qoz</b>quz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo[bar<i>baz]qoz</i>quz",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[bar</a><i><a href=\"http://www.google.com/\">baz]</a>qoz</i>quz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<p><p> <p>foo</p>}",
[["createlink","http://www.google.com/"]],
"{<p></p><p> </p><p><a href=\"http://www.google.com/\">foo</a></p>}",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["createlink","http://www.google.com/"]],
"<table><tbody><tr><td>foo</td><td>b<a href=\"http://www.google.com/\">[a]</a>r</td><td>baz</td></tr></tbody></table>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["createlink","http://www.google.com/"]],
"<table><tbody><tr><td>foo</td>{<td><a href=\"http://www.google.com/\">bar</a></td>}<td>baz</td></tr></tbody></table>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["createlink","http://www.google.com/"]],
"<table><tbody><tr>{<td><a href=\"http://www.google.com/\">foo</a></td><td><a href=\"http://www.google.com/\">bar</a></td>}<td>baz</td></tr></tbody></table>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["createlink","http://www.google.com/"]],
"<table><tbody>{<tr><td><a href=\"http://www.google.com/\">foo</a></td><td><a href=\"http://www.google.com/\">bar</a></td><td><a href=\"http://www.google.com/\">baz</a></td></tr>}</tbody></table>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["createlink","http://www.google.com/"]],
"<table>{<tbody><tr><td><a href=\"http://www.google.com/\">foo</a></td><td><a href=\"http://www.google.com/\">bar</a></td><td><a href=\"http://www.google.com/\">baz</a></td></tr></tbody>}</table>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["createlink","http://www.google.com/"]],
"{<table><tbody><tr><td><a href=\"http://www.google.com/\">foo</a></td><td><a href=\"http://www.google.com/\">bar</a></td><td><a href=\"http://www.google.com/\">baz</a></td></tr></tbody></table>}",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=http://www.google.com/>foo[bar]baz</a>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">foo[bar]baz</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=http://www.google.com/>foo[barbaz</a>}",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">foo[barbaz</a>}",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<a href=http://www.google.com/>foobar]baz</a>",
[["createlink","http://www.google.com/"]],
"{<a href=\"http://www.google.com/\">foobar]baz</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<a href=http://www.google.com/>foobarbaz</a>}",
[["createlink","http://www.google.com/"]],
"{<a href=\"http://www.google.com/\">foobarbaz}</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=http://www.google.com/>[foobarbaz]</a>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foobarbaz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo<a href=http://www.google.com/>[bar]</a>baz",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[bar]</a>baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["[foo]<a href=http://www.google.com/>bar</a>baz",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foo]bar</a>baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo<a href=http://www.google.com/>bar</a>[baz]",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">bar[baz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo[<a href=http://www.google.com/>bar</a>]baz",
[["createlink","http://www.google.com/"]],
"foo[<a href=\"http://www.google.com/\">bar</a>]baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo<a href=http://www.google.com/>[bar</a>baz]",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[barbaz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["[foo<a href=http://www.google.com/>bar]</a>baz",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foobar]</a>baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["[foo<a href=http://www.google.com/>bar</a>baz]",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foobarbaz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=otherurl>foo[bar]baz</a>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">foo[bar]baz</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=otherurl>foo[barbaz</a>}",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">foo[barbaz</a>}",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<a href=otherurl>foobar]baz</a>",
[["createlink","http://www.google.com/"]],
"{<a href=\"http://www.google.com/\">foobar]baz</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<a href=otherurl>foobarbaz</a>}",
[["createlink","http://www.google.com/"]],
"{<a href=\"http://www.google.com/\">foobarbaz}</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=otherurl>[foobarbaz]</a>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foobarbaz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo<a href=otherurl>[bar]</a>baz",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[bar]</a>baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo[<a href=otherurl>bar</a>]baz",
[["createlink","http://www.google.com/"]],
"foo[<a href=\"http://www.google.com/\">bar</a>]baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo<a href=otherurl>[bar</a>baz]",
[["createlink","http://www.google.com/"]],
"foo<a href=\"http://www.google.com/\">[barbaz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["[foo<a href=otherurl>bar]</a>baz",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foobar]</a>baz",
[true],
{"createlink":[false,false,"",false,false,""]}],
["[foo<a href=otherurl>bar</a>baz]",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\">[foobarbaz]</a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=otherurl><b>foo[bar]baz</b></a>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\"><b>foo[bar]baz</b></a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=otherurl><b>foo[barbaz</b></a>}",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\"><b>foo[barbaz</b></a>}",
[true],
{"createlink":[false,false,"",false,false,""]}],
["{<a href=otherurl><b>foobar]baz</b></a>",
[["createlink","http://www.google.com/"]],
"{<a href=\"http://www.google.com/\"><b>foobar]baz</b></a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a href=otherurl><b>[foobarbaz]</b></a>",
[["createlink","http://www.google.com/"]],
"<a href=\"http://www.google.com/\"><b>[foobarbaz]</b></a>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a name=abc>foo[bar]baz</a>",
[["createlink","http://www.google.com/"]],
"<span name=\"abc\">foo<a href=\"http://www.google.com/\">[bar]</a>baz</span>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["<a name=abc><b>foo[bar]baz</b></a>",
[["createlink","http://www.google.com/"]],
"<span name=\"abc\"><b>foo<a href=\"http://www.google.com/\">[bar]</a>baz</b></span>",
[true],
{"createlink":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["createlink",""]],
"foo[bar]baz",
[false],
{"createlink":[false,false,"",false,false,""]}]
]

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,707 @@
var browserTests = [
["foo[]bar",
[["fontname","sans-serif"]],
"foo[]bar",
[true],
{"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<p><span style=\"font-family:sans-serif\">[foo</span></p> <p><span style=\"font-family:sans-serif\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<p><font face=\"sans-serif\">[foo</font></p> <p><font face=\"sans-serif\">bar]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\"><span>[foo</span> <span>bar]</span></font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<p><span style=\"font-family:sans-serif\">[foo</span></p><p> <span style=\"font-family:sans-serif\"><span>bar</span></span> </p><p><span style=\"font-family:sans-serif\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<p><font face=\"sans-serif\">[foo</font></p><p> <font face=\"sans-serif\"><span>bar</span></font> </p><p><font face=\"sans-serif\">baz]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<p><span style=\"font-family:sans-serif\">[foo</span></p><p><span style=\"font-family:sans-serif\"><br></span></p><p><span style=\"font-family:sans-serif\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<p><font face=\"sans-serif\">[foo</font></p><p><font face=\"sans-serif\"><br></font></p><p><font face=\"sans-serif\">bar]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<b>foo[]bar</b>",
[["fontname","sans-serif"]],
"<b>foo[]bar</b>",
[true],
{"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<i>foo[]bar</i>",
[["fontname","sans-serif"]],
"<i>foo[]bar</i>",
[true],
{"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<span>foo</span>{}<span>bar</span>",
[["fontname","sans-serif"]],
"<span>foo</span>{}<span>bar</span>",
[true],
{"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<span>foo[</span><span>]bar</span>",
[["fontname","sans-serif"]],
"<span>foo[</span><span>]bar</span>",
[true],
{"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<font face=\"sans-serif\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">[bar</span><b><span style=\"font-family:sans-serif\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<font face=\"sans-serif\">[bar</font><b><font face=\"sans-serif\">baz]</font>qoz</b>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">[bar</span><i><span style=\"font-family:sans-serif\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<font face=\"sans-serif\">[bar</font><i><font face=\"sans-serif\">baz]</font>qoz</i>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","true"],["fontname","sans-serif"]],
"{<p></p><p> </p><p><span style=\"font-family:sans-serif\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","false"],["fontname","sans-serif"]],
"{<p></p><p> </p><p><font face=\"sans-serif\">foo</font></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"font-family:sans-serif\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<table><tbody><tr><td>foo</td><td>b<font face=\"sans-serif\">[a]</font>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"font-family:sans-serif\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<table><tbody><tr><td>foo</td>{<td><font face=\"sans-serif\">bar</font></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<table><tbody><tr>{<td><span style=\"font-family:sans-serif\">foo</span></td><td><span style=\"font-family:sans-serif\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<table><tbody><tr>{<td><font face=\"sans-serif\">foo</font></td><td><font face=\"sans-serif\">bar</font></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<table><tbody>{<tr><td><span style=\"font-family:sans-serif\">foo</span></td><td><span style=\"font-family:sans-serif\">bar</span></td><td><span style=\"font-family:sans-serif\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<table><tbody>{<tr><td><font face=\"sans-serif\">foo</font></td><td><font face=\"sans-serif\">bar</font></td><td><font face=\"sans-serif\">baz</font></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<table>{<tbody><tr><td><span style=\"font-family:sans-serif\">foo</span></td><td><span style=\"font-family:sans-serif\">bar</span></td><td><span style=\"font-family:sans-serif\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<table>{<tbody><tr><td><font face=\"sans-serif\">foo</font></td><td><font face=\"sans-serif\">bar</font></td><td><font face=\"sans-serif\">baz</font></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","true"],["fontname","sans-serif"]],
"{<table><tbody><tr><td><span style=\"font-family:sans-serif\">foo</span></td><td><span style=\"font-family:sans-serif\">bar</span></td><td><span style=\"font-family:sans-serif\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","false"],["fontname","sans-serif"]],
"{<table><tbody><tr><td><font face=\"sans-serif\">foo</font></td><td><font face=\"sans-serif\">bar</font></td><td><font face=\"sans-serif\">baz</font></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"serif",false,false,"sans-serif"]}],
["foo<code>[bar]</code>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<code><span style=\"font-family:sans-serif\">[bar]</span></code>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<code>[bar]</code>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<code><font face=\"sans-serif\">[bar]</font></code>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<kbd>[bar]</kbd>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<kbd><span style=\"font-family:sans-serif\">[bar]</span></kbd>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<kbd>[bar]</kbd>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<kbd><font face=\"sans-serif\">[bar]</font></kbd>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<listing>[bar]</listing>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<listing><span style=\"font-family:sans-serif\">[bar]</span></listing>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<listing>[bar]</listing>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<listing><font face=\"sans-serif\">[bar]</font></listing>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<pre>[bar]</pre>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<pre><span style=\"font-family:sans-serif\">[bar]</span></pre>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<pre>[bar]</pre>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<pre><font face=\"sans-serif\">[bar]</font></pre>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<samp>[bar]</samp>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<samp><span style=\"font-family:sans-serif\">[bar]</span></samp>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<samp>[bar]</samp>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<samp><font face=\"sans-serif\">[bar]</font></samp>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>[bar]</tt>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<tt><span style=\"font-family:sans-serif\">[bar]</span></tt>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>[bar]</tt>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<tt><font face=\"sans-serif\">[bar]</font></tt>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<code>b[a]r</code>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<code>b<span style=\"font-family:sans-serif\">[a]</span>r</code>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<code>b[a]r</code>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<code>b<font face=\"sans-serif\">[a]</font>r</code>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<kbd>b[a]r</kbd>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<kbd>b<span style=\"font-family:sans-serif\">[a]</span>r</kbd>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<kbd>b[a]r</kbd>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<kbd>b<font face=\"sans-serif\">[a]</font>r</kbd>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<listing>b[a]r</listing>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<listing>b<span style=\"font-family:sans-serif\">[a]</span>r</listing>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<listing>b[a]r</listing>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<listing>b<font face=\"sans-serif\">[a]</font>r</listing>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<pre>b[a]r</pre>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<pre>b<span style=\"font-family:sans-serif\">[a]</span>r</pre>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<pre>b[a]r</pre>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<pre>b<font face=\"sans-serif\">[a]</font>r</pre>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<samp>b[a]r</samp>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<samp>b<span style=\"font-family:sans-serif\">[a]</span>r</samp>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<samp>b[a]r</samp>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<samp>b<font face=\"sans-serif\">[a]</font>r</samp>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>b[a]r</tt>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<tt>b<span style=\"font-family:sans-serif\">[a]</span>r</tt>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>b[a]r</tt>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<tt>b<font face=\"sans-serif\">[a]</font>r</tt>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["[foo<code>bar</code>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo<code><span style=\"font-family:sans-serif\">bar</span></code>baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<code>bar</code>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo<code><font face=\"sans-serif\">bar</font></code>baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<kbd>bar</kbd>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo<kbd><span style=\"font-family:sans-serif\">bar</span></kbd>baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<kbd>bar</kbd>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo<kbd><font face=\"sans-serif\">bar</font></kbd>baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<listing>bar</listing>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><listing><span style=\"font-family:sans-serif\">bar</span></listing><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<listing>bar</listing>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><listing><font face=\"sans-serif\">bar</font></listing><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<pre>bar</pre>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><pre><span style=\"font-family:sans-serif\">bar</span></pre><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<pre>bar</pre>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><pre><font face=\"sans-serif\">bar</font></pre><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<samp>bar</samp>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo<samp><span style=\"font-family:sans-serif\">bar</span></samp>baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<samp>bar</samp>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo<samp><font face=\"sans-serif\">bar</font></samp>baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<tt>bar</tt>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo<tt><span style=\"font-family:sans-serif\">bar</span></tt>baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<tt>bar</tt>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo<tt><font face=\"sans-serif\">bar</font></tt>baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<code>ba]r</code>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><code><span style=\"font-family:sans-serif\">ba]</span>r</code>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<code>ba]r</code>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><code><font face=\"sans-serif\">ba]</font>r</code>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<kbd>ba]r</kbd>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><kbd><span style=\"font-family:sans-serif\">ba]</span>r</kbd>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<kbd>ba]r</kbd>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><kbd><font face=\"sans-serif\">ba]</font>r</kbd>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<listing>ba]r</listing>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><listing><span style=\"font-family:sans-serif\">ba]</span>r</listing>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<listing>ba]r</listing>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><listing><font face=\"sans-serif\">ba]</font>r</listing>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<pre>ba]r</pre>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><pre><span style=\"font-family:sans-serif\">ba]</span>r</pre>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<pre>ba]r</pre>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><pre><font face=\"sans-serif\">ba]</font>r</pre>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<samp>ba]r</samp>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><samp><span style=\"font-family:sans-serif\">ba]</span>r</samp>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<samp>ba]r</samp>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><samp><font face=\"sans-serif\">ba]</font>r</samp>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<tt>ba]r</tt>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:sans-serif\">[foo</span><tt><span style=\"font-family:sans-serif\">ba]</span>r</tt>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["[foo<tt>ba]r</tt>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<font face=\"sans-serif\">[foo</font><tt><font face=\"sans-serif\">ba]</font>r</tt>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["foo<code>b[ar</code>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<code>b<span style=\"font-family:sans-serif\">[ar</span></code><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<code>b[ar</code>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<code>b<font face=\"sans-serif\">[ar</font></code><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<kbd>b[ar</kbd>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<kbd>b<span style=\"font-family:sans-serif\">[ar</span></kbd><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<kbd>b[ar</kbd>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<kbd>b<font face=\"sans-serif\">[ar</font></kbd><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<listing>b[ar</listing>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<listing>b<span style=\"font-family:sans-serif\">[ar</span></listing><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<listing>b[ar</listing>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<listing>b<font face=\"sans-serif\">[ar</font></listing><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<pre>b[ar</pre>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<pre>b<span style=\"font-family:sans-serif\">[ar</span></pre><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<pre>b[ar</pre>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<pre>b<font face=\"sans-serif\">[ar</font></pre><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<samp>b[ar</samp>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<samp>b<span style=\"font-family:sans-serif\">[ar</span></samp><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<samp>b[ar</samp>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<samp>b<font face=\"sans-serif\">[ar</font></samp><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>b[ar</tt>baz]",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<tt>b<span style=\"font-family:sans-serif\">[ar</span></tt><span style=\"font-family:sans-serif\">baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>b[ar</tt>baz]",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<tt>b<font face=\"sans-serif\">[ar</font></tt><font face=\"sans-serif\">baz]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=\"font-family: sans-serif\">[bar]</span>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"sans-serif",false,false,"sans-serif"]}],
["foo<span style=\"font-family: sans-serif\">[bar]</span>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<font face=\"sans-serif\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"sans-serif",false,false,"sans-serif"]}],
["foo<span style=\"font-family: sans-serif\">b[a]r</span>baz",
[["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">b[a]r</span>baz",
[true],
{"fontname":[false,false,"sans-serif",false,false,"sans-serif"]}],
["foo<span style=\"font-family: monospace\">[bar]</span>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=\"font-family: monospace\">[bar]</span>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<font face=\"sans-serif\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=\"font-family: monospace\">b[a]r</span>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:monospace\">b<span style=\"font-family:sans-serif\">[a]</span>r</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=\"font-family: monospace\">b[a]r</span>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<span style=\"font-family:monospace\">b<font face=\"sans-serif\">[a]</font>r</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt contenteditable=false>ba[r</tt>b]az",
[["fontname","sans-serif"]],
"foo<tt contenteditable=\"false\">ba[r</tt>b]az",
[false],
{"fontname":[false,false,"serif",false,false,"serif"]}],
["fo[o<tt contenteditable=false>b]ar</tt>baz",
[["fontname","sans-serif"]],
"fo[o<tt contenteditable=\"false\">b]ar</tt>baz",
[false],
{"fontname":[false,false,"serif",false,false,"serif"]}],
["foo<tt>{}<br></tt>bar",
[["fontname","sans-serif"]],
"foo<tt>{}<br></tt>bar",
[true],
{"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>{<br></tt>}bar",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<tt>{<span style=\"font-family:sans-serif\"><br></span></tt>}bar",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>{<br></tt>}bar",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<tt>{<font face=\"sans-serif\"><br></font></tt>}bar",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>{<br></tt>b]ar",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<tt>{<span style=\"font-family:sans-serif\"><br></span></tt><span style=\"font-family:sans-serif\">b]</span>ar",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<tt>{<br></tt>b]ar",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<tt>{<font face=\"sans-serif\"><br></font></tt><font face=\"sans-serif\">b]</font>ar",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["fo[o<span style=font-family:monospace>b]ar</span>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><span style=\"font-family:monospace\"><span style=\"font-family:sans-serif\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<span style=font-family:monospace>b]ar</span>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><span style=\"font-family:monospace\"><font face=\"sans-serif\">b]</font>ar</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["foo<span style=font-family:monospace>ba[r</span>b]az",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:monospace\">ba<span style=\"font-family:sans-serif\">[r</span></span><span style=\"font-family:sans-serif\">b]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=font-family:monospace>ba[r</span>b]az",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<span style=\"font-family:monospace\">ba<font face=\"sans-serif\">[r</font></span><font face=\"sans-serif\">b]</font>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"monospace",false,false,"sans-serif"]}],
["fo[o<span style=font-family:monospace>bar</span>b]az",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[obarb]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<span style=font-family:monospace>bar</span>b]az",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[obarb]</font>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["foo[<span style=font-family:monospace>b]ar</span>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo[<span style=\"font-family:monospace\"><span style=\"font-family:sans-serif\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo[<span style=font-family:monospace>b]ar</span>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo[<span style=\"font-family:monospace\"><font face=\"sans-serif\">b]</font>ar</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=font-family:monospace>ba[r</span>]baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:monospace\">ba<span style=\"font-family:sans-serif\">[r</span></span>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=font-family:monospace>ba[r</span>]baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<span style=\"font-family:monospace\">ba<font face=\"sans-serif\">[r</font></span>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo[<span style=font-family:monospace>bar</span>]baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo[<span style=\"font-family:sans-serif\">bar</span>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo[<span style=font-family:monospace>bar</span>]baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo[<font face=\"sans-serif\">bar</font>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=font-family:monospace>[bar]</span>baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo<span style=\"font-family:sans-serif\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo<span style=font-family:monospace>[bar]</span>baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo<font face=\"sans-serif\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo{<span style=font-family:monospace>bar</span>}baz",
[["stylewithcss","true"],["fontname","sans-serif"]],
"foo{<span style=\"font-family:sans-serif\">bar}</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["foo{<span style=font-family:monospace>bar</span>}baz",
[["stylewithcss","false"],["fontname","sans-serif"]],
"foo{<font face=\"sans-serif\">bar}</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["fo[o<code>b]ar</code>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><code><span style=\"font-family:sans-serif\">b]</span>ar</code>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<code>b]ar</code>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><code><font face=\"sans-serif\">b]</font>ar</code>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<kbd>b]ar</kbd>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><kbd><span style=\"font-family:sans-serif\">b]</span>ar</kbd>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<kbd>b]ar</kbd>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><kbd><font face=\"sans-serif\">b]</font>ar</kbd>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<listing>b]ar</listing>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><listing><span style=\"font-family:sans-serif\">b]</span>ar</listing>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<listing>b]ar</listing>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><listing><font face=\"sans-serif\">b]</font>ar</listing>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<pre>b]ar</pre>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><pre><span style=\"font-family:sans-serif\">b]</span>ar</pre>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<pre>b]ar</pre>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><pre><font face=\"sans-serif\">b]</font>ar</pre>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<samp>b]ar</samp>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><samp><span style=\"font-family:sans-serif\">b]</span>ar</samp>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<samp>b]ar</samp>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><samp><font face=\"sans-serif\">b]</font>ar</samp>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<tt>b]ar</tt>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"fo<span style=\"font-family:sans-serif\">[o</span><tt><span style=\"font-family:sans-serif\">b]</span>ar</tt>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["fo[o<tt>b]ar</tt>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"fo<font face=\"sans-serif\">[o</font><tt><font face=\"sans-serif\">b]</font>ar</tt>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[true,false,"serif",false,false,"sans-serif"]}],
["<tt>fo[o</tt><code>b]ar</code>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<tt>fo<span style=\"font-family:sans-serif\">[o</span></tt><code><span style=\"font-family:sans-serif\">b]</span>ar</code>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["<tt>fo[o</tt><code>b]ar</code>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<tt>fo<font face=\"sans-serif\">[o</font></tt><code><font face=\"sans-serif\">b]</font>ar</code>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["<pre>fo[o</pre><samp>b]ar</samp>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<pre>fo<span style=\"font-family:sans-serif\">[o</span></pre><samp><span style=\"font-family:sans-serif\">b]</span>ar</samp>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["<pre>fo[o</pre><samp>b]ar</samp>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<pre>fo<font face=\"sans-serif\">[o</font></pre><samp><font face=\"sans-serif\">b]</font>ar</samp>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["<span style=font-family:monospace>fo[o</span><kbd>b]ar</kbd>",
[["stylewithcss","true"],["fontname","sans-serif"]],
"<span style=\"font-family:monospace\">fo<span style=\"font-family:sans-serif\">[o</span></span><kbd><span style=\"font-family:sans-serif\">b]</span>ar</kbd>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}],
["<span style=font-family:monospace>fo[o</span><kbd>b]ar</kbd>",
[["stylewithcss","false"],["fontname","sans-serif"]],
"<span style=\"font-family:monospace\">fo<font face=\"sans-serif\">[o</font></span><kbd><font face=\"sans-serif\">b]</font>ar</kbd>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontname":[false,false,"monospace",false,false,"sans-serif"]}]
]

View file

@ -0,0 +1,782 @@
var browserTests = [
["foo[]bar",
[["fontsize","4"]],
"foo[]bar",
[true],
{"fontsize":[false,false,"3",false,false,"4"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","true"],["fontsize","4"]],
"<p><span style=\"font-size:large\">[foo</span></p> <p><span style=\"font-size:large\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","false"],["fontsize","4"]],
"<p><font size=\"4\">[foo</font></p> <p><font size=\"4\">bar]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<span style=\"font-size:large\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"4\"><span>[foo</span> <span>bar]</span></font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","true"],["fontsize","4"]],
"<p><span style=\"font-size:large\">[foo</span></p><p> <span style=\"font-size:large\"><span>bar</span></span> </p><p><span style=\"font-size:large\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","false"],["fontsize","4"]],
"<p><font size=\"4\">[foo</font></p><p> <font size=\"4\"><span>bar</span></font> </p><p><font size=\"4\">baz]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","true"],["fontsize","4"]],
"<p><span style=\"font-size:large\">[foo</span></p><p><br></p><p><span style=\"font-size:large\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",true,false,"4"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","false"],["fontsize","4"]],
"<p><font size=\"4\">[foo</font></p><p><br></p><p><font size=\"4\">bar]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",true,false,"4"]}],
["<b>foo[]bar</b>",
[["fontsize","4"]],
"<b>foo[]bar</b>",
[true],
{"fontsize":[false,false,"3",false,false,"4"]}],
["<i>foo[]bar</i>",
[["fontsize","4"]],
"<i>foo[]bar</i>",
[true],
{"fontsize":[false,false,"3",false,false,"4"]}],
["<span>foo</span>{}<span>bar</span>",
[["fontsize","4"]],
"<span>foo</span>{}<span>bar</span>",
[true],
{"fontsize":[false,false,"3",false,false,"4"]}],
["<span>foo[</span><span>]bar</span>",
[["fontsize","4"]],
"<span>foo[</span><span>]bar</span>",
[true],
{"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar</span><b><span style=\"font-size:large\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar</font><b><font size=\"4\">baz]</font>qoz</b>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar</span><i><span style=\"font-size:large\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar</font><i><font size=\"4\">baz]</font>qoz</i>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","true"],["fontsize","4"]],
"{<p></p><p> </p><p><span style=\"font-size:large\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","false"],["fontsize","4"]],
"{<p></p><p> </p><p><font size=\"4\">foo</font></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","1"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","1"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","0"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","0"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","-5"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","-5"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","6"]],
"foo<span style=\"font-size:xx-large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"6"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","6"]],
"foo<font size=\"6\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"6"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","7"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","7"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","8"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","8"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","100"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","100"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["fontsize","2em"]],
"foo[bar]baz",
[false],
{"fontsize":[false,false,"3",false,false,"3"]}],
["foo[bar]baz",
[["fontsize","20pt"]],
"foo[bar]baz",
[false],
{"fontsize":[false,false,"3",false,false,"3"]}],
["foo[bar]baz",
[["fontsize","xx-large"]],
"foo[bar]baz",
[false],
{"fontsize":[false,false,"3",false,false,"3"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize"," 1 "]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize"," 1 "]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["fontsize","1."]],
"foo[bar]baz",
[false],
{"fontsize":[false,false,"3",false,false,"3"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","1.0"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","1.0"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","1.0e2"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","1.0e2"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","1.1"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","1.1"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","1.9"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","1.9"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["fontsize","+0"]],
"foo[bar]baz",
[true],
{"fontsize":[false,false,"3",false,false,"3"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","+1"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","+1"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","+9"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","+9"]],
"foo<font size=\"7\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"7"]}],
["foo[bar]baz",
[["fontsize","-0"]],
"foo[bar]baz",
[true],
{"fontsize":[false,false,"3",false,false,"3"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","-1"]],
"foo<span style=\"font-size:small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"2"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","-1"]],
"foo<font size=\"2\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"2"]}],
["foo[bar]baz",
[["stylewithcss","true"],["fontsize","-9"]],
"foo<span style=\"font-size:x-small\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["stylewithcss","false"],["fontsize","-9"]],
"foo<font size=\"1\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"1"]}],
["foo[bar]baz",
[["fontsize",""]],
"foo[bar]baz",
[false],
{"fontsize":[false,false,"3",false,false,"3"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","true"],["fontsize","4"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"font-size:large\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","false"],["fontsize","4"]],
"<table><tbody><tr><td>foo</td><td>b<font size=\"4\">[a]</font>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontsize","4"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"font-size:large\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontsize","4"]],
"<table><tbody><tr><td>foo</td>{<td><font size=\"4\">bar</font></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontsize","4"]],
"<table><tbody><tr>{<td><span style=\"font-size:large\">foo</span></td><td><span style=\"font-size:large\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontsize","4"]],
"<table><tbody><tr>{<td><font size=\"4\">foo</font></td><td><font size=\"4\">bar</font></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontsize","4"]],
"<table><tbody>{<tr><td><span style=\"font-size:large\">foo</span></td><td><span style=\"font-size:large\">bar</span></td><td><span style=\"font-size:large\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontsize","4"]],
"<table><tbody>{<tr><td><font size=\"4\">foo</font></td><td><font size=\"4\">bar</font></td><td><font size=\"4\">baz</font></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["fontsize","4"]],
"<table>{<tbody><tr><td><span style=\"font-size:large\">foo</span></td><td><span style=\"font-size:large\">bar</span></td><td><span style=\"font-size:large\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["fontsize","4"]],
"<table>{<tbody><tr><td><font size=\"4\">foo</font></td><td><font size=\"4\">bar</font></td><td><font size=\"4\">baz</font></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","true"],["fontsize","4"]],
"{<table><tbody><tr><td><span style=\"font-size:large\">foo</span></td><td><span style=\"font-size:large\">bar</span></td><td><span style=\"font-size:large\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","false"],["fontsize","4"]],
"{<table><tbody><tr><td><font size=\"4\">foo</font></td><td><font size=\"4\">bar</font></td><td><font size=\"4\">baz</font></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo<font size=1>[bar]</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["foo<font size=1>[bar]</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<font size=1>foo[bar]baz</font>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"1\">foo<span style=\"font-size:large\">[bar]</span>baz</font>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<font size=1>foo[bar]baz</font>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"1\">foo<font size=\"4\">[bar]</font>baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["foo<font size=3>[bar]</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo<font size=3>[bar]</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<font size=3>foo[bar]baz</font>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"3\">foo<span style=\"font-size:large\">[bar]</span>baz</font>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<font size=3>foo[bar]baz</font>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"3\">foo<font size=\"4\">[bar]</font>baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo<font size=4>[bar]</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"4",false,false,"4"]}],
["foo<font size=4>[bar]</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"4",false,false,"4"]}],
["<font size=4>foo[bar]baz</font>",
[["fontsize","4"]],
"<font size=\"4\">foo[bar]baz</font>",
[true],
{"fontsize":[false,false,"4",false,false,"4"]}],
["foo<font size=+1>[bar]</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"4",false,false,"4"]}],
["foo<font size=+1>[bar]</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"4",false,false,"4"]}],
["<font size=+1>foo[bar]baz</font>",
[["fontsize","4"]],
"<font size=\"+1\">foo[bar]baz</font>",
[true],
{"fontsize":[false,false,"4",false,false,"4"]}],
["<font size=4>foo<font size=1>b[a]r</font>baz</font>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"4\">foo<span style=\"font-size:x-small\">b</span>[a]<span style=\"font-size:x-small\">r</span>baz</font>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<font size=4>foo<font size=1>b[a]r</font>baz</font>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"4\">foo<font size=\"1\">b</font>[a]<font size=\"1\">r</font>baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["foo<span style=\"font-size: xx-small\">[bar]</span>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["foo<span style=\"font-size: xx-small\">[bar]</span>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<span style=\"font-size: xx-small\">foo[bar]baz</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<span style=\"font-size:xx-small\">foo<span style=\"font-size:large\">[bar]</span>baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<span style=\"font-size: xx-small\">foo[bar]baz</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<span style=\"font-size:xx-small\">foo<font size=\"4\">[bar]</font>baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["foo<span style=\"font-size: medium\">[bar]</span>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo<span style=\"font-size: medium\">[bar]</span>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<span style=\"font-size: medium\">foo[bar]baz</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<span style=\"font-size:medium\">foo<span style=\"font-size:large\">[bar]</span>baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<span style=\"font-size: medium\">foo[bar]baz</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<span style=\"font-size:medium\">foo<font size=\"4\">[bar]</font>baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["foo<span style=\"font-size: large\">[bar]</span>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"4",false,false,"4"]}],
["foo<span style=\"font-size: large\">[bar]</span>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"4",false,false,"4"]}],
["<span style=\"font-size: large\">foo[bar]baz</span>",
[["fontsize","4"]],
"<span style=\"font-size:large\">foo[bar]baz</span>",
[true],
{"fontsize":[false,false,"4",false,false,"4"]}],
["<span style=\"font-size: large\">foo<span style=\"font-size: xx-small\">b[a]r</span>baz</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<span style=\"font-size:large\">foo<span style=\"font-size:xx-small\">b</span>[a]<span style=\"font-size:xx-small\">r</span>baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<span style=\"font-size: large\">foo<span style=\"font-size: xx-small\">b[a]r</span>baz</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<span style=\"font-size:large\">foo<span style=\"font-size:xx-small\">b</span>[a]<span style=\"font-size:xx-small\">r</span>baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["foo<span style=\"font-size: 2em\">[bar]</span>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"6",false,false,"4"]}],
["foo<span style=\"font-size: 2em\">[bar]</span>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"6",false,false,"4"]}],
["<span style=\"font-size: 2em\">foo[bar]baz</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<span style=\"font-size:2em\">foo<span style=\"font-size:large\">[bar]</span>baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"6",false,false,"4"]}],
["<span style=\"font-size: 2em\">foo[bar]baz</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<span style=\"font-size:2em\">foo<font size=\"4\">[bar]</font>baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"6",false,false,"4"]}],
["<p style=\"font-size: xx-small\">foo[bar]baz</p>",
[["stylewithcss","true"],["fontsize","4"]],
"<p style=\"font-size:xx-small\">foo<span style=\"font-size:large\">[bar]</span>baz</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<p style=\"font-size: xx-small\">foo[bar]baz</p>",
[["stylewithcss","false"],["fontsize","4"]],
"<p style=\"font-size:xx-small\">foo<font size=\"4\">[bar]</font>baz</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"4"]}],
["<p style=\"font-size: medium\">foo[bar]baz</p>",
[["stylewithcss","true"],["fontsize","4"]],
"<p style=\"font-size:medium\">foo<span style=\"font-size:large\">[bar]</span>baz</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<p style=\"font-size: medium\">foo[bar]baz</p>",
[["stylewithcss","false"],["fontsize","4"]],
"<p style=\"font-size:medium\">foo<font size=\"4\">[bar]</font>baz</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<p style=\"font-size: large\">foo[bar]baz</p>",
[["fontsize","4"]],
"<p style=\"font-size:large\">foo[bar]baz</p>",
[true],
{"fontsize":[false,false,"4",false,false,"4"]}],
["<p style=\"font-size: 2em\">foo[bar]baz</p>",
[["stylewithcss","true"],["fontsize","4"]],
"<p style=\"font-size:2em\">foo<span style=\"font-size:large\">[bar]</span>baz</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"6",false,false,"4"]}],
["<p style=\"font-size: 2em\">foo[bar]baz</p>",
[["stylewithcss","false"],["fontsize","4"]],
"<p style=\"font-size:2em\">foo<font size=\"4\">[bar]</font>baz</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"6",false,false,"4"]}],
["<p style=\"font-size: xx-small\">foo[bar]baz</p>",
[["stylewithcss","true"],["fontsize","3"]],
"<p><span style=\"font-size:xx-small\">foo</span>[bar]<span style=\"font-size:xx-small\">baz</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"1",false,false,"3"]}],
["<p style=\"font-size: xx-small\">foo[bar]baz</p>",
[["stylewithcss","false"],["fontsize","3"]],
"<p><span style=\"font-size:xx-small\">foo</span>[bar]<span style=\"font-size:xx-small\">baz</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"1",false,false,"3"]}],
["<p style=\"font-size: medium\">foo[bar]baz</p>",
[["fontsize","3"]],
"<p style=\"font-size:medium\">foo[bar]baz</p>",
[true],
{"fontsize":[false,false,"3",false,false,"3"]}],
["<p style=\"font-size: large\">foo[bar]baz</p>",
[["stylewithcss","true"],["fontsize","3"]],
"<p><span style=\"font-size:large\">foo</span>[bar]<span style=\"font-size:large\">baz</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"4",false,false,"3"]}],
["<p style=\"font-size: large\">foo[bar]baz</p>",
[["stylewithcss","false"],["fontsize","3"]],
"<p><font size=\"4\">foo</font>[bar]<font size=\"4\">baz</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"4",false,false,"3"]}],
["<p style=\"font-size: 2em\">foo[bar]baz</p>",
[["stylewithcss","true"],["fontsize","3"]],
"<p><span style=\"font-size:2em\">foo</span>[bar]<span style=\"font-size:2em\">baz</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"6",false,false,"3"]}],
["<p style=\"font-size: 2em\">foo[bar]baz</p>",
[["stylewithcss","false"],["fontsize","3"]],
"<p><span style=\"font-size:2em\">foo</span>[bar]<span style=\"font-size:2em\">baz</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"6",false,false,"3"]}],
["<font size=6>foo <span style=\"font-size: 2em\">b[a]r</span> baz</font>",
[["stylewithcss","true"],["fontsize","3"]],
"<span style=\"font-size:xx-large\">foo </span><span style=\"font-size:2em\">b</span>[a]<span style=\"font-size:2em\">r</span><span style=\"font-size:xx-large\"> baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"7",false,false,"3"]}],
["<font size=6>foo <span style=\"font-size: 2em\">b[a]r</span> baz</font>",
[["stylewithcss","false"],["fontsize","3"]],
"<font size=\"6\">foo </font><span style=\"font-size:2em\">b</span>[a]<span style=\"font-size:2em\">r</span><font size=\"6\"> baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"7",false,false,"3"]}],
["foo<big>[bar]</big>baz",
[["stylewithcss","true"],["fontsize","3"]],
"foo<big><span style=\"font-size:medium\">[bar]</span></big>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"4",false,false,"3"]}],
["foo<big>[bar]</big>baz",
[["stylewithcss","false"],["fontsize","3"]],
"foo<big><font size=\"3\">[bar]</font></big>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"4",false,false,"3"]}],
["foo<big>b[a]r</big>baz",
[["stylewithcss","true"],["fontsize","3"]],
"foo<big>b<span style=\"font-size:medium\">[a]</span>r</big>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"4",false,false,"3"]}],
["foo<big>b[a]r</big>baz",
[["stylewithcss","false"],["fontsize","3"]],
"foo<big>b<font size=\"3\">[a]</font>r</big>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"4",false,false,"3"]}],
["foo<small>[bar]</small>baz",
[["stylewithcss","true"],["fontsize","3"]],
"foo<small><span style=\"font-size:medium\">[bar]</span></small>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"3"]}],
["foo<small>[bar]</small>baz",
[["stylewithcss","false"],["fontsize","3"]],
"foo<small><font size=\"3\">[bar]</font></small>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"3"]}],
["foo<small>b[a]r</small>baz",
[["stylewithcss","true"],["fontsize","3"]],
"foo<small>b<span style=\"font-size:medium\">[a]</span>r</small>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"3"]}],
["foo<small>b[a]r</small>baz",
[["stylewithcss","false"],["fontsize","3"]],
"foo<small>b<font size=\"3\">[a]</font>r</small>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"3"]}],
["fo[o<font size=2>b]ar</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"fo<span style=\"font-size:large\">[o</span><font size=\"2\"><span style=\"font-size:large\">b]</span>ar</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[true,false,"3",false,false,"4"]}],
["fo[o<font size=2>b]ar</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"fo<font size=\"4\">[o</font><font size=\"2\"><font size=\"4\">b]</font>ar</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[true,false,"3",false,false,"4"]}],
["foo<font size=2>ba[r</font>b]az",
[["stylewithcss","true"],["fontsize","4"]],
"foo<font size=\"2\">ba<span style=\"font-size:large\">[r</span></font><span style=\"font-size:large\">b]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[true,false,"2",false,false,"4"]}],
["foo<font size=2>ba[r</font>b]az",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"2\">ba<font size=\"4\">[r</font></font><font size=\"4\">b]</font>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[true,false,"2",false,false,"4"]}],
["fo[o<font size=2>bar</font>b]az",
[["stylewithcss","true"],["fontsize","4"]],
"fo<span style=\"font-size:large\">[obarb]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[true,false,"3",false,false,"4"]}],
["fo[o<font size=2>bar</font>b]az",
[["stylewithcss","false"],["fontsize","4"]],
"fo<font size=\"4\">[obarb]</font>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[true,false,"3",false,false,"4"]}],
["foo[<font size=2>b]ar</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo[<font size=\"2\"><span style=\"font-size:large\">b]</span>ar</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo[<font size=2>b]ar</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo[<font size=\"2\"><font size=\"4\">b]</font>ar</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo<font size=2>ba[r</font>]baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<font size=\"2\">ba<span style=\"font-size:large\">[r</span></font>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo<font size=2>ba[r</font>]baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"2\">ba<font size=\"4\">[r</font></font>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo[<font size=2>bar</font>]baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo[<span style=\"font-size:large\">bar</span>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo[<font size=2>bar</font>]baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo[<font size=\"4\">bar</font>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo<font size=2>[bar]</font>baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo<span style=\"font-size:large\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo<font size=2>[bar]</font>baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo<font size=\"4\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo{<font size=2>bar</font>}baz",
[["stylewithcss","true"],["fontsize","4"]],
"foo{<span style=\"font-size:large\">bar}</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"4"]}],
["foo{<font size=2>bar</font>}baz",
[["stylewithcss","false"],["fontsize","4"]],
"foo{<font size=\"4\">bar}</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"4"]}],
["<font size=1>fo[o</font><span style=font-size:xx-small>b]ar</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"1\">fo<span style=\"font-size:large\">[o</span></font><span style=\"font-size:xx-small\"><span style=\"font-size:large\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[true,false,"1",false,false,"4"]}],
["<font size=1>fo[o</font><span style=font-size:xx-small>b]ar</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"1\">fo<font size=\"4\">[o</font></font><span style=\"font-size:xx-small\"><font size=\"4\">b]</font>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[true,false,"1",false,false,"4"]}],
["<font size=2>fo[o</font><span style=font-size:small>b]ar</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"2\">fo<span style=\"font-size:large\">[o</span></font><span style=\"font-size:small\"><span style=\"font-size:large\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"2",false,false,"4"]}],
["<font size=2>fo[o</font><span style=font-size:small>b]ar</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"2\">fo<font size=\"4\">[o</font></font><span style=\"font-size:small\"><font size=\"4\">b]</font>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"2",false,false,"4"]}],
["<font size=3>fo[o</font><span style=font-size:medium>b]ar</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"3\">fo<span style=\"font-size:large\">[o</span></font><span style=\"font-size:medium\"><span style=\"font-size:large\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<font size=3>fo[o</font><span style=font-size:medium>b]ar</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"3\">fo<font size=\"4\">[o</font></font><span style=\"font-size:medium\"><font size=\"4\">b]</font>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"3",false,false,"4"]}],
["<font size=4>fo[o</font><span style=font-size:large>b]ar</span>",
[["fontsize","4"]],
"<font size=\"4\">fo[o</font><span style=\"font-size:large\">b]ar</span>",
[true],
{"fontsize":[false,false,"4",false,false,"4"]}],
["<font size=5>fo[o</font><span style=font-size:x-large>b]ar</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"5\">fo<span style=\"font-size:large\">[o</span></font><span style=\"font-size:x-large\"><span style=\"font-size:large\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"5",false,false,"4"]}],
["<font size=5>fo[o</font><span style=font-size:x-large>b]ar</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"5\">fo<font size=\"4\">[o</font></font><span style=\"font-size:x-large\"><font size=\"4\">b]</font>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"5",false,false,"4"]}],
["<font size=6>fo[o</font><span style=font-size:xx-large>b]ar</span>",
[["stylewithcss","true"],["fontsize","4"]],
"<font size=\"6\">fo<span style=\"font-size:large\">[o</span></font><span style=\"font-size:xx-large\"><span style=\"font-size:large\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"fontsize":[false,false,"6",false,false,"4"]}],
["<font size=6>fo[o</font><span style=font-size:xx-large>b]ar</span>",
[["stylewithcss","false"],["fontsize","4"]],
"<font size=\"6\">fo<font size=\"4\">[o</font></font><span style=\"font-size:xx-large\"><font size=\"4\">b]</font>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"fontsize":[false,false,"6",false,false,"4"]}]
]

View file

@ -0,0 +1,737 @@
var browserTests = [
["foo[]bar",
[["forecolor","#0000FF"]],
"foo[]bar",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<p><span style=\"color:rgb(0, 0, 255)\">[foo</span></p> <p><span style=\"color:rgb(0, 0, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<p><font color=\"#0000ff\">[foo</font></p> <p><font color=\"#0000ff\">bar]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\"><span>[foo</span> <span>bar]</span></font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<p><span style=\"color:rgb(0, 0, 255)\">[foo</span></p><p> <span style=\"color:rgb(0, 0, 255)\"><span>bar</span></span> </p><p><span style=\"color:rgb(0, 0, 255)\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<p><font color=\"#0000ff\">[foo</font></p><p> <font color=\"#0000ff\"><span>bar</span></font> </p><p><font color=\"#0000ff\">baz]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<p><span style=\"color:rgb(0, 0, 255)\">[foo</span></p><p><span style=\"color:rgb(0, 0, 255)\"><br></span></p><p><span style=\"color:rgb(0, 0, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<p><font color=\"#0000ff\">[foo</font></p><p><font color=\"#0000ff\"><br></font></p><p><font color=\"#0000ff\">bar]</font></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<b>foo[]bar</b>",
[["forecolor","#0000FF"]],
"<b>foo[]bar</b>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<i>foo[]bar</i>",
[["forecolor","#0000FF"]],
"<i>foo[]bar</i>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span>foo</span>{}<span>bar</span>",
[["forecolor","#0000FF"]],
"<span>foo</span>{}<span>bar</span>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span>foo[</span><span>]bar</span>",
[["forecolor","#0000FF"]],
"<span>foo[</span><span>]bar</span>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar</span><b><span style=\"color:rgb(0, 0, 255)\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"#0000ff\">[bar</font><b><font color=\"#0000ff\">baz]</font>qoz</b>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar</span><i><span style=\"color:rgb(0, 0, 255)\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"#0000ff\">[bar</font><i><font color=\"#0000ff\">baz]</font>qoz</i>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"{<p></p><p> </p><p><span style=\"color:rgb(0, 0, 255)\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"{<p></p><p> </p><p><font color=\"#0000ff\">foo</font></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","blue"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","blue"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["forecolor","f"]],
"foo[bar]baz",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["foo[bar]baz",
[["forecolor","#f"]],
"foo[bar]baz",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","00f"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","00f"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","#00f"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","#00f"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","0000ff"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","0000ff"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","#0000ff"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","#0000ff"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["forecolor","000000fff"]],
"foo[bar]baz",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["foo[bar]baz",
[["forecolor","#000000fff"]],
"foo[bar]baz",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgb(0, 0, 255)"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgb(0, 0, 255)"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgb(0%, 0%, 100%)"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgb(0%, 0%, 100%)"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgb( 0 ,0 ,255)"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgb( 0 ,0 ,255)"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgba(0, 0, 255, 0.0)"]],
"foo<span style=\"color:rgba(0, 0, 0, 0)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgba(0, 0, 255, 0)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgba(0, 0, 255, 0.0)"]],
"foo<span style=\"color:rgba(0, 0, 0, 0)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgba(0, 0, 255, 0)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgb(15, -10, 375)"]],
"foo<span style=\"color:rgb(15, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(15, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgb(15, -10, 375)"]],
"foo<font color=\"#0f00ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(15, 0, 255)"]}],
["foo[bar]baz",
[["forecolor","rgba(0, 0, 0, 1)"]],
"foo[bar]baz",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgba(255, 255, 255, 1)"]],
"foo<span style=\"color:rgb(255, 255, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(255, 255, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgba(255, 255, 255, 1)"]],
"foo<font color=\"#ffffff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(255, 255, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","rgba(0, 0, 255, 0.5)"]],
"foo<span style=\"color:rgba(0, 0, 255, 0.5)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgba(0, 0, 255, 0.5)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","rgba(0, 0, 255, 0.5)"]],
"foo<span style=\"color:rgba(0, 0, 255, 0.5)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgba(0, 0, 255, 0.5)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","hsl(240, 100%, 50%)"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","hsl(240, 100%, 50%)"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","cornsilk"]],
"foo<span style=\"color:rgb(255, 248, 220)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(255, 248, 220)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","cornsilk"]],
"foo<font color=\"#fff8dc\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(255, 248, 220)"]}],
["foo[bar]baz",
[["forecolor","potato quiche"]],
"foo[bar]baz",
[true],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["forecolor","transparent"]],
"foo<span style=\"color:rgba(0, 0, 0, 0)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgba(0, 0, 0, 0)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["forecolor","transparent"]],
"foo<span style=\"color:rgba(0, 0, 0, 0)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgba(0, 0, 0, 0)"]}],
["foo[bar]baz",
[["forecolor","currentColor"]],
"foo[bar]baz",
[false],
{"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 0)"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"color:rgb(0, 0, 255)\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<table><tbody><tr><td>foo</td><td>b<font color=\"#0000ff\">[a]</font>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"color:rgb(0, 0, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<table><tbody><tr><td>foo</td>{<td><font color=\"#0000ff\">bar</font></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<table><tbody><tr>{<td><span style=\"color:rgb(0, 0, 255)\">foo</span></td><td><span style=\"color:rgb(0, 0, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<table><tbody><tr>{<td><font color=\"#0000ff\">foo</font></td><td><font color=\"#0000ff\">bar</font></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<table><tbody>{<tr><td><span style=\"color:rgb(0, 0, 255)\">foo</span></td><td><span style=\"color:rgb(0, 0, 255)\">bar</span></td><td><span style=\"color:rgb(0, 0, 255)\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<table><tbody>{<tr><td><font color=\"#0000ff\">foo</font></td><td><font color=\"#0000ff\">bar</font></td><td><font color=\"#0000ff\">baz</font></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<table>{<tbody><tr><td><span style=\"color:rgb(0, 0, 255)\">foo</span></td><td><span style=\"color:rgb(0, 0, 255)\">bar</span></td><td><span style=\"color:rgb(0, 0, 255)\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<table>{<tbody><tr><td><font color=\"#0000ff\">foo</font></td><td><font color=\"#0000ff\">bar</font></td><td><font color=\"#0000ff\">baz</font></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"{<table><tbody><tr><td><span style=\"color:rgb(0, 0, 255)\">foo</span></td><td><span style=\"color:rgb(0, 0, 255)\">bar</span></td><td><span style=\"color:rgb(0, 0, 255)\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"{<table><tbody><tr><td><font color=\"#0000ff\">foo</font></td><td><font color=\"#0000ff\">bar</font></td><td><font color=\"#0000ff\">baz</font></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=blue>[bar]</font>baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=blue>[bar]</font>baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["foo{<font color=blue>bar</font>}baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo{<span style=\"color:rgb(0, 0, 255)\">bar}</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["foo{<font color=blue>bar</font>}baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo{<font color=\"#0000ff\">bar}</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: blue\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: blue\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: #00f\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: #00f\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: #0000ff\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: #0000ff\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">foo<span style=\"color: brown\">[bar]</span>baz</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<font color=blue>foo<font color=brown>[bar]</font>baz</font>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<font color=\"blue\">foo[bar]baz</font>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<font color=blue>foo<font color=brown>[bar]</font>baz</font>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"blue\">foo[bar]baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">foo<span style=\"color: brown\">b[ar]</span>baz</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo<span style=\"color:rgb(165, 42, 42)\">b</span>[ar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">foo<span style=\"color: brown\">b[ar]</span>baz</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo<font color=\"#a52a2a\">b</font>[ar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo<span id=purple>ba[r</span>ba]z",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<span id=\"purple\">ba<span style=\"color:rgb(0, 0, 255)\">[r</span></span><span style=\"color:rgb(0, 0, 255)\">ba]</span>z",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[true,false,"rgb(128, 0, 128)",false,false,"rgb(0, 0, 255)"]}],
["foo<span id=purple>ba[r</span>ba]z",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<span id=\"purple\">ba<font color=\"#0000ff\">[r</font></span><font color=\"#0000ff\">ba]</font>z",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[true,false,"rgb(128, 0, 128)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">foo<span id=purple>b[a]r</span>baz</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo<span id=\"purple\">b<span style=\"color:rgb(0, 0, 255)\">[a]</span>r</span>baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(128, 0, 128)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">foo<span id=purple>b[a]r</span>baz</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">foo<span id=\"purple\">b<font color=\"#0000ff\">[a]</font>r</span>baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(128, 0, 128)",false,false,"rgb(0, 0, 255)"]}],
["<a href=http://www.google.com>foo[bar]baz</a>",
[["forecolor","blue"]],
"<a href=\"http://www.google.com\">foo[bar]baz</a>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<a href=http://www.google.com>foo[bar]baz</a>",
[["forecolor","#0000ff"]],
"<a href=\"http://www.google.com\">foo[bar]baz</a>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<a href=http://www.google.com>foo[bar]baz</a>",
[["forecolor","rgb(0,0,255)"]],
"<a href=\"http://www.google.com\">foo[bar]baz</a>",
[true],
{"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<font color=\"blue\">[foo]</font>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<font color=\"blue\">[foo]</font>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<font color=\"0000ff\">[foo]</font>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<font color=\"0000ff\">[foo]</font>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<font color=\"#0000ff\">[foo]</font>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<font color=\"#0000ff\">[foo]</font>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: blue\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: blue\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: #0000ff\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: #0000ff\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0, 0, 255)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0%, 0%, 100%)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(0%, 0%, 100%)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb( 0 ,0 ,255)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb( 0 ,0 ,255)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(0, 0, 255, 0.0)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgba(0, 0, 255, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(0, 0, 255, 0.0)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgba(0, 0, 255, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(15, -10, 375)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(15, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgb(15, -10, 375)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(15, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(0, 0, 0, 1)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(0, 0, 0, 1)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(255, 255, 255, 1)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(255, 255, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(255, 255, 255, 1)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(255, 255, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(0, 0, 255, 0.5)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgba(0, 0, 255, 0.5)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: rgba(0, 0, 255, 0.5)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgba(0, 0, 255, 0.5)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: hsl(240, 100%, 50%)\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: hsl(240, 100%, 50%)\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 255)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: cornsilk\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(255, 248, 220)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: cornsilk\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(255, 248, 220)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: transparent\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: transparent\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: currentColor\">[foo]</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(0, 0, 255)\">[foo]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["<span style=\"color: currentColor\">[foo]</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"#0000ff\">[foo]</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["fo[o<font color=brown>b]ar</font>baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"fo<span style=\"color:rgb(0, 0, 255)\">[o</span><font color=\"brown\"><span style=\"color:rgb(0, 0, 255)\">b]</span>ar</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[true,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["fo[o<font color=brown>b]ar</font>baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"fo<font color=\"#0000ff\">[o</font><font color=\"brown\"><font color=\"#0000ff\">b]</font>ar</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[true,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=brown>ba[r</font>b]az",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<font color=\"brown\">ba<span style=\"color:rgb(0, 0, 255)\">[r</span></font><span style=\"color:rgb(0, 0, 255)\">b]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[true,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=brown>ba[r</font>b]az",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"brown\">ba<font color=\"#0000ff\">[r</font></font><font color=\"#0000ff\">b]</font>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[true,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["fo[o<font color=brown>bar</font>b]az",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"fo<span style=\"color:rgb(0, 0, 255)\">[obarb]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[true,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["fo[o<font color=brown>bar</font>b]az",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"fo<font color=\"#0000ff\">[obarb]</font>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[true,false,"rgb(0, 0, 0)",false,false,"rgb(0, 0, 255)"]}],
["foo[<font color=brown>b]ar</font>baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo[<font color=\"brown\"><span style=\"color:rgb(0, 0, 255)\">b]</span>ar</font>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo[<font color=brown>b]ar</font>baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo[<font color=\"brown\"><font color=\"#0000ff\">b]</font>ar</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=brown>ba[r</font>]baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<font color=\"brown\">ba<span style=\"color:rgb(0, 0, 255)\">[r</span></font>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=brown>ba[r</font>]baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"brown\">ba<font color=\"#0000ff\">[r</font></font>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo[<font color=brown>bar</font>]baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo[<span style=\"color:rgb(0, 0, 255)\">bar</span>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo[<font color=brown>bar</font>]baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo[<font color=\"#0000ff\">bar</font>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=brown>[bar]</font>baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo<span style=\"color:rgb(0, 0, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo<font color=brown>[bar]</font>baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo<font color=\"#0000ff\">[bar]</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo{<font color=brown>bar</font>}baz",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"foo{<span style=\"color:rgb(0, 0, 255)\">bar}</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["foo{<font color=brown>bar</font>}baz",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"foo{<font color=\"#0000ff\">bar}</font>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<font color=brown>fo[o</font><span style=color:brown>b]ar</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<font color=\"brown\">fo<span style=\"color:rgb(0, 0, 255)\">[o</span></font><span style=\"color:rgb(165, 42, 42)\"><span style=\"color:rgb(0, 0, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<font color=brown>fo[o</font><span style=color:brown>b]ar</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<font color=\"brown\">fo<font color=\"#0000ff\">[o</font></font><span style=\"color:rgb(165, 42, 42)\"><font color=\"#0000ff\">b]</font>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[false,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=color:brown>fo[o</span><span style=color:#0000ff>b]ar</span>",
[["stylewithcss","true"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(165, 42, 42)\">fo<span style=\"color:rgb(0, 0, 255)\">[o</span></span><span style=\"color:rgb(0, 0, 255)\">b]ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"forecolor":[true,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}],
["<span style=color:brown>fo[o</span><span style=color:#0000ff>b]ar</span>",
[["stylewithcss","false"],["forecolor","#0000FF"]],
"<span style=\"color:rgb(165, 42, 42)\">fo<font color=\"#0000ff\">[o</font></span><span style=\"color:rgb(0, 0, 255)\">b]ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"forecolor":[true,false,"rgb(165, 42, 42)",false,false,"rgb(0, 0, 255)"]}]
]

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,412 @@
var browserTests = [
["foo[]bar",
[["hilitecolor","#00FFFF"]],
"foo[]bar",
[true],
{"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p> <p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p> <p>bar]</p>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p> <p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>[foo</span> <span>bar]</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><span>[foo</span> <span>bar]</span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p> <span style=\"background-color:rgb(0, 255, 255)\"><span>bar</span></span> </p><p><span style=\"background-color:rgb(0, 255, 255)\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo</p><p> <span>bar</span> </p><p>baz]</p>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p> <span style=\"background-color:rgb(0, 255, 255)\"><span>bar</span></span> </p><p><span style=\"background-color:rgb(0, 255, 255)\">baz]</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p><span style=\"background-color:rgb(0, 255, 255)\"><br></span></p><p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p>[foo<p><br><p>bar]",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<p><span style=\"background-color:rgb(0, 255, 255)\">[foo</span></p><p><span style=\"background-color:rgb(0, 255, 255)\"><br></span></p><p><span style=\"background-color:rgb(0, 255, 255)\">bar]</span></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<b>foo[]bar</b>",
[["hilitecolor","#00FFFF"]],
"<b>foo[]bar</b>",
[true],
{"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<i>foo[]bar</i>",
[["hilitecolor","#00FFFF"]],
"<i>foo[]bar</i>",
[true],
{"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>foo</span>{}<span>bar</span>",
[["hilitecolor","#00FFFF"]],
"<span>foo</span>{}<span>bar</span>",
[true],
{"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span>foo[</span><span>]bar</span>",
[["hilitecolor","#00FFFF"]],
"<span>foo[</span><span>]bar</span>",
[true],
{"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar]baz",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar]baz",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><b><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<b>baz]qoz</b>quz",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><b><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</b>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><i><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[bar<i>baz]qoz</i>quz",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar</span><i><span style=\"background-color:rgb(0, 255, 255)\">baz]</span>qoz</i>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"{<p></p><p> </p><p><span style=\"background-color:rgb(0, 255, 255)\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<p><p> <p>foo</p>}",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"{<p></p><p> </p><p><span style=\"background-color:rgb(0, 255, 255)\">foo</span></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"background-color:rgb(0, 255, 255)\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td><td>b<span style=\"background-color:rgb(0, 255, 255)\">[a]</span>r</td><td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<table><tbody><tr><td>foo</td>{<td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<table><tbody><tr>{<td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<table><tbody><tr>{<td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td>}<td>baz</td></tr></tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<table><tbody>{<tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<table><tbody>{<tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr>}</tbody></table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<table>{<tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<table>{<tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody>}</table>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"{<table><tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"{<table><tbody><tr><td><span style=\"background-color:rgb(0, 255, 255)\">foo</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">bar</span></td><td><span style=\"background-color:rgb(0, 255, 255)\">baz</span></td></tr></tbody></table>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: rgb(0, 255, 255)\">foo[bar]baz</p>",
[["hilitecolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</p>",
[true],
{"hilitecolor":[false,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: #00ffff\">foo[bar]baz</p>",
[["hilitecolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</p>",
[true],
{"hilitecolor":[false,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: aqua\">foo[bar]baz</p>",
[["hilitecolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</p>",
[true],
{"hilitecolor":[false,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["{<p style=\"background-color: aqua\">foo</p><p>bar</p>}",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"{<p style=\"background-color:rgb(0, 255, 255)\">foo</p><p><span style=\"background-color:rgb(0, 255, 255)\">bar</span></p>}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[true,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["{<p style=\"background-color: aqua\">foo</p><p>bar</p>}",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"{<p style=\"background-color:rgb(0, 255, 255)\">foo</p><p><span style=\"background-color:rgb(0, 255, 255)\">bar</span></p>}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[true,false,"rgb(0, 255, 255)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: aqua\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: aqua\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #00ffff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #00ffff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #0ff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: #0ff\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: rgb(0, 255, 255)\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: rgb(0, 255, 255)\">foo<span style=\"background-color: tan\">[bar]</span>baz</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo[bar]baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"background-color: aqua\">foo<span style=\"background-color: tan\">b[ar]</span>baz</span>",
[["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">foo<span style=\"background-color:rgb(210, 180, 140)\">b</span>[ar]baz</span>",
[true],
{"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<p style=\"background-color: aqua\">foo<span style=\"background-color: tan\">b[ar]</span>baz</p>",
[["hilitecolor","#00FFFF"]],
"<p style=\"background-color:rgb(0, 255, 255)\">foo<span style=\"background-color:rgb(210, 180, 140)\">b</span>[ar]baz</p>",
[true],
{"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<div style=\"background-color: aqua\"><p style=\"background-color: tan\">b[ar]</p></div>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<div style=\"background-color:rgb(0, 255, 255)\"><p style=\"background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></p></div>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<div style=\"background-color: aqua\"><p style=\"background-color: tan\">b[ar]</p></div>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<div style=\"background-color:rgb(0, 255, 255)\"><p style=\"background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></p></div>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"display: block; background-color: aqua\"><span style=\"display: block; background-color: tan\">b[ar]</span></span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"display:block; background-color:rgb(0, 255, 255)\"><span style=\"display:block; background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=\"display: block; background-color: aqua\"><span style=\"display: block; background-color: tan\">b[ar]</span></span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"display:block; background-color:rgb(0, 255, 255)\"><span style=\"display:block; background-color:rgb(210, 180, 140)\">b<span style=\"background-color:rgb(0, 255, 255)\">[ar]</span></span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["fo[o<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[true,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["fo[o<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[true,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>b]az",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span><span style=\"background-color:rgb(0, 255, 255)\">b]</span>az",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>b]az",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span><span style=\"background-color:rgb(0, 255, 255)\">b]</span>az",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["fo[o<span style=background-color:tan>bar</span>b]az",
[["hilitecolor","#00FFFF"]],
"fo<span style=\"background-color:rgb(0, 255, 255)\">[obarb]</span>az",
[true],
{"hilitecolor":[true,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["foo[<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"foo[<span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo[<span style=background-color:tan>b]ar</span>baz",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"foo[<span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>]baz",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span>]baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>ba[r</span>]baz",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(210, 180, 140)\">ba<span style=\"background-color:rgb(0, 255, 255)\">[r</span></span>]baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo[<span style=background-color:tan>bar</span>]baz",
[["hilitecolor","#00FFFF"]],
"foo[<span style=\"background-color:rgb(0, 255, 255)\">bar</span>]baz",
[true],
{"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo<span style=background-color:tan>[bar]</span>baz",
[["hilitecolor","#00FFFF"]],
"foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz",
[true],
{"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["foo{<span style=background-color:tan>bar</span>}baz",
[["hilitecolor","#00FFFF"]],
"foo{<span style=\"background-color:rgb(0, 255, 255)\">bar}</span>baz",
[true],
{"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:yellow>b]ar</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(255, 255, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:yellow>b]ar</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(255, 255, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[true,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:tan>b]ar</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o</span><span style=background-color:tan>b]ar</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span></span><span style=\"background-color:rgb(210, 180, 140)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o<span style=background-color:transparent>b]ar</span></span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgba(0, 0, 0, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<span style=background-color:tan>fo[o<span style=background-color:transparent>b]ar</span></span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(210, 180, 140)\">fo<span style=\"background-color:rgb(0, 255, 255)\">[o</span><span style=\"background-color:rgba(0, 0, 0, 0)\"><span style=\"background-color:rgb(0, 255, 255)\">b]</span>ar</span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgb(210, 180, 140)",false,false,"rgb(0, 255, 255)"]}],
["<font size=6>[foo]</font>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><font size=\"6\">[foo]</font></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<font size=6>[foo]</font>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><font size=\"6\">[foo]</font></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span style=font-size:xx-large>[foo]</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><span style=\"font-size:xx-large\">[foo]</span></span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span style=font-size:xx-large>[foo]</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\"><span style=\"font-size:xx-large\">[foo]</span></span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<font size=6>foo[bar]baz</font>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<font size=\"6\">foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz</font>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<font size=6>foo[bar]baz</font>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<font size=\"6\">foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span style=font-size:xx-large>foo[bar]baz</span>",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"font-size:xx-large\">foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["<span style=font-size:xx-large>foo[bar]baz</span>",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"font-size:xx-large\">foo<span style=\"background-color:rgb(0, 255, 255)\">[bar]</span>baz</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["[foo<font size=6>bar</font>baz]",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">[foo<font size=\"6\">bar</font>baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["[foo<font size=6>bar</font>baz]",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">[foo<font size=\"6\">bar</font>baz]</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["[foo<span style=font-size:xx-large>bar</span>baz]",
[["stylewithcss","true"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">[foo<span style=\"font-size:xx-large\">bar</span>baz]</span>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}],
["[foo<span style=font-size:xx-large>bar</span>baz]",
[["stylewithcss","false"],["hilitecolor","#00FFFF"]],
"<span style=\"background-color:rgb(0, 255, 255)\">[foo<span style=\"font-size:xx-large\">bar</span>baz]</span>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"hilitecolor":[false,false,"rgba(0, 0, 0, 0)",false,false,"rgb(0, 255, 255)"]}]
]

View file

@ -0,0 +1,717 @@
var browserTests = [
["foo[]bar<p>extra",
[["indent",""]],
"<blockquote>foo[]bar</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<span>foo</span>{}<span>bar</span><p>extra",
[["indent",""]],
"<blockquote><span>foo</span>{}<span>bar</span></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<span>foo[</span><span>]bar</span><p>extra",
[["indent",""]],
"<blockquote><span>foo[</span><span>]bar</span></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo[bar]baz<p>extra",
[["indent",""]],
"<blockquote>foo[bar]baz</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p dir=rtl>פו[בר]בז<p dir=rtl>נוםף",
[["indent",""]],
"<blockquote><p dir=\"rtl\">פו[בר]בז</p></blockquote><p dir=\"rtl\">נוםף</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p dir=rtl>פו[ברבז<p>Foobar]baz<p>Extra",
[["indent",""]],
"<blockquote><p dir=\"rtl\">פו[ברבז</p><p>Foobar]baz</p></blockquote><p>Extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>Foo[barbaz<p dir=rtl>פובר]בז<p>Extra",
[["indent",""]],
"<blockquote><p>Foo[barbaz</p><p dir=\"rtl\">פובר]בז</p></blockquote><p>Extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<div><p>Foo[barbaz<p dir=rtl>פובר]בז</div><p>Extra",
[["indent",""]],
"<blockquote><div><p>Foo[barbaz</p><p dir=\"rtl\">פובר]בז</p></div></blockquote><p>Extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo]bar[baz<p>extra",
[["indent",""]],
"<blockquote>foo[bar]baz</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["{<p><p> <p>foo</p>}<p>extra",
[["indent",""]],
"<blockquote>{<p></p><p> </p><p>foo</p>}</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo[bar<i>baz]qoz</i>quz<p>extra",
[["indent",""]],
"<blockquote>foo[bar<i>baz]qoz</i>quz</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["[]foo<p>extra",
[["indent",""]],
"<blockquote>[]foo</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo[]<p>extra",
[["indent",""]],
"<blockquote>foo[]</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[]foo<p>extra",
[["indent",""]],
"<blockquote><p>[]foo</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo[]<p>extra",
[["indent",""]],
"<blockquote><p>foo[]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>{}<br>foo</p><p>extra",
[["indent",""]],
"<blockquote>{}<br></blockquote><p>foo</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<br>{}</p><p>extra",
[["indent",""]],
"<blockquote><p>foo{}</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<span>{}<br>foo</span>bar<p>extra",
[["indent",""]],
"<blockquote>{}<br></blockquote><span>foo</span>bar<p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<span>foo<br>{}</span>bar<p>extra",
[["indent",""]],
"<span>foo{}</span><blockquote>bar</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo</p>{}<p>bar</p>",
[["indent",""]],
"<p>foo</p>{}<p>bar</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table><p>extra",
[["indent",""]],
"<table><tbody><tr><td>foo</td><td><blockquote>b[a]r</blockquote></td><td>baz</td></tr></tbody></table><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<table><tbody><tr data-start=1 data-end=2><td>foo<td>bar<td>baz</table><p>extra",
[["indent",""]],
"<table><tbody><tr><td>foo</td>{<td><blockquote>bar</blockquote></td>}<td>baz</td></tr></tbody></table><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<table><tbody><tr data-start=0 data-end=2><td>foo<td>bar<td>baz</table><p>extra",
[["indent",""]],
"<table><tbody><tr>{<td><blockquote>foo</blockquote></td><td><blockquote>bar</blockquote></td>}<td>baz</td></tr></tbody></table><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<td>baz</table><p>extra",
[["indent",""]],
"<blockquote><table><tbody>{<tr><td>foo</td><td>bar</td><td>baz</td></tr>}</tbody></table></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<table data-start=0 data-end=1><tbody><tr><td>foo<td>bar<td>baz</table><p>extra",
[["indent",""]],
"<blockquote><table>{<tbody><tr><td>foo</td><td>bar</td><td>baz</td></tr></tbody>}</table></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}<p>extra",
[["indent",""]],
"<blockquote>{<table><tbody><tr><td>foo</td><td>bar</td><td>baz</td></tr></tbody></table>}</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo[bar]</p><p>baz</p><p>extra",
[["indent",""]],
"<blockquote><p>foo[bar]</p></blockquote><p>baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foobar</p><p>ba]z</p><p>extra",
[["indent",""]],
"<blockquote><p>[foobar</p><p>ba]z</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo[bar]<br>baz<p>extra",
[["indent",""]],
"<blockquote>foo[bar]</blockquote>baz<p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo[bar]<br><br><br><br>baz<p>extra",
[["indent",""]],
"<blockquote>foo[bar]</blockquote><br><br><br>baz<p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foobar<br>[ba]z<p>extra",
[["indent",""]],
"foobar<blockquote>[ba]z</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foobar<br><br><br><br>[ba]z<p>extra",
[["indent",""]],
"foobar<br><br><br><br><blockquote>[ba]z</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo[bar<br>ba]z<p>extra",
[["indent",""]],
"<blockquote>foo[bar<br>ba]z</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<div>foo<p>[bar]</p>baz</div><p>extra",
[["indent",""]],
"<div>foo<blockquote><p>[bar]</p></blockquote>baz</div><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo[bar]</p><p>baz</p></blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote><p>foo[bar]</p></blockquote><p>baz</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo[bar</p><p>b]az</p></blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote><p>foo[bar</p><p>b]az</p></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo[bar]</p></blockquote><p>baz</p><p>extra",
[["indent",""]],
"<blockquote><blockquote><p>foo[bar]</p></blockquote></blockquote><p>baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo[bar</p></blockquote><p>b]az</p><p>extra",
[["indent",""]],
"<blockquote><blockquote><p>foo[bar</p></blockquote><p>b]az</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo]<blockquote><p>bar</blockquote><p>extra",
[["indent",""]],
"<blockquote><p>[foo]</p><p>bar</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<blockquote><p>b]ar</blockquote><p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><blockquote><p>b]ar</p></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<blockquote><p>bar</blockquote><p>[baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote><p>bar</p><p>[baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<blockquote><p>[bar</blockquote><p>baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote><blockquote><p>[bar</p></blockquote><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<blockquote><p>bar</blockquote><p>baz]<p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><blockquote><p>bar</p></blockquote><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo</blockquote><p>[bar]<blockquote><p>baz</blockquote><p>extra",
[["indent",""]],
"<blockquote><p>foo</p><p>[bar]</p><p>baz</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote>foo[bar]<br>baz</blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote>foo[bar]</blockquote>baz</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote>foo[bar<br>b]az</blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote>foo[bar<br>b]az</blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote>foo[bar]</blockquote>baz<p>extra",
[["indent",""]],
"<blockquote><blockquote>foo[bar]</blockquote></blockquote>baz<p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote>foo[bar</blockquote>b]az<p>extra",
[["indent",""]],
"<blockquote><blockquote>foo[bar</blockquote>b]az</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["[foo]<blockquote>bar</blockquote><p>extra",
[["indent",""]],
"<blockquote>[foo]<br>bar</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["[foo<blockquote>b]ar</blockquote><p>extra",
[["indent",""]],
"<blockquote>[foo<blockquote>b]ar</blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo<blockquote>bar</blockquote>[baz]<p>extra",
[["indent",""]],
"foo<blockquote>bar<br>[baz]</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["[foo<blockquote>bar</blockquote>baz]<p>extra",
[["indent",""]],
"<blockquote>[foo<blockquote>bar</blockquote>baz]</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote>foo</blockquote>[bar]<blockquote>baz</blockquote><p>extra",
[["indent",""]],
"<blockquote>foo<br>[bar]<br>baz</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>foo[bar]</p><p>baz</p></blockquote><p>extra",
[["indent",""]],
"<blockquote style=\"margin-right:0\" dir=\"ltr\"><blockquote><p>foo[bar]</p></blockquote><p>baz</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>foo[bar</p><p>b]az</p></blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>foo[bar</p><p>b]az</p></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>foo[bar]</p></blockquote><p>baz</p><p>extra",
[["indent",""]],
"<blockquote><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>foo[bar]</p></blockquote></blockquote><p>baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>foo[bar</p></blockquote><p>b]az</p><p>extra",
[["indent",""]],
"<blockquote><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>foo[bar</p></blockquote><p>b]az</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo]<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>bar</blockquote><p>extra",
[["indent",""]],
"<blockquote style=\"margin-right:0\" dir=\"ltr\"><p>[foo]</p><p>bar</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>b]ar</blockquote><p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>b]ar</p></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>bar</blockquote><p>[baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>bar</p><p>[baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>[bar</blockquote><p>baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>[bar</p></blockquote><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>bar</blockquote><p>baz]<p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><blockquote style=\"margin-right:0\" dir=\"ltr\"><p>bar</p></blockquote><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>foo</blockquote><p>[bar]<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>baz</blockquote><p>extra",
[["stylewithcss","true"],["indent",""]],
"<blockquote style=\"margin-right:0\" dir=\"ltr\"><p>foo</p><p>[bar]</p><p>baz</p></blockquote><p>extra</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"indent":[false,false,"",false,false,""]}],
["<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>foo</blockquote><p>[bar]<blockquote style=\"margin-right: 0\" dir=\"ltr\"><p>baz</blockquote><p>extra",
[["stylewithcss","false"],["indent",""]],
"<blockquote style=\"margin-right:0\" dir=\"ltr\"><p>foo</p><p>[bar]</p><p>baz</p></blockquote><p>extra</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"indent":[false,false,"",false,false,""]}],
["<p style=\"margin-left: 40px\">foo[bar]</p><p style=\"margin-left: 40px\">baz</p><p>extra",
[["indent",""]],
"<blockquote><p style=\"margin-left:40px\">foo[bar]</p></blockquote><p style=\"margin-left:40px\">baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p style=\"margin-left: 40px\">foo[bar</p><p style=\"margin-left: 40px\">b]az</p><p>extra",
[["indent",""]],
"<blockquote><p style=\"margin-left:40px\">foo[bar</p><p style=\"margin-left:40px\">b]az</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p style=\"margin-left: 40px\">foo[bar]</p><p>baz</p><p>extra",
[["indent",""]],
"<blockquote><p style=\"margin-left:40px\">foo[bar]</p></blockquote><p>baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p style=\"margin-left: 40px\">foo[bar</p><p>b]az</p><p>extra",
[["indent",""]],
"<blockquote><p style=\"margin-left:40px\">foo[bar</p><p>b]az</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo]<p style=\"margin-left: 40px\">bar<p>extra",
[["indent",""]],
"<blockquote><p>[foo]</p></blockquote><p style=\"margin-left:40px\">bar</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<p style=\"margin-left: 40px\">b]ar<p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><p style=\"margin-left:40px\">b]ar</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<p style=\"margin-left: 40px\">bar<p>[baz]<p>extra",
[["indent",""]],
"<p>foo</p><p style=\"margin-left:40px\">bar</p><blockquote><p>[baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<p style=\"margin-left: 40px\">[bar<p>baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote><p style=\"margin-left:40px\">[bar</p><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<p style=\"margin-left: 40px\">bar<p>baz]<p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><p style=\"margin-left:40px\">bar</p><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p style=\"margin-left: 40px\">foo<p>[bar]<p style=\"margin-left: 40px\">baz<p>extra",
[["indent",""]],
"<p style=\"margin-left:40px\">foo</p><blockquote><p>[bar]</p></blockquote><p style=\"margin-left:40px\">baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>foo[bar]</p><p>baz</p></blockquote><p>extra",
[["indent",""]],
"<blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><blockquote><p>foo[bar]</p></blockquote><p>baz</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>foo[bar</p><p>b]az</p></blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>foo[bar</p><p>b]az</p></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>foo[bar]</p></blockquote><p>baz</p><p>extra",
[["indent",""]],
"<blockquote><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>foo[bar]</p></blockquote></blockquote><p>baz</p><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>foo[bar</p></blockquote><p>b]az</p><p>extra",
[["indent",""]],
"<blockquote><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>foo[bar</p></blockquote><p>b]az</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo]<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>bar</blockquote><p>extra",
[["indent",""]],
"<blockquote><p>[foo]</p></blockquote><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>bar</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>b]ar</blockquote><p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>b]ar</p></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>bar</blockquote><p>[baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>bar</p></blockquote><blockquote><p>[baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>[bar</blockquote><p>baz]<p>extra",
[["indent",""]],
"<p>foo</p><blockquote><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>[bar</p></blockquote><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>bar</blockquote><p>baz]<p>extra",
[["indent",""]],
"<blockquote><p>[foo</p><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>bar</p></blockquote><p>baz]</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>foo</blockquote><p>[bar]<blockquote class=\"webkit-indent-blockquote\" style=\"margin: 0 0 0 40px; border: none; padding: 0px\"><p>baz</blockquote><p>extra",
[["indent",""]],
"<blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>foo</p></blockquote><blockquote><p>[bar]</p></blockquote><blockquote class=\"webkit-indent-blockquote\" style=\"margin:0 0 0 40px; border:none; padding:0px\"><p>baz</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote>f[oo<blockquote>b]ar</blockquote></blockquote><p>extra",
[["indent",""]],
"<blockquote><blockquote>f[oo<blockquote>b]ar</blockquote></blockquote></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]<li>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol data-start=1 data-end=2><li>foo<li>bar<li>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol>{<li>bar</li>}</ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</ol>[bar]",
[["indent",""]],
"<ol><li>foo</li></ol><blockquote>[bar]</blockquote>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo]<br>bar<li>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo]<br>bar</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<br>[bar]<li>baz</ol>",
[["indent",""]],
"<ol><ol><li>foo<br>[bar]</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li><div>[foo]</div>bar<li>baz</ol>",
[["indent",""]],
"<ol><ol><li><div>[foo]</div>bar</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>[bar]<li>baz</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>[bar]</li></ol><li>baz</li></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>bar<li>[baz]</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li><ol><li>[baz]</li></ol></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>[bar]<li>baz</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>[bar]</li></ol><li>baz</li></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol data-start=0 data-end=1><li>bar<li>baz</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol>{<li>bar</li>}</ol><li>baz</li></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar<li>[baz]</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li><ol><li>[baz]</li></ol></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol data-start=1 data-end=2><li>bar<li>baz</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li><ol>{<li>baz</li>}</ol></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>b[a]r</ol><li>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>b[a]r</li></ol></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>b[a]r</ol><li>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>b[a]r</li></ol></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo{<ol><li>bar</ol>}<li>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol>{<ol><li>bar</li></ol>}</ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li>{<ol><li>bar</ol>}<li>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol>{<ol><li>bar</li></ol>}</ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo]<ol><li>bar</ol><li>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo]</li><li>bar</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo]</li><ol><li>bar</ol><li>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo]</li><li>bar</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]<ol><li>baz</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li><li>baz</li></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]</li><ol><li>baz</ol><li>quz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li><li>baz</li></ol><li>quz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>bar<li>baz</ol><li>[quz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li><li>baz</li><li>[quz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar<li>baz</ol><li>[quz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li><li>baz</li><li>[quz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><ol id=u1><li id=i1>foo</ol><li id=i2>[bar]</li><ol id=u3><li id=i3>baz</ol></ol>",
[["indent",""]],
"<ol><ol id=\"u1\"><li id=\"i1\">foo</li><li id=\"i2\">[bar]</li><li id=\"i3\">baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><ol><li id=i1>foo</ol><li id=i2>[bar]</li><ol id=u3><li id=i3>baz</ol></ol>",
[["indent",""]],
"<ol><ol><li id=\"i1\">foo</li><li id=\"i2\">[bar]</li><li id=\"i3\">baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><ol id=u1><li id=i1>foo</ol><li id=i2>[bar]</li><ol><li id=i3>baz</ol></ol>",
[["indent",""]],
"<ol><ol id=\"u1\"><li id=\"i1\">foo</li><li id=\"i2\">[bar]</li><li id=\"i3\">baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li id=i2>[bar]</li><ol id=u3><li id=i3>baz</ol></ol>",
[["indent",""]],
"<ol><ol id=\"u3\"><li id=\"i2\">[bar]</li><li id=\"i3\">baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><ol id=u1><li id=i1>foo</ol><li id=i2>[bar]</ol>",
[["indent",""]],
"<ol><ol id=\"u1\"><li id=\"i1\">foo</li><li id=\"i2\">[bar]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>b[ar<li>baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>b[ar</li><li>baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo<ol><li>bar]</ol><li>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo</li><ol><li>bar]</li></ol></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo</li><ol><li>bar]</ol><li>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo</li><ol><li>bar]</li></ol></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>b[ar</ol><li>b]az</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>b[ar</li></ol><li>b]az</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>b[ar</ol><li>b]az</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>b[ar</li></ol><li>b]az</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo<ol><li>bar</ol><li>baz]</ol><p>extra",
[["indent",""]],
"<blockquote><ol><li>[foo</li><ol><li>bar</li></ol><li>baz]</li></ol></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo</li><ol><li>bar</ol><li>baz]</ol><p>extra",
[["indent",""]],
"<blockquote><ol><li>[foo</li><ol><li>bar</li></ol><li>baz]</li></ol></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo]<ol><li>bar</ol>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo]</li><li>bar</li></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>[bar]</ol>baz</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><ol><li>[bar]</li></ol></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>bar</ol>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li><li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>[foo<ol><li>bar]</ol>baz</ol>",
[["indent",""]],
"<ol><ol><li>[foo</li><ol><li>bar]</li></ol></ol><li>baz</li></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["foo<!--bar-->[baz]<p>extra",
[["indent",""]],
"<blockquote>foo<!--bar-->[baz]</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["[foo]<!--bar-->baz<p>extra",
[["indent",""]],
"<blockquote>[foo]<!--bar-->baz</blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>foo<!--bar-->{}<p>extra",
[["indent",""]],
"<blockquote><p>foo<!--bar-->{}</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>{}<!--foo-->bar<p>extra",
[["indent",""]],
"<blockquote><p>{}<!--foo-->bar</p></blockquote><p>extra</p>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo</blockquote> <p>[bar]",
[["indent",""]],
"<blockquote><p>foo</p> <p>[bar]</p></blockquote>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<p>[foo]</p> <blockquote><p>bar</blockquote>",
[["indent",""]],
"<blockquote><p>[foo]</p> <p>bar</p></blockquote>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<blockquote><p>foo</blockquote> <p>[bar]</p> <blockquote><p>baz</blockquote>",
[["indent",""]],
"<blockquote><p>foo</p> <p>[bar]</p> <p>baz</p></blockquote>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar</li> </ol><li>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li> <li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar</li></ol> <li>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li> <li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar</li> </ol> <li>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li> <li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>bar</li> </ol></li><li>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li> <li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>bar</li></ol></li> <li>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li> <li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<ol><li>bar</li> </ol></li> <li>[baz]</ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>bar</li> <li>[baz]</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]</li> <ol><li>baz</ol></ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li> <li>baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]</li><ol> <li>baz</ol></ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li> <li>baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]</li> <ol> <li>baz</ol></ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li> <li>baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar] <ol><li>baz</ol></ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar] </li><li>baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar]<ol> <li>baz</ol></ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar]</li> <li>baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ol><li>foo<li>[bar] <ol> <li>baz</ol></ol>",
[["indent",""]],
"<ol><li>foo</li><ol><li>[bar] </li> <li>baz</li></ol></ol>",
[true],
{"indent":[false,false,"",false,false,""]}],
["<ul><li>a<br>{<br>}</li><li>b</li></ul>",
[["indent",""]],
"<ul><ul><li>a<br>{<br>}</li></ul><li>b</li></ul>",
[true],
{"indent":[false,false,"",false,false,""]}]
]

View file

@ -0,0 +1,587 @@
var browserTests = [
["foo[]bar",
[["inserthorizontalrule",""]],
"foo<hr>{}bar",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<span>foo</span>{}<span>bar</span>",
[["inserthorizontalrule",""]],
"<span>foo</span><hr>{}<span>bar</span>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<span>foo[</span><span>]bar</span>",
[["inserthorizontalrule",""]],
"<span>foo</span><hr>{}<span>bar</span>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo[bar<p>baz]quz",
[["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>quz</p>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<div><b>foo</b>{}<b>bar</b></div>",
[["inserthorizontalrule",""]],
"<div><b>foo</b><hr>{}<b>bar</b></div>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<div><b>foo[</b><b>]bar</b></div>",
[["inserthorizontalrule",""]],
"<div><b>foo</b><hr>{}<b>bar</b></div>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<div><b>foo</b>{<b>bar</b>}<b>baz</b></div>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<div><b>foo</b><hr>{}<b>baz</b></div>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<div><b>foo</b>{<b>bar</b>}<b>baz</b></div>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<div><b>foo</b><hr>{}<b>baz</b></div>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<b>foo[]bar</b>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<b>foo</b><hr>{}<b>bar</b>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<b>foo[]bar</b>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<b>foo</b><hr>{}<b>bar</b>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<b id=abc>foo[]bar</b>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<b id=\"abc\">foo</b><hr>{}<b>bar</b>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<b id=abc>foo[]bar</b>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<b id=\"abc\">foo</b><hr>{}<b>bar</b>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["inserthorizontalrule","abc"]],
"foo<hr>{}baz",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo<b>[bar]</b>baz",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo<b>[bar]</b>baz",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo<b>{bar}</b>baz",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo<b>{bar}</b>baz",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo{<b>bar</b>}baz",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["foo{<b>bar</b>}baz",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"foo<hr>{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<p>[bar]<p>baz",
[["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<p>[bar]<p>baz",
[["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<p>{bar}<p>baz",
[["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<p>{bar}<p>baz",
[["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo{<p>bar</p>}<p>baz",
[["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo{<p>bar</p>}<p>baz",
[["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo[bar]baz</p>",
[["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo[bar]baz</p>",
[["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p id=abc>foo[bar]baz</p>",
[["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p id=\"abc\">foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p id=abc>foo[bar]baz</p>",
[["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p id=\"abc\">foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h1>foo[bar]baz</h1>",
[["inserthorizontalrule",""]],
"<h1>foo</h1><hr>{}<h1>baz</h1>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<b>b[a]r</b>baz</p>",
[["stylewithcss","true"],["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo<b>b</b></p><hr>{}<p><b>r</b>baz</p>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<b>b[a]r</b>baz</p>",
[["stylewithcss","false"],["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo<b>b</b></p><hr>{}<p><b>r</b>baz</p>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"div",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<b>b[a]r</b>baz</p>",
[["stylewithcss","true"],["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo<b>b</b></p><hr>{}<p><b>r</b>baz</p>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo<b>b[a]r</b>baz</p>",
[["stylewithcss","false"],["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo<b>b</b></p><hr>{}<p><b>r</b>baz</p>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"p",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<a>foo[bar]baz</a>",
[["inserthorizontalrule",""]],
"<a>foo</a><hr>{}<a>baz</a>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<a href=/>foo[bar]baz</a>",
[["inserthorizontalrule",""]],
"<a href=\"/\">foo</a><hr>{}<a href=\"/\">baz</a>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<abbr>foo[bar]baz</abbr>",
[["inserthorizontalrule",""]],
"<abbr>foo</abbr><hr>{}<abbr>baz</abbr>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<address>foo[bar]baz</address>",
[["inserthorizontalrule",""]],
"<address>foo<hr>{}baz</address>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<article>foo[bar]baz</article>",
[["inserthorizontalrule",""]],
"<article>foo<hr>{}baz</article>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<aside>foo[bar]baz</aside>",
[["inserthorizontalrule",""]],
"<aside>foo<hr>{}baz</aside>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<b>foo[bar]baz</b>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<b>foo</b><hr>{}<b>baz</b>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<b>foo[bar]baz</b>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<b>foo</b><hr>{}<b>baz</b>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<bdi>foo[bar]baz</bdi>",
[["inserthorizontalrule",""]],
"<bdi>foo</bdi><hr>{}<bdi>baz</bdi>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<bdo dir=rtl>foo[bar]baz</bdo>",
[["inserthorizontalrule",""]],
"<bdo dir=\"rtl\">foo</bdo><hr>{}<bdo dir=\"rtl\">baz</bdo>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<blockquote>foo[bar]baz</blockquote>",
[["inserthorizontalrule",""]],
"<blockquote>foo<hr>{}baz</blockquote>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<table><caption>foo[bar]baz</caption><tr><td>quz</table>",
[["inserthorizontalrule",""]],
"<table><caption>foo<hr>{}baz</caption><tbody><tr><td>quz</td></tr></tbody></table>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<cite>foo[bar]baz</cite>",
[["inserthorizontalrule",""]],
"<cite>foo</cite><hr>{}<cite>baz</cite>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<code>foo[bar]baz</code>",
[["inserthorizontalrule",""]],
"<code>foo</code><hr>{}<code>baz</code>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<dl><dd>foo[bar]baz</dd></dl>",
[["inserthorizontalrule",""]],
"<dl><dd>foo<hr>{}baz</dd></dl>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<del>foo[bar]baz</del>",
[["inserthorizontalrule",""]],
"<del>foo<hr>{}baz</del>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<details>foo[bar]baz</details>",
[["inserthorizontalrule",""]],
"<details>foo<hr>{}baz</details>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<dfn>foo[bar]baz</dfn>",
[["inserthorizontalrule",""]],
"<dfn>foo</dfn><hr>{}<dfn>baz</dfn>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<div>foo[bar]baz</div>",
[["inserthorizontalrule",""]],
"<div>foo<hr>{}baz</div>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<dl><dt>foo[bar]baz</dt></dl>",
[["inserthorizontalrule",""]],
"<dl><dt>foo<hr>{}baz</dt></dl>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<em>foo[bar]baz</em>",
[["inserthorizontalrule",""]],
"<em>foo</em><hr>{}<em>baz</em>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<figure><figcaption>foo[bar]baz</figcaption>quz</figure>",
[["inserthorizontalrule",""]],
"<figure><figcaption>foo<hr>{}baz</figcaption>quz</figure>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<figure>foo[bar]baz</figure>",
[["inserthorizontalrule",""]],
"<figure>foo<hr>{}baz</figure>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<footer>foo[bar]baz</footer>",
[["inserthorizontalrule",""]],
"<footer>foo<hr>{}baz</footer>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h1>foo[bar]baz</h1>",
[["inserthorizontalrule",""]],
"<h1>foo</h1><hr>{}<h1>baz</h1>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h2>foo[bar]baz</h2>",
[["inserthorizontalrule",""]],
"<h2>foo</h2><hr>{}<h2>baz</h2>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h3>foo[bar]baz</h3>",
[["inserthorizontalrule",""]],
"<h3>foo</h3><hr>{}<h3>baz</h3>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h4>foo[bar]baz</h4>",
[["inserthorizontalrule",""]],
"<h4>foo</h4><hr>{}<h4>baz</h4>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h5>foo[bar]baz</h5>",
[["inserthorizontalrule",""]],
"<h5>foo</h5><hr>{}<h5>baz</h5>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<h6>foo[bar]baz</h6>",
[["inserthorizontalrule",""]],
"<h6>foo</h6><hr>{}<h6>baz</h6>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<header>foo[bar]baz</header>",
[["inserthorizontalrule",""]],
"<header>foo<hr>{}baz</header>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<hgroup>foo[bar]baz</hgroup>",
[["inserthorizontalrule",""]],
"<hgroup>foo</hgroup><hr>{}<hgroup>baz</hgroup>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<hgroup><h1>foo[bar]baz</h1></hgroup>",
[["inserthorizontalrule",""]],
"<hgroup><h1>foo</h1></hgroup><hr>{}<hgroup><h1>baz</h1></hgroup>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<i>foo[bar]baz</i>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<i>foo</i><hr>{}<i>baz</i>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<i>foo[bar]baz</i>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<i>foo</i><hr>{}<i>baz</i>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<ins>foo[bar]baz</ins>",
[["inserthorizontalrule",""]],
"<ins>foo<hr>{}baz</ins>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<kbd>foo[bar]baz</kbd>",
[["inserthorizontalrule",""]],
"<kbd>foo</kbd><hr>{}<kbd>baz</kbd>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<mark>foo[bar]baz</mark>",
[["inserthorizontalrule",""]],
"<mark>foo</mark><hr>{}<mark>baz</mark>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<nav>foo[bar]baz</nav>",
[["inserthorizontalrule",""]],
"<nav>foo<hr>{}baz</nav>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<ol><li>foo[bar]baz</li></ol>",
[["inserthorizontalrule",""]],
"<ol><li>foo<hr>{}baz</li></ol>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo[bar]baz</p>",
[["defaultparagraphseparator","div"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<p>foo[bar]baz</p>",
[["defaultparagraphseparator","p"],["inserthorizontalrule",""]],
"<p>foo</p><hr>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<pre>foo[bar]baz</pre>",
[["inserthorizontalrule",""]],
"<pre>foo</pre><hr>{}<pre>baz</pre>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<q>foo[bar]baz</q>",
[["inserthorizontalrule",""]],
"<q>foo</q><hr>{}<q>baz</q>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<ruby>foo[bar]baz<rt>quz</rt></ruby>",
[["inserthorizontalrule",""]],
"<ruby>foo</ruby><hr>{}<ruby>baz<rt>quz</rt></ruby>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<ruby>foo<rt>bar[baz]quz</rt></ruby>",
[["inserthorizontalrule",""]],
"<ruby>foo<rt>bar</rt></ruby><hr>{}<ruby><rt>quz</rt></ruby>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<ruby>foo<rp>bar[baz]quz</rp><rt>qoz</rt><rp>qiz</rp></ruby>",
[["inserthorizontalrule",""]],
"<ruby>foo<rp>bar</rp></ruby><hr>{}<ruby><rp>quz</rp><rt>qoz</rt><rp>qiz</rp></ruby>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<s>foo[bar]baz</s>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<s>foo</s><hr>{}<s>baz</s>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<s>foo[bar]baz</s>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<s>foo</s><hr>{}<s>baz</s>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<samp>foo[bar]baz</samp>",
[["inserthorizontalrule",""]],
"<samp>foo</samp><hr>{}<samp>baz</samp>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<section>foo[bar]baz</section>",
[["inserthorizontalrule",""]],
"<section>foo<hr>{}baz</section>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<small>foo[bar]baz</small>",
[["inserthorizontalrule",""]],
"<small>foo</small><hr>{}<small>baz</small>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<span>foo[bar]baz</span>",
[["inserthorizontalrule",""]],
"<span>foo</span><hr>{}<span>baz</span>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<strong>foo[bar]baz</strong>",
[["inserthorizontalrule",""]],
"<strong>foo</strong><hr>{}<strong>baz</strong>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<sub>foo[bar]baz</sub>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<sub>foo</sub><hr>{}<sub>baz</sub>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<sub>foo[bar]baz</sub>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<sub>foo</sub><hr>{}<sub>baz</sub>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<sup>foo[bar]baz</sup>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<sup>foo</sup><hr>{}<sup>baz</sup>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<sup>foo[bar]baz</sup>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<sup>foo</sup><hr>{}<sup>baz</sup>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<table><tr><td>foo[bar]baz</td></table>",
[["inserthorizontalrule",""]],
"<table><tbody><tr><td>foo<hr>{}baz</td></tr></tbody></table>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<table><tr><th>foo[bar]baz</th></table>",
[["inserthorizontalrule",""]],
"<table><tbody><tr><th>foo<hr>{}baz</th></tr></tbody></table>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<u>foo[bar]baz</u>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<u>foo</u><hr>{}<u>baz</u>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<u>foo[bar]baz</u>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<u>foo</u><hr>{}<u>baz</u>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<ul><li>foo[bar]baz</li></ul>",
[["inserthorizontalrule",""]],
"<ul><li>foo<hr>{}baz</li></ul>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<var>foo[bar]baz</var>",
[["inserthorizontalrule",""]],
"<var>foo</var><hr>{}<var>baz</var>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<acronym>foo[bar]baz</acronym>",
[["inserthorizontalrule",""]],
"<acronym>foo</acronym><hr>{}<acronym>baz</acronym>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<big>foo[bar]baz</big>",
[["inserthorizontalrule",""]],
"<big>foo</big><hr>{}<big>baz</big>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<blink>foo[bar]baz</blink>",
[["inserthorizontalrule",""]],
"<blink>foo</blink><hr>{}<blink>baz</blink>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<center>foo[bar]baz</center>",
[["inserthorizontalrule",""]],
"<center>foo<hr>{}baz</center>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<dir>foo[bar]baz</dir>",
[["inserthorizontalrule",""]],
"<dir>foo</dir><hr>{}<dir>baz</dir>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<dir><li>foo[bar]baz</li></dir>",
[["inserthorizontalrule",""]],
"<dir><li>foo<hr>{}baz</li></dir>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<font>foo[bar]baz</font>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<font>foo</font><hr>{}<font>baz</font>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<font>foo[bar]baz</font>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<font>foo</font><hr>{}<font>baz</font>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<listing>foo[bar]baz</listing>",
[["inserthorizontalrule",""]],
"<listing>foo</listing><hr>{}<listing>baz</listing>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<marquee>foo[bar]baz</marquee>",
[["inserthorizontalrule",""]],
"<marquee>foo</marquee><hr>{}<marquee>baz</marquee>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<nobr>foo[bar]baz</nobr>",
[["inserthorizontalrule",""]],
"<nobr>foo</nobr><hr>{}<nobr>baz</nobr>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<strike>foo[bar]baz</strike>",
[["stylewithcss","true"],["inserthorizontalrule",""]],
"<strike>foo</strike><hr>{}<strike>baz</strike>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<strike>foo[bar]baz</strike>",
[["stylewithcss","false"],["inserthorizontalrule",""]],
"<strike>foo</strike><hr>{}<strike>baz</strike>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthorizontalrule":[false,false,"",false,false,""]}],
["<tt>foo[bar]baz</tt>",
[["inserthorizontalrule",""]],
"<tt>foo</tt><hr>{}<tt>baz</tt>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<xmp>foo[bar]baz</xmp>",
[["inserthorizontalrule",""]],
"<xmp>foo</xmp><hr>{}<xmp>baz</xmp>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<quasit>foo[bar]baz</quasit>",
[["inserthorizontalrule",""]],
"<quasit>foo<hr>{}baz</quasit>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["<table><tr><td>fo[o<td>b]ar</table>",
[["inserthorizontalrule",""]],
"<table><tbody><tr><td>fo<hr>{}</td><td>ar</td></tr></tbody></table>",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}],
["fo[o<span contenteditable=false>bar</span>b]az",
[["inserthorizontalrule",""]],
"fo<hr>{}<span contenteditable=\"false\">bar</span>az",
[true],
{"inserthorizontalrule":[false,false,"",false,false,""]}]
]

View file

@ -0,0 +1,522 @@
var browserTests = [
["foo[]bar",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}bar",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[]bar",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}bar",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar]</span>baz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar]</span>baz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>{bar}</span>baz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>{bar}</span>baz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo{<span style=color:#aBcDeF>bar</span>}baz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo{<span style=color:#aBcDeF>bar</span>}baz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["[foo<span style=color:#aBcDeF>bar]</span>baz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"ab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["[foo<span style=color:#aBcDeF>bar]</span>baz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"ab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["{foo<span style=color:#aBcDeF>bar}</span>baz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"ab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["{foo<span style=color:#aBcDeF>bar}</span>baz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"ab<b>c</b>d{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span>baz]",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span>baz]",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>{bar</span>baz}",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>{bar</span>baz}",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span><span style=color:#fEdCbA>baz]</span>quz",
[["stylewithcss","true"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span><span style=color:#fEdCbA>baz]</span>quz",
[["stylewithcss","false"],["inserthtml","ab<b>c</b>d"]],
"fooab<b>c</b>d{}quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["inserthtml",""]],
"foo[]baz",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["inserthtml","\u0000"]],
"foo[]baz",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["inserthtml","\u0007"]],
"foo\u0007{}baz",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["stylewithcss","true"],["inserthtml","<b>"]],
"foo<b></b>{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["stylewithcss","false"],["inserthtml","<b>"]],
"foo<b></b>{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["stylewithcss","true"],["inserthtml","<b>abc"]],
"foo<b>abc</b>{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["stylewithcss","false"],["inserthtml","<b>abc"]],
"foo<b>abc</b>{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["<p>foo[bar]baz",
[["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<p>foo</p><p>abc</p>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<p>foo[bar]baz",
[["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<p>foo</p><p>abc</p>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<p>foo[bar]baz",
[["defaultparagraphseparator","div"],["inserthtml","<li>abc"]],
"<p>foo</p><div>abc</div>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<p>foo[bar]baz",
[["defaultparagraphseparator","p"],["inserthtml","<li>abc"]],
"<p>foo</p><p>abc</p>{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<ol>{<li>foo</li>}<li>bar</ol>",
[["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<p>abc</p>{}<ol><li>bar</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<ol>{<li>foo</li>}<li>bar</ol>",
[["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<p>abc</p>{}<ol><li>bar</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>foo</li>{<li>bar</li>}<li>baz</ol>",
[["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<ol><li>foo</li></ol><p>abc</p>{}<ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>foo</li>{<li>bar</li>}<li>baz</ol>",
[["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<ol><li>foo</li></ol><p>abc</p>{}<ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>[foo]</li><li>bar</ol>",
[["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<ol><li><p>abc</p>{}</li><li>bar</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>[foo]</li><li>bar</ol>",
[["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<ol><li><p>abc</p>{}</li><li>bar</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<xmp>f[o]o</xmp>",
[["inserthtml","abc"]],
"<xmp>fabc{}o</xmp>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<xmp>f[o]o</xmp>",
[["stylewithcss","true"],["inserthtml","<b>abc</b>"]],
"<xmp>f<b>abc</b>{}o</xmp>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["<xmp>f[o]o</xmp>",
[["stylewithcss","false"],["inserthtml","<b>abc</b>"]],
"<xmp>f<b>abc</b>{}o</xmp>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["<script>f[o]o</script>bar",
[["inserthtml","abc"]],
"<script>fabc{}o</script>bar",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<script>f[o]o</script>bar",
[["stylewithcss","true"],["inserthtml","<b>abc</b>"]],
"<script>f<b>abc</b>{}o</script>bar",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["<script>f[o]o</script>bar",
[["stylewithcss","false"],["inserthtml","<b>abc</b>"]],
"<script>f<b>abc</b>{}o</script>bar",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["<a>f[o]o</a>",
[["inserthtml","<a>abc</a>"]],
"<a>f</a><a>abc</a>{}<a>o</a>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<a href=.>f[o]o</a>",
[["inserthtml","<a href=/>abc</a>"]],
"<a href=\".\">f</a><a href=\"/\">abc</a>{}<a href=\".\">o</a>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p>f[o]o",
[["defaultparagraphseparator","div"],["inserthtml","<hr>"]],
"<p>f</p><hr>{}<p>o</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<p>f[o]o",
[["defaultparagraphseparator","p"],["inserthtml","<hr>"]],
"<p>f</p><hr>{}<p>o</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<b>f[o]o</b>",
[["stylewithcss","true"],["inserthtml","<hr>"]],
"<b>f</b><hr>{}<b>o</b>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["<b>f[o]o</b>",
[["stylewithcss","false"],["inserthtml","<hr>"]],
"<b>f</b><hr>{}<b>o</b>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["<h1>f[o]o</h1>",
[["inserthtml","<h2>abc</h2>"]],
"<h1>f</h1><h2>abc</h2>{}<h1>o</h1>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<table><tr><td>f[o]o</table>",
[["inserthtml","<td>abc</td>"]],
"<table><tbody><tr><td>fabc{}o</td></tr></tbody></table>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["f[o]o",
[["inserthtml","<td>abc</td>"]],
"fabc{}o",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dl><dt>f[o]o<dd>bar</dl>",
[["inserthtml","<dt>abc</dt>"]],
"<dl><dt>f</dt><dt>abc</dt>{}<dt>o</dt><dd>bar</dd></dl>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>b[a]r</dl>",
[["inserthtml","<dt>abc</dt>"]],
"<dl><dt>foo</dt><dd>b</dd><dt>abc</dt>{}<dd>r</dd></dl>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dl><dt>f[o]o<dd>bar</dl>",
[["inserthtml","<dd>abc</dd>"]],
"<dl><dt>f</dt><dd>abc</dd>{}<dt>o</dt><dd>bar</dd></dl>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>b[a]r</dl>",
[["inserthtml","<dd>abc</dd>"]],
"<dl><dt>foo</dt><dd>b</dd><dd>abc</dd>{}<dd>r</dd></dl>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["f[o]o",
[["inserthtml","<dt>abc</dt>"]],
"f<dl><dt>abc</dt>{}</dl>o",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>f[o]o</ol>",
[["inserthtml","<dt>abc</dt>"]],
"<ol><li>f<dl><dt>abc</dt>{}</dl>o</li></ol>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["f[o]o",
[["inserthtml","<dd>abc</dd>"]],
"f<dl><dd>abc</dd>{}</dl>o",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>f[o]o</ol>",
[["inserthtml","<dd>abc</dd>"]],
"<ol><li>f<dl><dd>abc</dd>{}</dl>o</li></ol>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dir><li>f[o]o</dir>",
[["inserthtml","<li>abc</li>"]],
"<dir><li>f</li><li>abc</li>{}<li>o</li></dir>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>f[o]o</ol>",
[["inserthtml","<li>abc</li>"]],
"<ol><li>f</li><li>abc</li>{}<li>o</li></ol>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ul><li>f[o]o</ul>",
[["inserthtml","<li>abc</li>"]],
"<ul><li>f</li><li>abc</li>{}<li>o</li></ul>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dir><li>f[o]o</dir>",
[["inserthtml","<dir><li>abc</dir>"]],
"<dir><li>f<dir><li>abc</li></dir>{}o</li></dir>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>f[o]o</ol>",
[["inserthtml","<dir><li>abc</dir>"]],
"<ol><li>f<dir><li>abc</li></dir>{}o</li></ol>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ul><li>f[o]o</ul>",
[["inserthtml","<dir><li>abc</dir>"]],
"<ul><li>f<dir><li>abc</li></dir>{}o</li></ul>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dir><li>f[o]o</dir>",
[["inserthtml","<ol><li>abc</ol>"]],
"<dir><li>f<ol><li>abc</li></ol>{}o</li></dir>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>f[o]o</ol>",
[["inserthtml","<ol><li>abc</ol>"]],
"<ol><li>f<ol><li>abc</li></ol>{}o</li></ol>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ul><li>f[o]o</ul>",
[["inserthtml","<ol><li>abc</ol>"]],
"<ul><li>f<ol><li>abc</li></ol>{}o</li></ul>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<dir><li>f[o]o</dir>",
[["inserthtml","<ul><li>abc</ul>"]],
"<dir><li>f<ul><li>abc</li></ul>{}o</li></dir>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ol><li>f[o]o</ol>",
[["inserthtml","<ul><li>abc</ul>"]],
"<ol><li>f<ul><li>abc</li></ul>{}o</li></ol>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<ul><li>f[o]o</ul>",
[["inserthtml","<ul><li>abc</ul>"]],
"<ul><li>f<ul><li>abc</li></ul>{}o</li></ul>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["f[o]o",
[["defaultparagraphseparator","div"],["inserthtml","<li>abc</li>"]],
"f<div>abc</div>{}o",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["f[o]o",
[["defaultparagraphseparator","p"],["inserthtml","<li>abc</li>"]],
"f<p>abc</p>{}o",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<nobr>f[o]o</nobr>",
[["inserthtml","<nobr>abc</nobr>"]],
"<nobr>f</nobr><nobr>abc</nobr>{}<nobr>o</nobr>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["f[o]o",
[["inserthtml","<nobr>abc</nobr>"]],
"f<nobr>abc</nobr>{}o",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<font color=blue>foo[]bar</font>",
[["stylewithcss","true"],["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<font color=\"blue\">foo</font><p><span style=\"color:rgb(0, 0, 255)\">abc</span></p>{}<font color=\"blue\">bar</font>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<font color=blue>foo[]bar</font>",
[["stylewithcss","false"],["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<font color=\"blue\">foo</font><p><font color=\"#0000ff\">abc</font></p>{}<font color=\"blue\">bar</font>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"div",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<font color=blue>foo[]bar</font>",
[["stylewithcss","true"],["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<font color=\"blue\">foo</font><p><span style=\"color:rgb(0, 0, 255)\">abc</span></p>{}<font color=\"blue\">bar</font>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<font color=blue>foo[]bar</font>",
[["stylewithcss","false"],["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<font color=\"blue\">foo</font><p><font color=\"#0000ff\">abc</font></p>{}<font color=\"blue\">bar</font>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"p",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=color:blue>foo[]bar</span>",
[["stylewithcss","true"],["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<span style=\"color:rgb(0, 0, 255)\">foo</span><p><span style=\"color:rgb(0, 0, 255)\">abc</span></p>{}<span style=\"color:rgb(0, 0, 255)\">bar</span>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=color:blue>foo[]bar</span>",
[["stylewithcss","false"],["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<span style=\"color:rgb(0, 0, 255)\">foo</span><p><font color=\"#0000ff\">abc</font></p>{}<span style=\"color:rgb(0, 0, 255)\">bar</span>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"div",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=color:blue>foo[]bar</span>",
[["stylewithcss","true"],["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<span style=\"color:rgb(0, 0, 255)\">foo</span><p><span style=\"color:rgb(0, 0, 255)\">abc</span></p>{}<span style=\"color:rgb(0, 0, 255)\">bar</span>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=color:blue>foo[]bar</span>",
[["stylewithcss","false"],["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<span style=\"color:rgb(0, 0, 255)\">foo</span><p><font color=\"#0000ff\">abc</font></p>{}<span style=\"color:rgb(0, 0, 255)\">bar</span>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"p",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=font-variant:small-caps>foo[]bar</span>",
[["stylewithcss","true"],["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<span style=\"font-variant:small-caps\">foo</span><p>abc</p>{}<span style=\"font-variant:small-caps\">bar</span>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"p",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=font-variant:small-caps>foo[]bar</span>",
[["stylewithcss","false"],["defaultparagraphseparator","div"],["inserthtml","<p>abc"]],
"<span style=\"font-variant:small-caps\">foo</span><p>abc</p>{}<span style=\"font-variant:small-caps\">bar</span>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"div",false,false,"div"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=font-variant:small-caps>foo[]bar</span>",
[["stylewithcss","true"],["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<span style=\"font-variant:small-caps\">foo</span><p>abc</p>{}<span style=\"font-variant:small-caps\">bar</span>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"div",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<span style=font-variant:small-caps>foo[]bar</span>",
[["stylewithcss","false"],["defaultparagraphseparator","p"],["inserthtml","<p>abc"]],
"<span style=\"font-variant:small-caps\">foo</span><p>abc</p>{}<span style=\"font-variant:small-caps\">bar</span>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"p",false,false,"p"],"inserthtml":[false,false,"",false,false,""]}],
["<p>[foo]</p>",
[["inserthtml"," "]],
"<p> {}<br></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p>[foo]</p>",
[["stylewithcss","true"],["inserthtml","<span style=display:none></span>"]],
"<p><span style=\"display:none\"></span>{}<br></p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"inserthtml":[false,false,"",false,false,""]}],
["<p>[foo]</p>",
[["stylewithcss","false"],["inserthtml","<span style=display:none></span>"]],
"<p><span style=\"display:none\"></span>{}<br></p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"inserthtml":[false,false,"",false,false,""]}],
["<p>[foo]</p>",
[["inserthtml","<!--abc-->"]],
"<p><!--abc-->{}<br></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p>{}<br></p>",
[["inserthtml","abc"]],
"<p>abc{}</p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p>{}<br></p>",
[["inserthtml","<!--abc-->"]],
"<p><!--abc-->{}<br></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><!--foo-->{}<span><br></span><!--bar--></p>",
[["inserthtml","abc"]],
"<p><!--foo-->abc{}<!--bar--></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><!--foo-->{}<span><br></span><!--bar--></p>",
[["inserthtml","<!--abc-->"]],
"<p><!--foo--><!--abc-->{}<!--bar--><br></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p>{}<span><!--foo--><br><!--bar--></span></p>",
[["inserthtml","abc"]],
"<p>abc{}</p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p>{}<span><!--foo--><br><!--bar--></span></p>",
[["inserthtml","<!--abc-->"]],
"<p><!--abc-->{}<br></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><br>{}</p>",
[["inserthtml","abc"]],
"<p><br>abc{}</p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><br>{}</p>",
[["inserthtml","<!--abc-->"]],
"<p><br><!--abc-->{}</p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><!--foo--><span><br></span>{}<!--bar--></p>",
[["inserthtml","abc"]],
"<p><!--foo--><span><br></span>abc{}<!--bar--></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><!--foo--><span><br></span>{}<!--bar--></p>",
[["inserthtml","<!--abc-->"]],
"<p><!--foo--><span><br></span><!--abc-->{}<!--bar--></p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><span><!--foo--><br><!--bar--></span>{}</p>",
[["inserthtml","abc"]],
"<p><span><!--foo--><br><!--bar--></span>abc{}</p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}],
["<p><span><!--foo--><br><!--bar--></span>{}</p>",
[["inserthtml","<!--abc-->"]],
"<p><span><!--foo--><br><!--bar--></span><!--abc-->{}</p>",
[true],
{"inserthtml":[false,false,"",false,false,""]}]
]

View file

@ -0,0 +1,352 @@
var browserTests = [
["foo[]bar",
[["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<span>foo</span>{}<span>bar</span>",
[["insertimage","/img/lion.svg"]],
"<span>foo</span><img src=\"/img/lion.svg\">{}<span>bar</span>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<span>foo[</span><span>]bar</span>",
[["insertimage","/img/lion.svg"]],
"<span>foo<img src=\"/img/lion.svg\">{}</span><span>bar</span>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["insertimage",""]],
"foo[bar]baz",
[false],
{"insertimage":[false,false,"",false,false,""]}],
["foo[bar]baz",
[["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar]</span>baz",
[["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>{bar}</span>baz",
[["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo{<span style=color:#aBcDeF>bar</span>}baz",
[["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["[foo<span style=color:#aBcDeF>bar]</span>baz",
[["stylewithcss","true"],["insertimage","/img/lion.svg"]],
"<img src=\"/img/lion.svg\">{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertimage":[false,false,"",false,false,""]}],
["[foo<span style=color:#aBcDeF>bar]</span>baz",
[["stylewithcss","false"],["insertimage","/img/lion.svg"]],
"<img src=\"/img/lion.svg\">{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertimage":[false,false,"",false,false,""]}],
["{foo<span style=color:#aBcDeF>bar}</span>baz",
[["stylewithcss","true"],["insertimage","/img/lion.svg"]],
"<img src=\"/img/lion.svg\">{}baz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertimage":[false,false,"",false,false,""]}],
["{foo<span style=color:#aBcDeF>bar}</span>baz",
[["stylewithcss","false"],["insertimage","/img/lion.svg"]],
"<img src=\"/img/lion.svg\">{}baz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertimage":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span>baz]",
[["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>{bar</span>baz}",
[["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span><span style=color:#fEdCbA>baz]</span>quz",
[["stylewithcss","true"],["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>quz",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertimage":[false,false,"",false,false,""]}],
["foo<span style=color:#aBcDeF>[bar</span><span style=color:#fEdCbA>baz]</span>quz",
[["stylewithcss","false"],["insertimage","/img/lion.svg"]],
"foo<span style=\"color:rgb(171, 205, 239)\"><img src=\"/img/lion.svg\">{}</span>quz",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertimage":[false,false,"",false,false,""]}],
["foo<b>[bar]</b>baz",
[["insertimage","/img/lion.svg"]],
"foo<b><img src=\"/img/lion.svg\">{}</b>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<b>{bar}</b>baz",
[["insertimage","/img/lion.svg"]],
"foo<b><img src=\"/img/lion.svg\">{}</b>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo{<b>bar</b>}baz",
[["insertimage","/img/lion.svg"]],
"foo<b><img src=\"/img/lion.svg\">{}</b>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<span>[bar]</span>baz",
[["insertimage","/img/lion.svg"]],
"foo<span><img src=\"/img/lion.svg\">{}</span>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo<span>{bar}</span>baz",
[["insertimage","/img/lion.svg"]],
"foo<span><img src=\"/img/lion.svg\">{}</span>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo{<span>bar</span>}baz",
[["insertimage","/img/lion.svg"]],
"foo<span><img src=\"/img/lion.svg\">{}</span>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<b>foo[bar</b><i>baz]quz</i>",
[["insertimage","/img/lion.svg"]],
"<b>foo<img src=\"/img/lion.svg\">{}</b><i>quz</i>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p>foo</p><p>[bar]</p><p>baz</p>",
[["insertimage","/img/lion.svg"]],
"<p>foo</p><p><img src=\"/img/lion.svg\">{}</p><p>baz</p>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p>foo</p><p>{bar}</p><p>baz</p>",
[["insertimage","/img/lion.svg"]],
"<p>foo</p><p><img src=\"/img/lion.svg\">{}</p><p>baz</p>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p>foo</p>{<p>bar</p>}<p>baz</p>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo</p><img src=\"/img/lion.svg\">{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo</p>{<p>bar</p>}<p>baz</p>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo</p><img src=\"/img/lion.svg\">{}<p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p>baz]quz",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p>baz]quz",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<div>baz]quz</div>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<div>baz]quz</div>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<h1>baz]quz</h1>",
[["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<div>foo[bar</div><p>baz]quz",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<div>foo<img src=\"/img/lion.svg\">{}quz</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<div>foo[bar</div><p>baz]quz",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<div>foo<img src=\"/img/lion.svg\">{}quz</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<blockquote>foo[bar</blockquote><pre>baz]quz</pre>",
[["insertimage","/img/lion.svg"]],
"<blockquote>foo<img src=\"/img/lion.svg\">{}quz</blockquote>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p><b>foo[bar</b><p>baz]quz",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p><b>foo</b><img src=\"/img/lion.svg\">{}quz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p><b>foo[bar</b><p>baz]quz",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p><b>foo</b><img src=\"/img/lion.svg\">{}quz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<div><p>foo[bar</div><p>baz]quz",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<div><p>foo<img src=\"/img/lion.svg\">{}quz</p></div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<div><p>foo[bar</div><p>baz]quz",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<div><p>foo<img src=\"/img/lion.svg\">{}quz</p></div>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<blockquote><p>baz]quz<p>qoz</blockquote",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p><blockquote><p>qoz</p></blockquote>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<blockquote><p>baz]quz<p>qoz</blockquote",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}quz</p><blockquote><p>qoz</p></blockquote>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p style=color:blue>baz]quz",
[["stylewithcss","true"],["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}<span style=\"color:rgb(0, 0, 255)\">quz</span></p>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p style=color:blue>baz]quz",
[["stylewithcss","false"],["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}<font color=\"#0000ff\">quz</font></p>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"div",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p style=color:blue>baz]quz",
[["stylewithcss","true"],["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}<span style=\"color:rgb(0, 0, 255)\">quz</span></p>",
[true,true,true],
{"stylewithcss":[false,false,"",false,true,""],"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p style=color:blue>baz]quz",
[["stylewithcss","false"],["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}<font color=\"#0000ff\">quz</font></p>",
[true,true,true],
{"stylewithcss":[false,true,"",false,false,""],"defaultparagraphseparator":[false,false,"p",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p><b>baz]quz</b>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}<b>quz</b></p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[bar<p><b>baz]quz</b>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}<b>quz</b></p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<div><p>foo<p>[bar<p>baz]</div>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<div><p>foo</p><p><img src=\"/img/lion.svg\">{}</p></div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<div><p>foo<p>[bar<p>baz]</div>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<div><p>foo</p><p><img src=\"/img/lion.svg\">{}</p></div>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["foo[<br>]bar",
[["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p><p>]bar</p>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p><p>]bar</p>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p><p>]bar<br>baz</p>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar<br>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p><p>]bar<br>baz</p>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar<br>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["foo[<p>]bar</p>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["foo[<p>]bar</p>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["foo[<p>]bar<br>baz</p>",
[["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar<p>baz</p>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo[<p>]bar</p>baz",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar<br>baz",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["foo[<p>]bar</p>baz",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar<br>baz",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p>]bar",
[["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar</p>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p>]bar<br>baz",
[["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar</p>baz",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<p>foo[</p>]bar<p>baz</p>",
[["insertimage","/img/lion.svg"]],
"<p>foo<img src=\"/img/lion.svg\">{}bar</p><p>baz</p>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo[<div><p>]bar</div>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["foo[<div><p>]bar</div>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["<div><p>foo[</p></div>]bar",
[["insertimage","/img/lion.svg"]],
"<div><p>foo<img src=\"/img/lion.svg\">{}bar</p></div>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["foo[<div><p>]bar</p>baz</div>",
[["defaultparagraphseparator","div"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar<div>baz</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertimage":[false,false,"",false,false,""]}],
["foo[<div><p>]bar</p>baz</div>",
[["defaultparagraphseparator","p"],["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar<div>baz</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertimage":[false,false,"",false,false,""]}],
["foo[<div>]bar<p>baz</p></div>",
[["insertimage","/img/lion.svg"]],
"foo<img src=\"/img/lion.svg\">{}bar<div><p>baz</p></div>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<div><p>foo</p>bar[</div>]baz",
[["insertimage","/img/lion.svg"]],
"<div><p>foo</p>bar<img src=\"/img/lion.svg\">{}baz</div>",
[true],
{"insertimage":[false,false,"",false,false,""]}],
["<div>foo<p>bar[</p></div>]baz",
[["insertimage","/img/lion.svg"]],
"<div>foo<p>bar<img src=\"/img/lion.svg\">{}baz</p></div>",
[true],
{"insertimage":[false,false,"",false,false,""]}]
]

View file

@ -0,0 +1,832 @@
var browserTests = [
["foo[bar]baz",
[["insertlinebreak",""]],
"foo<br>{}baz",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["fo[o<table><tr><td>b]ar</table>",
[["insertlinebreak",""]],
"fo<br>{}<br><table><tbody><tr><td>ar</td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tr><td>[foo<td>bar]<tr><td>baz<td>quz</table>",
[["insertlinebreak",""]],
"<table><tbody><tr><td><br>{}<br></td><td><br></td></tr><tr><td>baz</td><td>quz</td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<tr><td>baz<td>quz</table>",
[["insertlinebreak",""]],
"<table><tbody>{}<tr><td><br></td><td><br></td></tr><tr><td>baz</td><td>quz</td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tr><td>fo[o</table>b]ar",
[["insertlinebreak",""]],
"<table><tbody><tr><td>fo<br>{}<br></td></tr></tbody></table>ar",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tr><td>fo[o<td>b]ar<td>baz</table>",
[["insertlinebreak",""]],
"<table><tbody><tr><td>fo<br>{}<br></td><td>ar</td><td>baz</td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["{<table><tr><td>foo</table>}",
[["insertlinebreak",""]],
"<br>{}<br>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tr><td>[foo]</table>",
[["insertlinebreak",""]],
"<table><tbody><tr><td><br>{}<br></td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>[foo]<li>bar</ol>",
[["insertlinebreak",""]],
"<ol><li><br>{}<br></li><li>bar</li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>f[o]o<li>bar</ol>",
[["insertlinebreak",""]],
"<ol><li>f<br>{}o</li><li>bar</li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["[]foo",
[["insertlinebreak",""]],
"<br>{}foo",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["foo[]",
[["insertlinebreak",""]],
"foo<br>{}<br>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<span>foo[]</span>",
[["insertlinebreak",""]],
"<span>foo<br>{}<br></span>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["foo[]<br>",
[["insertlinebreak",""]],
"foo<br>{}<br>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["foo[]bar",
[["insertlinebreak",""]],
"foo<br>{}bar",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address>[]foo</address>",
[["insertlinebreak",""]],
"<address><br>{}foo</address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address>foo[]</address>",
[["insertlinebreak",""]],
"<address>foo<br>{}<br></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address>foo[]<br></address>",
[["insertlinebreak",""]],
"<address>foo<br>{}<br></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address>foo[]bar</address>",
[["insertlinebreak",""]],
"<address>foo<br>{}bar</address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div>[]foo</div>",
[["insertlinebreak",""]],
"<div><br>{}foo</div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div>foo[]</div>",
[["insertlinebreak",""]],
"<div>foo<br>{}<br></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div>foo[]<br></div>",
[["insertlinebreak",""]],
"<div>foo<br>{}<br></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div>foo[]bar</div>",
[["insertlinebreak",""]],
"<div>foo<br>{}bar</div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>[]foo<dd>bar</dl>",
[["insertlinebreak",""]],
"<dl><dt><br>{}foo</dt><dd>bar</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo[]<dd>bar</dl>",
[["insertlinebreak",""]],
"<dl><dt>foo<br>{}<br></dt><dd>bar</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo[]<br><dd>bar</dl>",
[["insertlinebreak",""]],
"<dl><dt>foo<br>{}<br></dt><dd>bar</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo[]bar<dd>baz</dl>",
[["insertlinebreak",""]],
"<dl><dt>foo<br>{}bar</dt><dd>baz</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>[]bar</dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd><br>{}bar</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>bar[]</dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd>bar<br>{}<br></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>bar[]<br></dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd>bar<br>{}<br></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>bar[]baz</dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd>bar<br>{}baz</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>[]foo</h1>",
[["insertlinebreak",""]],
"<h1><br>{}foo</h1>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo[]</h1>",
[["insertlinebreak",""]],
"<h1>foo<br>{}<br></h1>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo[]<br></h1>",
[["insertlinebreak",""]],
"<h1>foo<br>{}<br></h1>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo[]bar</h1>",
[["insertlinebreak",""]],
"<h1>foo<br>{}bar</h1>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>[]foo</ol>",
[["insertlinebreak",""]],
"<ol><li><br>{}foo</li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>foo[]</ol>",
[["insertlinebreak",""]],
"<ol><li>foo<br>{}<br></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>foo[]<br></ol>",
[["insertlinebreak",""]],
"<ol><li>foo<br>{}<br></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>foo[]bar</ol>",
[["insertlinebreak",""]],
"<ol><li>foo<br>{}bar</li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>[]foo</p>",
[["insertlinebreak",""]],
"<p><br>{}foo</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo[]</p>",
[["insertlinebreak",""]],
"<p>foo<br>{}<br></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo[]<br></p>",
[["insertlinebreak",""]],
"<p>foo<br>{}<br></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo[]bar</p>",
[["insertlinebreak",""]],
"<p>foo<br>{}bar</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>[]foo</pre>",
[["insertlinebreak",""]],
"<pre><br>{}foo</pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo[]</pre>",
[["insertlinebreak",""]],
"<pre>foo<br>{}<br></pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo[]<br></pre>",
[["insertlinebreak",""]],
"<pre>foo<br>{}<br></pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo[]bar</pre>",
[["insertlinebreak",""]],
"<pre>foo<br>{}bar</pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo[]<br><br></pre>",
[["insertlinebreak",""]],
"<pre>foo<br>{}<br><br></pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo<br>{}<br></pre>",
[["insertlinebreak",""]],
"<pre>foo<br><br>{}<br></pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo&#10;[]</pre>",
[["insertlinebreak",""]],
"<pre>foo\n<br>{}<br></pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo[]&#10;</pre>",
[["insertlinebreak",""]],
"<pre>foo<br>{}\n</pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<pre>foo&#10;[]&#10;</pre>",
[["insertlinebreak",""]],
"<pre>foo\n<br>{}\n</pre>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<xmp>foo[]bar</xmp>",
[["insertlinebreak",""]],
"<xmp>foo[]bar</xmp>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<script>foo[]bar</script>baz",
[["insertlinebreak",""]],
"<script>foo[]bar</script>baz",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<listing>foo[]bar</listing>",
[["insertlinebreak",""]],
"<listing>foo<br>{}bar</listing>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>{}<br></li></ol>",
[["insertlinebreak",""]],
"<ol><li><br>{}<br></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["foo<ol><li>{}<br></li></ol>",
[["insertlinebreak",""]],
"foo<ol><li><br>{}<br></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>{}<br></li></ol>foo",
[["insertlinebreak",""]],
"<ol><li><br>{}<br></li></ol>foo",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>foo<li>{}<br></ol>",
[["insertlinebreak",""]],
"<ol><li>foo</li><li><br>{}<br></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>{}<br><li>bar</ol>",
[["insertlinebreak",""]],
"<ol><li><br>{}<br></li><li>bar</li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li>foo</li><ul><li>{}<br></ul></ol>",
[["insertlinebreak",""]],
"<ol><li>foo</li><ul><li><br>{}<br></li></ul></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>{}<br></dt></dl>",
[["insertlinebreak",""]],
"<dl><dt><br>{}<br></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>{}<br></dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd><br>{}<br></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>{}<br><dd>bar</dl>",
[["insertlinebreak",""]],
"<dl><dt><br>{}<br></dt><dd>bar</dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>bar<dl><dt>{}<br><dd>baz</dl></dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd>bar<dl><dt><br>{}<br></dt><dd>baz</dd></dl></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt>foo<dd>bar<dl><dt>baz<dd>{}<br></dl></dl>",
[["insertlinebreak",""]],
"<dl><dt>foo</dt><dd>bar<dl><dt>baz</dt><dd><br>{}<br></dd></dl></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo[bar</h1><p>baz]quz</p>",
[["defaultparagraphseparator","div"],["insertlinebreak",""]],
"<h1>foo<br>{}quz</h1>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo[bar</h1><p>baz]quz</p>",
[["defaultparagraphseparator","p"],["insertlinebreak",""]],
"<h1>foo<br>{}quz</h1>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo[bar</p><h1>baz]quz</h1>",
[["insertlinebreak",""]],
"<p>foo<br>{}quz</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo</p>{}<br>",
[["insertlinebreak",""]],
"<p>foo</p><br>{}<br>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["{}<br><p>foo</p>",
[["insertlinebreak",""]],
"<br>{}<br><p>foo</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo</p>{}<br><h1>bar</h1>",
[["insertlinebreak",""]],
"<p>foo</p><br>{}<br><h1>bar</h1>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo</h1>{}<br><p>bar</p>",
[["insertlinebreak",""]],
"<h1>foo</h1><br>{}<br><p>bar</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<h1>foo</h1>{}<br><h2>bar</h2>",
[["insertlinebreak",""]],
"<h1>foo</h1><br>{}<br><h2>bar</h2>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo</p><h1>[bar]</h1><p>baz</p>",
[["insertlinebreak",""]],
"<p>foo</p><h1><br>{}<br></h1><p>baz</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo</p>{<h1>bar</h1>}<p>baz</p>",
[["insertlinebreak",""]],
"<p>foo</p><br>{}<br><p>baz</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tr><td>foo[]bar</table>",
[["insertlinebreak",""]],
"<table><tbody><tr><td>foo<br>{}bar</td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<table><tr><td><p>foo[]bar</table>",
[["insertlinebreak",""]],
"<table><tbody><tr><td><p>foo<br>{}bar</p></td></tr></tbody></table>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote>[]foo</blockquote>",
[["insertlinebreak",""]],
"<blockquote><br>{}foo</blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote>foo[]</blockquote>",
[["insertlinebreak",""]],
"<blockquote>foo<br>{}<br></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote>foo[]<br></blockquote>",
[["insertlinebreak",""]],
"<blockquote>foo<br>{}<br></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote>foo[]bar</blockquote>",
[["insertlinebreak",""]],
"<blockquote>foo<br>{}bar</blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote><p>[]foo</blockquote>",
[["insertlinebreak",""]],
"<blockquote><p><br>{}foo</p></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote><p>foo[]</blockquote>",
[["insertlinebreak",""]],
"<blockquote><p>foo<br>{}<br></p></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote><p>foo[]bar</blockquote>",
[["insertlinebreak",""]],
"<blockquote><p>foo<br>{}bar</p></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote><p>foo[]<p>bar</blockquote>",
[["insertlinebreak",""]],
"<blockquote><p>foo<br>{}<br></p><p>bar</p></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<blockquote><p>foo[]bar<p>baz</blockquote>",
[["insertlinebreak",""]],
"<blockquote><p>foo<br>{}bar</p><p>baz</p></blockquote>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<span>foo[]bar</span>",
[["insertlinebreak",""]],
"<span>foo<br>{}bar</span>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<span>foo[]bar</span>baz",
[["insertlinebreak",""]],
"<span>foo<br>{}bar</span>baz",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<b>foo[]bar</b>",
[["insertlinebreak",""]],
"<b>foo<br>{}bar</b>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<b>foo[]bar</b>baz",
[["insertlinebreak",""]],
"<b>foo<br>{}bar</b>baz",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<b>foo[]</b>bar",
[["insertlinebreak",""]],
"<b>foo<br>{}</b>bar",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["foo<b>[]bar</b>",
[["insertlinebreak",""]],
"foo<b><br>{}bar</b>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<b>foo[]</b><i>bar</i>",
[["insertlinebreak",""]],
"<b>foo<br>{}</b><i>bar</i>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<b id=x class=y>foo[]bar</b>",
[["insertlinebreak",""]],
"<b id=\"x\" class=\"y\">foo<br>{}bar</b>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<i><b>foo[]bar</b>baz</i>",
[["insertlinebreak",""]],
"<i><b>foo<br>{}bar</b>baz</i>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p><b>foo[]bar</b></p>",
[["insertlinebreak",""]],
"<p><b>foo<br>{}bar</b></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p><b>[]foo</b></p>",
[["insertlinebreak",""]],
"<p><b><br>{}foo</b></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p><b id=x class=y>foo[]bar</b></p>",
[["insertlinebreak",""]],
"<p><b id=\"x\" class=\"y\">foo<br>{}bar</b></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><b>foo[]bar</b></div>",
[["insertlinebreak",""]],
"<div><b>foo<br>{}bar</b></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<a href=foo>foo[]bar</a>",
[["insertlinebreak",""]],
"<a href=\"foo\">foo<br>{}bar</a>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<a href=foo>foo[]bar</a>baz",
[["insertlinebreak",""]],
"<a href=\"foo\">foo<br>{}bar</a>baz",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<a href=foo>foo[]</a>bar",
[["insertlinebreak",""]],
"<a href=\"foo\">foo<br>{}</a>bar",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["foo<a href=foo>[]bar</a>",
[["insertlinebreak",""]],
"foo<a href=\"foo\"><br>{}bar</a>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo[]<!--bar-->",
[["insertlinebreak",""]],
"<p>foo<br>{}<br><!--bar--></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p><!--foo-->[]bar",
[["insertlinebreak",""]],
"<p><!--foo--><br>{}bar</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo<span style=color:#aBcDeF>[bar]</span>baz",
[["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}</span>baz</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo<span style=color:#aBcDeF>{bar}</span>baz",
[["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}</span>baz</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo{<span style=color:#aBcDeF>bar</span>}baz",
[["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}</span>baz</p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>[foo<span style=color:#aBcDeF>bar]</span>baz",
[["stylewithcss","true"],["insertlinebreak",""]],
"<p><br>{}baz</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertlinebreak":[false,false,"",false,false,""]}],
["<p>[foo<span style=color:#aBcDeF>bar]</span>baz",
[["stylewithcss","false"],["insertlinebreak",""]],
"<p><br>{}baz</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertlinebreak":[false,false,"",false,false,""]}],
["<p>{foo<span style=color:#aBcDeF>bar}</span>baz",
[["stylewithcss","true"],["insertlinebreak",""]],
"<p><br>{}baz</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertlinebreak":[false,false,"",false,false,""]}],
["<p>{foo<span style=color:#aBcDeF>bar}</span>baz",
[["stylewithcss","false"],["insertlinebreak",""]],
"<p><br>{}baz</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo<span style=color:#aBcDeF>[bar</span>baz]",
[["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}<br></span></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo<span style=color:#aBcDeF>{bar</span>baz}",
[["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}<br></span></p>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo<span style=color:#aBcDeF>[bar</span><span style=color:#fEdCbA>baz]</span>quz",
[["stylewithcss","true"],["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}</span>quz</p>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertlinebreak":[false,false,"",false,false,""]}],
["<p>foo<span style=color:#aBcDeF>[bar</span><span style=color:#fEdCbA>baz]</span>quz",
[["stylewithcss","false"],["insertlinebreak",""]],
"<p>foo<span style=\"color:rgb(171, 205, 239)\"><br>{}</span>quz</p>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertlinebreak":[false,false,"",false,false,""]}],
["<ul contenteditable><li>{}<br></ul>",
[["insertlinebreak",""]],
"<ul contenteditable=\"\"><li><br>{}<br></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul contenteditable><li>foo[]</ul>",
[["insertlinebreak",""]],
"<ul contenteditable=\"\"><li>foo<br>{}<br></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div contenteditable=false><ul contenteditable><li>{}<br></ul></div>",
[["insertlinebreak",""]],
"<div contenteditable=\"false\"><ul contenteditable=\"\"><li><br>{}<br></li></ul></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div contenteditable=false><ul contenteditable><li>foo[]</ul></div>",
[["insertlinebreak",""]],
"<div contenteditable=\"false\"><ul contenteditable=\"\"><li>foo<br>{}<br></li></ul></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address><p>foo[]</address>",
[["insertlinebreak",""]],
"<address><p>foo<br>{}<br></p></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt><p>foo[]</dl>",
[["insertlinebreak",""]],
"<dl><dt><p>foo<br>{}<br></p></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dd><p>foo[]</dl>",
[["insertlinebreak",""]],
"<dl><dd><p>foo<br>{}<br></p></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li><p>foo[]</ol>",
[["insertlinebreak",""]],
"<ol><li><p>foo<br>{}<br></p></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul><li><p>foo[]</ul>",
[["insertlinebreak",""]],
"<ul><li><p>foo<br>{}<br></p></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address><div>foo[]</address>",
[["insertlinebreak",""]],
"<address><div>foo<br>{}<br></div></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt><div>foo[]</dl>",
[["insertlinebreak",""]],
"<dl><dt><div>foo<br>{}<br></div></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dd><div>foo[]</dl>",
[["insertlinebreak",""]],
"<dl><dd><div>foo<br>{}<br></div></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li><div>foo[]</ol>",
[["insertlinebreak",""]],
"<ol><li><div>foo<br>{}<br></div></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul><li><div>foo[]</ul>",
[["insertlinebreak",""]],
"<ul><li><div>foo<br>{}<br></div></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><p>foo[]</div>",
[["insertlinebreak",""]],
"<div><p>foo<br>{}<br></p></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><div>foo[]</div>",
[["insertlinebreak",""]],
"<div><div>foo<br>{}<br></div></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address><p>[]foo</address>",
[["insertlinebreak",""]],
"<address><p><br>{}foo</p></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt><p>[]foo</dl>",
[["insertlinebreak",""]],
"<dl><dt><p><br>{}foo</p></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dd><p>[]foo</dl>",
[["insertlinebreak",""]],
"<dl><dd><p><br>{}foo</p></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li><p>[]foo</ol>",
[["insertlinebreak",""]],
"<ol><li><p><br>{}foo</p></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul><li><p>[]foo</ul>",
[["insertlinebreak",""]],
"<ul><li><p><br>{}foo</p></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address><div>[]foo</address>",
[["insertlinebreak",""]],
"<address><div><br>{}foo</div></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt><div>[]foo</dl>",
[["insertlinebreak",""]],
"<dl><dt><div><br>{}foo</div></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dd><div>[]foo</dl>",
[["insertlinebreak",""]],
"<dl><dd><div><br>{}foo</div></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li><div>[]foo</ol>",
[["insertlinebreak",""]],
"<ol><li><div><br>{}foo</div></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul><li><div>[]foo</ul>",
[["insertlinebreak",""]],
"<ul><li><div><br>{}foo</div></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><p>[]foo</div>",
[["insertlinebreak",""]],
"<div><p><br>{}foo</p></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><div>[]foo</div>",
[["insertlinebreak",""]],
"<div><div><br>{}foo</div></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address><p>foo[]bar</address>",
[["insertlinebreak",""]],
"<address><p>foo<br>{}bar</p></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt><p>foo[]bar</dl>",
[["insertlinebreak",""]],
"<dl><dt><p>foo<br>{}bar</p></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dd><p>foo[]bar</dl>",
[["insertlinebreak",""]],
"<dl><dd><p>foo<br>{}bar</p></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li><p>foo[]bar</ol>",
[["insertlinebreak",""]],
"<ol><li><p>foo<br>{}bar</p></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul><li><p>foo[]bar</ul>",
[["insertlinebreak",""]],
"<ul><li><p>foo<br>{}bar</p></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<address><div>foo[]bar</address>",
[["insertlinebreak",""]],
"<address><div>foo<br>{}bar</div></address>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dt><div>foo[]bar</dl>",
[["insertlinebreak",""]],
"<dl><dt><div>foo<br>{}bar</div></dt></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<dl><dd><div>foo[]bar</dl>",
[["insertlinebreak",""]],
"<dl><dd><div>foo<br>{}bar</div></dd></dl>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li><div>foo[]bar</ol>",
[["insertlinebreak",""]],
"<ol><li><div>foo<br>{}bar</div></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ul><li><div>foo[]bar</ul>",
[["insertlinebreak",""]],
"<ul><li><div>foo<br>{}bar</div></li></ul>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><p>foo[]bar</div>",
[["insertlinebreak",""]],
"<div><p>foo<br>{}bar</p></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div><div>foo[]bar</div>",
[["insertlinebreak",""]],
"<div><div>foo<br>{}bar</div></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li class=a id=x><p class=b id=y>foo[]</ol>",
[["insertlinebreak",""]],
"<ol><li class=\"a\" id=\"x\"><p class=\"b\" id=\"y\">foo<br>{}<br></p></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div class=a id=x><div class=b id=y>foo[]</div></div>",
[["insertlinebreak",""]],
"<div class=\"a\" id=\"x\"><div class=\"b\" id=\"y\">foo<br>{}<br></div></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div class=a id=x><p class=b id=y>foo[]</div>",
[["insertlinebreak",""]],
"<div class=\"a\" id=\"x\"><p class=\"b\" id=\"y\">foo<br>{}<br></p></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li class=a id=x><p class=b id=y>[]foo</ol>",
[["insertlinebreak",""]],
"<ol><li class=\"a\" id=\"x\"><p class=\"b\" id=\"y\"><br>{}foo</p></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div class=a id=x><div class=b id=y>[]foo</div></div>",
[["insertlinebreak",""]],
"<div class=\"a\" id=\"x\"><div class=\"b\" id=\"y\"><br>{}foo</div></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div class=a id=x><p class=b id=y>[]foo</div>",
[["insertlinebreak",""]],
"<div class=\"a\" id=\"x\"><p class=\"b\" id=\"y\"><br>{}foo</p></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<ol><li class=a id=x><p class=b id=y>foo[]bar</ol>",
[["insertlinebreak",""]],
"<ol><li class=\"a\" id=\"x\"><p class=\"b\" id=\"y\">foo<br>{}bar</p></li></ol>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div class=a id=x><div class=b id=y>foo[]bar</div></div>",
[["insertlinebreak",""]],
"<div class=\"a\" id=\"x\"><div class=\"b\" id=\"y\">foo<br>{}bar</div></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}],
["<div class=a id=x><p class=b id=y>foo[]bar</div>",
[["insertlinebreak",""]],
"<div class=\"a\" id=\"x\"><p class=\"b\" id=\"y\">foo<br>{}bar</p></div>",
[true],
{"insertlinebreak":[false,false,"",false,false,""]}]
]

View file

@ -0,0 +1,677 @@
var browserTests = [
["foo[]bar",
[["insertorderedlist",""]],
"<ol><li>foo[]bar</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo[bar]baz",
[["insertorderedlist",""]],
"<ol><li>foo[bar]baz</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<br>[bar]",
[["insertorderedlist",""]],
"foo<ol><li>[bar]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["f[oo<br>b]ar<br>baz",
[["insertorderedlist",""]],
"<ol><li>f[oo</li><li>b]ar</li></ol>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo]<br>bar</p>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><p>bar</p>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo<ol><li>bar]</ol>baz",
[["insertorderedlist",""]],
"<ol><li>[foo</li><li>bar]</li></ol>baz",
[true],
{"insertorderedlist":[true,false,"",false,true,""]}],
["foo<ol><li>[bar</ol>baz]",
[["insertorderedlist",""]],
"foo<ol><li>[bar</li><li>baz]</li></ol>",
[true],
{"insertorderedlist":[true,false,"",false,true,""]}],
["[foo<ul><li>bar]</ul>baz",
[["insertorderedlist",""]],
"<ol><li>[foo</li><li>bar]</li></ol>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<ul><li>[bar</ul>baz]",
[["insertorderedlist",""]],
"foo<ol><li>[bar</li><li>baz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<ul><li>[bar</ul><ol><li>baz]</ol>quz",
[["insertorderedlist",""]],
"foo<ol><li>[bar</li><li>baz]</li></ol>quz",
[true],
{"insertorderedlist":[true,false,"",false,true,""]}],
["foo<ol><li>[bar</ol><ul><li>baz]</ul>quz",
[["insertorderedlist",""]],
"foo<ol><li>[bar</li><li>baz]</li></ol>quz",
[true],
{"insertorderedlist":[true,false,"",false,true,""]}],
["<table><tbody><tr><td>foo<td>b[a]r<td>baz</table>",
[["insertorderedlist",""]],
"<table><tbody><tr><td>foo</td><td><ol><li>b[a]r</li></ol></td><td>baz</td></tr></tbody></table>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<table><tbody><tr><td>fo[o<td>b]ar<td>baz</table>",
[["insertorderedlist",""]],
"<table><tbody><tr><td><ol><li>fo[o</li></ol></td><td><ol><li>b]ar</li></ol></td><td>baz</td></tr></tbody></table>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["{<table><tr><td>foo<td>bar<td>baz</table>}",
[["insertorderedlist",""]],
"<ol><li>{<table><tbody><tr><td>foo</td><td>bar</td><td>baz</td></tr></tbody></table>}</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<p>foo<p>[bar]<p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<p>foo</p><ol><li>[bar]</li></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>foo<p>[bar]<p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>foo</p><ol><li>[bar]</li></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>foo<blockquote>[bar]</blockquote><p>baz",
[["insertorderedlist",""]],
"<p>foo</p><blockquote><ol><li>[bar]</li></ol></blockquote><p>baz</p>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<dl><dt>foo<dd>[bar]<dt>baz<dd>quz</dl>",
[["insertorderedlist",""]],
"<dl><dt>foo</dt><dd><ol><li>[bar]</li></ol></dd><dt>baz</dt><dd>quz</dd></dl>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<dl><dt>foo<dd>bar<dt>[baz]<dd>quz</dl>",
[["insertorderedlist",""]],
"<dl><dt>foo</dt><dd>bar</dd><dt><ol><li>[baz]</li></ol></dt><dd>quz</dd></dl>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<p>bar]<p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>[foo</li><li>bar]</li></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<p>bar]<p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>[foo</li><li>bar]</li></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<blockquote>bar]</blockquote><p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<blockquote>bar]</blockquote><p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<dl><dt>[foo<dd>bar]<dt>baz<dd>quz</dl>",
[["insertorderedlist",""]],
"<dl><dt><ol><li>[foo</li></ol></dt><dd><ol><li>bar]</li></ol></dd><dt>baz</dt><dd>quz</dd></dl>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<dl><dt>foo<dd>[bar<dt>baz]<dd>quz</dl>",
[["insertorderedlist",""]],
"<dl><dt>foo</dt><dd><ol><li>[bar</li></ol></dd><dt><ol><li>baz]</li></ol></dt><dd>quz</dd></dl>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<blockquote><p>bar]<p>baz</blockquote>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><blockquote><p>baz</p></blockquote>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<blockquote><p>bar]<p>baz</blockquote>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><blockquote><p>baz</p></blockquote>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo<li>[bar]<li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><div>[bar]</div><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar]<li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><p>[bar]</p><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo</ol>[bar]",
[["insertorderedlist",""]],
"<ol><li>foo</li><li>[bar]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo]<ol><li>bar</ol>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li><li>bar</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol>[bar]<ol><li>baz</ol>",
[["insertorderedlist",""]],
"<ol><li>foo</li><li>[bar]</li><li>baz</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><ol><li>[foo]</ol></ol>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol>",
[true],
{"insertorderedlist":[false,true,"",false,true,""]}],
["<ol><li>[foo]<br>bar<li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo]<br>bar</div><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo]<br>bar<li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo]<br>bar</p><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<br>[bar]<li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>foo<br>[bar]</div><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<br>[bar]<li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>foo<br>[bar]</p><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li><div>[foo]</div>bar<li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo]</div><div>bar</div><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li><div>[foo]</div>bar<li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<div>[foo]</div><p>bar</p><ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<ol><li>[bar]<li>baz</ol><li>quz</ol>",
[["insertorderedlist",""]],
"<ol><li>foo</li><li>[bar]</li><ol><li>baz</li></ol><li>quz</li></ol>",
[true],
{"insertorderedlist":[false,true,"",false,true,""]}],
["<ol><li>foo<ol><li>bar<li>[baz]</ol><li>quz</ol>",
[["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>bar</li></ol><li>[baz]</li><li>quz</li></ol>",
[true],
{"insertorderedlist":[false,true,"",false,true,""]}],
["<ol><li>foo</li><ol><li>[bar]<li>baz</ol><li>quz</ol>",
[["insertorderedlist",""]],
"<ol><li>foo</li><li>[bar]</li><ol><li>baz</li></ol><li>quz</li></ol>",
[true],
{"insertorderedlist":[false,true,"",false,true,""]}],
["<ol><li>foo</li><ol><li>bar<li>[baz]</ol><li>quz</ol>",
[["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>bar</li></ol><li>[baz]</li><li>quz</li></ol>",
[true],
{"insertorderedlist":[false,true,"",false,true,""]}],
["<ol><li>[foo]<ol><li>bar</ol><li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo]</div><ol><ol><li>bar</li></ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo]<ol><li>bar</ol><li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo]</p><ol><ol><li>bar</li></ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo]</li><ol><li>bar</ol><li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo]</div><ol><ol><li>bar</li></ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo]</li><ol><li>bar</ol><li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo]</p><ol><ol><li>bar</li></ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar]<ol><li>baz</ol><li>quz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><div>[bar]</div><ol><ol><li>baz</li></ol><li>quz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar]<ol><li>baz</ol><li>quz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><p>[bar]</p><ol><ol><li>baz</li></ol><li>quz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar]</li><ol><li>baz</ol><li>quz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><div>[bar]</div><ol><ol><li>baz</li></ol><li>quz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar]</li><ol><li>baz</ol><li>quz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><p>[bar]</p><ol><ol><li>baz</li></ol><li>quz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<ol><li>bar<li>baz</ol><li>[quz]</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo<ol><li>bar</li><li>baz</li></ol></li></ol><div>[quz]</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<ol><li>bar<li>baz</ol><li>[quz]</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo<ol><li>bar</li><li>baz</li></ol></li></ol><p>[quz]</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar<li>baz</ol><li>[quz]</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>bar</li><li>baz</li></ol></ol><div>[quz]</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo</li><ol><li>bar<li>baz</ol><li>[quz]</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>bar</li><li>baz</li></ol></ol><p>[quz]</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar<li>baz]</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><div>[bar</div><div>baz]</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<li>[bar<li>baz]</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li></ol><p>[bar</p><p>baz]</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo<ol><li>bar]</ol><li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo</div><ol><li>bar]</li><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>[foo<ol><li>bar]</ol><li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo</p><ol><li>bar]</li><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>foo<ol><li>b[ar</ol><li>b]az</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li><li>b[ar</li></ol><div>b]az</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>foo<ol><li>b[ar</ol><li>b]az</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li><li>b[ar</li></ol><p>b]az</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>[foo<ol><li>bar</ol><li>baz]</ol><p>extra",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo</div><ol><li>bar</li></ol><div>baz]</div><p>extra</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>[foo<ol><li>bar</ol><li>baz]</ol><p>extra",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo</p><ol><li>bar</li></ol><p>baz]</p><p>extra</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>[foo]<ol><li>bar</ol>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo]</div><ol><ol><li>bar</li></ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo]<ol><li>bar</ol>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo]</p><ol><ol><li>bar</li></ol><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<ol><li>[bar]</ol>baz</ol>",
[["insertorderedlist",""]],
"<ol><li>foo</li><li>[bar]</li><li>baz</li></ol>",
[true],
{"insertorderedlist":[false,true,"",false,true,""]}],
["<ol><li>foo<ol><li>bar</ol>[baz]</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>bar</li></ol></ol><div>[baz]</div>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>foo<ol><li>bar</ol>[baz]</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>bar</li></ol></ol><p>[baz]</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",false,false,""]}],
["<ol><li>[foo<ol><li>bar]</ol>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<div>[foo</div><ol><li>bar]</li><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ol><li>[foo<ol><li>bar]</ol>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>[foo</p><ol><li>bar]</li><li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,true,"",true,false,""]}],
["<ul><li>foo<li>[bar]<li>baz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><li>[bar]</li></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo</ul>[bar]",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><li>[bar]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo]<ul><li>bar</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><ul><li>bar</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo</ul>[bar]<ul><li>baz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><li>[bar]</li></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><ul><li>[foo]</ul></ul>",
[["insertorderedlist",""]],
"<ol><ol><li>[foo]</li></ol></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo]<br>bar<li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]<br>bar</li></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<br>[bar]<li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>foo<br>[bar]</li></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li><div>[foo]</div>bar<li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li><div>[foo]</div>bar</li></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<ul><li>[bar]<li>baz</ul><li>quz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ol><li>[bar]</li></ol><ul><li>baz</li></ul><li>quz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<ul><li>bar<li>[baz]</ul><li>quz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ul><li>bar</li></ul><ol><li>[baz]</li></ol><li>quz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo</li><ul><li>[bar]<li>baz</ul><li>quz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ol><li>[bar]</li></ol><ul><li>baz</li></ul><li>quz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo</li><ul><li>bar<li>[baz]</ul><li>quz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ul><li>bar</li></ul><ol><li>[baz]</li></ol><li>quz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo]<ul><li>bar</ul><li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><ul><ul><li>bar</li></ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo]</li><ul><li>bar</ul><li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><ul><ul><li>bar</li></ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<li>[bar]<ul><li>baz</ul><li>quz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><li>[bar]</li></ol><ul><ul><li>baz</li></ul><li>quz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<li>[bar]</li><ul><li>baz</ul><li>quz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><li>[bar]</li></ol><ul><ul><li>baz</li></ul><li>quz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<ul><li>bar<li>baz</ul><li>[quz]</ul>",
[["insertorderedlist",""]],
"<ul><li>foo<ul><li>bar</li><li>baz</li></ul></li></ul><ol><li>[quz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo</li><ul><li>bar<li>baz</ul><li>[quz]</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ul><li>bar</li><li>baz</li></ul></ul><ol><li>[quz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<li>[bar<li>baz]</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><li>[bar</li><li>baz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo<ul><li>bar]</ul><li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<ul><li>b[ar</ul><li>b]az</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li></ul><ol><ol><li>b[ar</li></ol><li>b]az</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo<ul><li>bar</ul><li>baz]</ul><p>extra",
[["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar</li></ol><li>baz]</li></ol><p>extra</p>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo]<ul><li>bar</ul>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><ul><ul><li>bar</li></ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<ul><li>[bar]</ul>baz</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ol><li>[bar]</li></ol><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>foo<ul><li>bar</ul>[baz]</ul>",
[["insertorderedlist",""]],
"<ul><li>foo</li><ul><li>bar</li></ul></ul><ol><li>[baz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul><li>[foo<ul><li>bar]</ul>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<ol><li>bar</ol><ul><li>[baz]</ul>quz",
[["insertorderedlist",""]],
"foo<ol><li>bar</li><li>[baz]</li></ol>quz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<ol><li>bar</ol><ul><li>[baz</ul>quz]",
[["insertorderedlist",""]],
"foo<ol><li>bar</li><li>[baz</li><li>quz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<ul><li>[bar]</ul><ol><li>baz</ol>quz",
[["insertorderedlist",""]],
"foo<ol><li>[bar]</li><li>baz</li></ol>quz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo<ul><li>bar]</ul><ol><li>baz</ol>quz",
[["insertorderedlist",""]],
"<ol><li>[foo</li><li>bar]</li><li>baz</li></ol>quz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo]<blockquote>bar</blockquote>baz",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><blockquote>bar</blockquote>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<blockquote>[bar]</blockquote>baz",
[["insertorderedlist",""]],
"foo<blockquote><ol><li>[bar]</li></ol></blockquote>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo<blockquote>bar]</blockquote>baz",
[["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol><blockquote>[bar]</blockquote>baz",
[["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>[bar]</li></ol></ol>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo]<blockquote><ol><li>bar</ol></blockquote>baz",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><blockquote><ol><li>bar</li></ol></blockquote>baz",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["foo<blockquote>[bar]<br>baz</blockquote>",
[["insertorderedlist",""]],
"foo<blockquote><ol><li>[bar]</li></ol>baz</blockquote>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["[foo<blockquote>bar]<br>baz</blockquote>",
[["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><blockquote>baz</blockquote>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol><blockquote>[bar]<br>baz</blockquote>",
[["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>[bar]</li></ol></ol><blockquote>baz</blockquote>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo]<blockquote><p>bar</blockquote><p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><blockquote><p>bar</p></blockquote><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo]<blockquote><p>bar</blockquote><p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><blockquote><p>bar</p></blockquote><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>foo<blockquote><p>[bar]</blockquote><p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<p>foo</p><blockquote><ol><li>[bar]</li></ol></blockquote><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>foo<blockquote><p>[bar]</blockquote><p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<p>foo</p><blockquote><ol><li>[bar]</li></ol></blockquote><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<blockquote><p>bar]</blockquote><p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo<blockquote><p>bar]</blockquote><p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>[foo</li><ol><li>bar]</li></ol></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol><blockquote><p>[bar]</blockquote><p>baz",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>[bar]</li></ol></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol><blockquote><p>[bar]</blockquote><p>baz",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li><ol><li>[bar]</li></ol></ol><p>baz</p>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul id=abc><li>foo<li>[bar]<li>baz</ul>",
[["insertorderedlist",""]],
"<ul id=\"abc\"><li>foo</li></ul><ol><li>[bar]</li></ol><ul><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=color:blue><li>foo<li>[bar]<li>baz</ul>",
[["stylewithcss","true"],["insertorderedlist",""]],
"<ul style=\"color:rgb(0, 0, 255)\"><li>foo</li></ul><ol><li><span style=\"color:rgb(0, 0, 255)\">[bar]</span></li></ol><ul style=\"color:rgb(0, 0, 255)\"><li>baz</li></ul>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=color:blue><li>foo<li>[bar]<li>baz</ul>",
[["stylewithcss","false"],["insertorderedlist",""]],
"<ul style=\"color:rgb(0, 0, 255)\"><li>foo</li></ul><ol><li><font color=\"#0000ff\">[bar]</font></li></ol><ul style=\"color:rgb(0, 0, 255)\"><li>baz</li></ul>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=text-indent:1em><li>foo<li>[bar]<li>baz</ul>",
[["stylewithcss","true"],["insertorderedlist",""]],
"<ul style=\"text-indent:1em\"><li>foo</li></ul><ol><li>[bar]</li></ol><ul style=\"text-indent:1em\"><li>baz</li></ul>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=text-indent:1em><li>foo<li>[bar]<li>baz</ul>",
[["stylewithcss","false"],["insertorderedlist",""]],
"<ul style=\"text-indent:1em\"><li>foo</li></ul><ol><li>[bar]</li></ol><ul style=\"text-indent:1em\"><li>baz</li></ul>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul id=abc><li>[foo]<li>bar<li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><ul id=\"abc\"><li>bar</li><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=color:blue><li>[foo]<li>bar<li>baz</ul>",
[["stylewithcss","true"],["insertorderedlist",""]],
"<ol><li><span style=\"color:rgb(0, 0, 255)\">[foo]</span></li></ol><ul style=\"color:rgb(0, 0, 255)\"><li>bar</li><li>baz</li></ul>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=color:blue><li>[foo]<li>bar<li>baz</ul>",
[["stylewithcss","false"],["insertorderedlist",""]],
"<ol><li><font color=\"#0000ff\">[foo]</font></li></ol><ul style=\"color:rgb(0, 0, 255)\"><li>bar</li><li>baz</li></ul>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=text-indent:1em><li>[foo]<li>bar<li>baz</ul>",
[["insertorderedlist",""]],
"<ol><li>[foo]</li></ol><ul style=\"text-indent:1em\"><li>bar</li><li>baz</li></ul>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul id=abc><li>foo<li>bar<li>[baz]</ul>",
[["insertorderedlist",""]],
"<ul id=\"abc\"><li>foo</li><li>bar</li></ul><ol><li>[baz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=color:blue><li>foo<li>bar<li>[baz]</ul>",
[["stylewithcss","true"],["insertorderedlist",""]],
"<ul style=\"color:rgb(0, 0, 255)\"><li>foo</li><li>bar</li></ul><ol><li><span style=\"color:rgb(0, 0, 255)\">[baz]</span></li></ol>",
[true,true],
{"stylewithcss":[false,false,"",false,true,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=color:blue><li>foo<li>bar<li>[baz]</ul>",
[["stylewithcss","false"],["insertorderedlist",""]],
"<ul style=\"color:rgb(0, 0, 255)\"><li>foo</li><li>bar</li></ul><ol><li><font color=\"#0000ff\">[baz]</font></li></ol>",
[true,true],
{"stylewithcss":[false,true,"",false,false,""],"insertorderedlist":[false,false,"",false,true,""]}],
["<ul style=text-indent:1em><li>foo<li>bar<li>[baz]</ul>",
[["insertorderedlist",""]],
"<ul style=\"text-indent:1em\"><li>foo</li><li>bar</li></ul><ol><li>[baz]</li></ol>",
[true],
{"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol> <p>[bar]",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li> <li>[bar]</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol> <p>[bar]",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li> <li>[bar]</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo]</p> <ol><li>bar</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>[foo]</li> <li>bar</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<p>[foo]</p> <ol><li>bar</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>[foo]</li> <li>bar</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol> <p>[bar]</p> <ol><li>baz</ol>",
[["defaultparagraphseparator","div"],["insertorderedlist",""]],
"<ol><li>foo</li> <li>[bar]</li> <li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"p",false,false,"div"],"insertorderedlist":[false,false,"",false,true,""]}],
["<ol><li>foo</ol> <p>[bar]</p> <ol><li>baz</ol>",
[["defaultparagraphseparator","p"],["insertorderedlist",""]],
"<ol><li>foo</li> <li>[bar]</li> <li>baz</li></ol>",
[true,true],
{"defaultparagraphseparator":[false,false,"div",false,false,"p"],"insertorderedlist":[false,false,"",false,true,""]}]
]

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more