Commit e78bb71d authored by tkent@chromium.org's avatar tkent@chromium.org

Fix flakiness of imported/web-platform-tests/html/syntax/parsing/html5lib_testsNN.html.

Root cause:
Our testharnessreport.js removes unnecessary text nodes in a callback registered
by add_completion_callback() [1]. The html5lib tests add other completion
callbacks to show failure reasons, and they run after the callback of
testharnessreport.js.  So, the failure reasons remain in *-expected.txt.

Resolution:
testharness.js doesn't provide a way to specify that "This callback must run at
the end of callbacks." So we delay the text nodes cleanup by setTimeout(done, 0).

[1] https://github.com/w3c/testharness.js/blob/master/docs/api.md#callback-api

BUG=527262

Review URL: https://codereview.chromium.org/1303313006

git-svn-id: svn://svn.chromium.org/blink/trunk@201628 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 7f241e07
...@@ -157,6 +157,8 @@ crbug.com/453312 html5lib/webkit-resumer.html [ Slow ] ...@@ -157,6 +157,8 @@ crbug.com/453312 html5lib/webkit-resumer.html [ Slow ]
crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_template.html [ Slow ] crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_template.html [ Slow ]
crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_tests1.html [ Slow ] crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_tests1.html [ Slow ]
crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_tests16.html [ Slow ] crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_tests16.html [ Slow ]
crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_tests19.html [ Slow ]
crbug.com/490511 imported/web-platform-tests/html/syntax/parsing/html5lib_tests2.html [ Slow ]
# FIXME: These tests might still be buggy and time out. They were marked as Slow on 9/20/2013. # FIXME: These tests might still be buggy and time out. They were marked as Slow on 9/20/2013.
# Double-check the data after they've been running another week or so. # Double-check the data after they've been running another week or so.
......
...@@ -398,8 +398,6 @@ crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processin ...@@ -398,8 +398,6 @@ crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processin
crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-setTimeout.html [ Failure ] crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-setTimeout.html [ Failure ]
crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-setInterval.html [ Failure ] crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-setInterval.html [ Failure ]
crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-setTimeout.html [ Failure ] crbug.com/525889 imported/web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-setTimeout.html [ Failure ]
crbug.com/527262 imported/web-platform-tests/html/syntax/parsing/html5lib_tests19.html [ Failure Pass Slow ]
crbug.com/527262 imported/web-platform-tests/html/syntax/parsing/html5lib_tests2.html [ Failure Pass Slow ]
crbug.com/505364 imported/web-platform-tests/shadow-dom/elements-and-dom-objects/extensions-to-element-interface/methods/elements-001.html [ Failure ] crbug.com/505364 imported/web-platform-tests/shadow-dom/elements-and-dom-objects/extensions-to-element-interface/methods/elements-001.html [ Failure ]
crbug.com/505364 imported/web-platform-tests/shadow-dom/events/event-dispatch/test-003.html [ Failure ] crbug.com/505364 imported/web-platform-tests/shadow-dom/events/event-dispatch/test-003.html [ Failure ]
......
...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) { ...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) {
if (document.readyState === 'loading') { if (document.readyState === 'loading') {
window.addEventListener('load', done); window.addEventListener('load', done);
} else { } else {
done(); setTimeout(done, 0);
} }
}); });
...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) { ...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) {
if (document.readyState === 'loading') { if (document.readyState === 'loading') {
window.addEventListener('load', done); window.addEventListener('load', done);
} else { } else {
done(); setTimeout(done, 0);
} }
}); });
...@@ -10,280 +10,4 @@ FAIL html5lib_tests11.html 791437ece7ba684e00162d1dd79dfe540e3621a7 assert_equal ...@@ -10,280 +10,4 @@ FAIL html5lib_tests11.html 791437ece7ba684e00162d1dd79dfe540e3621a7 assert_equal
PASS html5lib_tests11.html af40d26164229c29b9be77ed6dd7dda780cba55c PASS html5lib_tests11.html af40d26164229c29b9be77ed6dd7dda780cba55c
PASS html5lib_tests11.html 16e68d18f8f0fb81013fe77a30b7d396c5081e5e PASS html5lib_tests11.html 16e68d18f8f0fb81013fe77a30b7d396c5081e5e
Harness: the test ran to completion. Harness: the test ran to completion.
39c50f080b2b9ae9e7a1070679ab97d7b814f9ec
Input
<!DOCTYPE html><body><svg><altGlyph /><altGlyphDef /><altGlyphItem /><animateColor /><animateMotion /><animateTransform /><clipPath /><feBlend /><feColorMatrix /><feComponentTransfer /><feComposite /><feConvolveMatrix /><feDiffuseLighting /><feDisplacementMap /><feDistantLight /><feFlood /><feFuncA /><feFuncB /><feFuncG /><feFuncR /><feGaussianBlur /><feImage /><feMerge /><feMergeNode /><feMorphology /><feOffset /><fePointLight /><feSpecularLighting /><feSpotLight /><feTile /><feTurbulence /><foreignObject /><glyphRef /><linearGradient /><radialGradient /><textPath /></svg>
Expected
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <svg svg>
| <svg altGlyph>
| <svg altGlyphDef>
| <svg altGlyphItem>
| <svg animateColor>
| <svg animateMotion>
| <svg animateTransform>
| <svg clipPath>
| <svg feBlend>
| <svg feColorMatrix>
| <svg feComponentTransfer>
| <svg feComposite>
| <svg feConvolveMatrix>
| <svg feDiffuseLighting>
| <svg feDisplacementMap>
| <svg feDistantLight>
| <svg feFlood>
| <svg feFuncA>
| <svg feFuncB>
| <svg feFuncG>
| <svg feFuncR>
| <svg feGaussianBlur>
| <svg feImage>
| <svg feMerge>
| <svg feMergeNode>
| <svg feMorphology>
| <svg feOffset>
| <svg fePointLight>
| <svg feSpecularLighting>
| <svg feSpotLight>
| <svg feTile>
| <svg feTurbulence>
| <svg foreignObject>
| <svg glyphRef>
| <svg linearGradient>
| <svg radialGradient>
| <svg textPath>
Actual
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <svg svg>
| <svg altglyph>
| <svg altglyphdef>
| <svg altglyphitem>
| <svg animateColor>
| <svg animateMotion>
| <svg animateTransform>
| <svg clipPath>
| <svg feBlend>
| <svg feColorMatrix>
| <svg feComponentTransfer>
| <svg feComposite>
| <svg feConvolveMatrix>
| <svg feDiffuseLighting>
| <svg feDisplacementMap>
| <svg feDistantLight>
| <svg feFlood>
| <svg feFuncA>
| <svg feFuncB>
| <svg feFuncG>
| <svg feFuncR>
| <svg feGaussianBlur>
| <svg feImage>
| <svg feMerge>
| <svg feMergeNode>
| <svg feMorphology>
| <svg feOffset>
| <svg fePointLight>
| <svg feSpecularLighting>
| <svg feSpotLight>
| <svg feTile>
| <svg feTurbulence>
| <svg foreignObject>
| <svg glyphref>
| <svg linearGradient>
| <svg radialGradient>
| <svg textPath>
6d1fa1599f75625fe4d019abb04a064cf6ed39e8
Input
<!DOCTYPE html><body><svg><altglyph /><altglyphdef /><altglyphitem /><animatecolor /><animatemotion /><animatetransform /><clippath /><feblend /><fecolormatrix /><fecomponenttransfer /><fecomposite /><feconvolvematrix /><fediffuselighting /><fedisplacementmap /><fedistantlight /><feflood /><fefunca /><fefuncb /><fefuncg /><fefuncr /><fegaussianblur /><feimage /><femerge /><femergenode /><femorphology /><feoffset /><fepointlight /><fespecularlighting /><fespotlight /><fetile /><feturbulence /><foreignobject /><glyphref /><lineargradient /><radialgradient /><textpath /></svg>
Expected
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <svg svg>
| <svg altGlyph>
| <svg altGlyphDef>
| <svg altGlyphItem>
| <svg animateColor>
| <svg animateMotion>
| <svg animateTransform>
| <svg clipPath>
| <svg feBlend>
| <svg feColorMatrix>
| <svg feComponentTransfer>
| <svg feComposite>
| <svg feConvolveMatrix>
| <svg feDiffuseLighting>
| <svg feDisplacementMap>
| <svg feDistantLight>
| <svg feFlood>
| <svg feFuncA>
| <svg feFuncB>
| <svg feFuncG>
| <svg feFuncR>
| <svg feGaussianBlur>
| <svg feImage>
| <svg feMerge>
| <svg feMergeNode>
| <svg feMorphology>
| <svg feOffset>
| <svg fePointLight>
| <svg feSpecularLighting>
| <svg feSpotLight>
| <svg feTile>
| <svg feTurbulence>
| <svg foreignObject>
| <svg glyphRef>
| <svg linearGradient>
| <svg radialGradient>
| <svg textPath>
Actual
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <svg svg>
| <svg altglyph>
| <svg altglyphdef>
| <svg altglyphitem>
| <svg animateColor>
| <svg animateMotion>
| <svg animateTransform>
| <svg clipPath>
| <svg feBlend>
| <svg feColorMatrix>
| <svg feComponentTransfer>
| <svg feComposite>
| <svg feConvolveMatrix>
| <svg feDiffuseLighting>
| <svg feDisplacementMap>
| <svg feDistantLight>
| <svg feFlood>
| <svg feFuncA>
| <svg feFuncB>
| <svg feFuncG>
| <svg feFuncR>
| <svg feGaussianBlur>
| <svg feImage>
| <svg feMerge>
| <svg feMergeNode>
| <svg feMorphology>
| <svg feOffset>
| <svg fePointLight>
| <svg feSpecularLighting>
| <svg feSpotLight>
| <svg feTile>
| <svg feTurbulence>
| <svg foreignObject>
| <svg glyphref>
| <svg linearGradient>
| <svg radialGradient>
| <svg textPath>
791437ece7ba684e00162d1dd79dfe540e3621a7
Input
<!DOCTYPE html><BODY><SVG><ALTGLYPH /><ALTGLYPHDEF /><ALTGLYPHITEM /><ANIMATECOLOR /><ANIMATEMOTION /><ANIMATETRANSFORM /><CLIPPATH /><FEBLEND /><FECOLORMATRIX /><FECOMPONENTTRANSFER /><FECOMPOSITE /><FECONVOLVEMATRIX /><FEDIFFUSELIGHTING /><FEDISPLACEMENTMAP /><FEDISTANTLIGHT /><FEFLOOD /><FEFUNCA /><FEFUNCB /><FEFUNCG /><FEFUNCR /><FEGAUSSIANBLUR /><FEIMAGE /><FEMERGE /><FEMERGENODE /><FEMORPHOLOGY /><FEOFFSET /><FEPOINTLIGHT /><FESPECULARLIGHTING /><FESPOTLIGHT /><FETILE /><FETURBULENCE /><FOREIGNOBJECT /><GLYPHREF /><LINEARGRADIENT /><RADIALGRADIENT /><TEXTPATH /></SVG>
Expected
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <svg svg>
| <svg altGlyph>
| <svg altGlyphDef>
| <svg altGlyphItem>
| <svg animateColor>
| <svg animateMotion>
| <svg animateTransform>
| <svg clipPath>
| <svg feBlend>
| <svg feColorMatrix>
| <svg feComponentTransfer>
| <svg feComposite>
| <svg feConvolveMatrix>
| <svg feDiffuseLighting>
| <svg feDisplacementMap>
| <svg feDistantLight>
| <svg feFlood>
| <svg feFuncA>
| <svg feFuncB>
| <svg feFuncG>
| <svg feFuncR>
| <svg feGaussianBlur>
| <svg feImage>
| <svg feMerge>
| <svg feMergeNode>
| <svg feMorphology>
| <svg feOffset>
| <svg fePointLight>
| <svg feSpecularLighting>
| <svg feSpotLight>
| <svg feTile>
| <svg feTurbulence>
| <svg foreignObject>
| <svg glyphRef>
| <svg linearGradient>
| <svg radialGradient>
| <svg textPath>
Actual
#document
| <!DOCTYPE html>
| <html>
| <head>
| <body>
| <svg svg>
| <svg altglyph>
| <svg altglyphdef>
| <svg altglyphitem>
| <svg animateColor>
| <svg animateMotion>
| <svg animateTransform>
| <svg clipPath>
| <svg feBlend>
| <svg feColorMatrix>
| <svg feComponentTransfer>
| <svg feComposite>
| <svg feConvolveMatrix>
| <svg feDiffuseLighting>
| <svg feDisplacementMap>
| <svg feDistantLight>
| <svg feFlood>
| <svg feFuncA>
| <svg feFuncB>
| <svg feFuncG>
| <svg feFuncR>
| <svg feGaussianBlur>
| <svg feImage>
| <svg feMerge>
| <svg feMergeNode>
| <svg feMorphology>
| <svg feOffset>
| <svg fePointLight>
| <svg feSpecularLighting>
| <svg feSpotLight>
| <svg feTile>
| <svg feTurbulence>
| <svg foreignObject>
| <svg glyphref>
| <svg linearGradient>
| <svg radialGradient>
| <svg textPath>
...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) { ...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) {
if (document.readyState === 'loading') { if (document.readyState === 'loading') {
window.addEventListener('load', done); window.addEventListener('load', done);
} else { } else {
done(); setTimeout(done, 0);
} }
}); });
...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) { ...@@ -126,6 +126,6 @@ add_completion_callback(function (tests, harness_status) {
if (document.readyState === 'loading') { if (document.readyState === 'loading') {
window.addEventListener('load', done); window.addEventListener('load', done);
} else { } else {
done(); setTimeout(done, 0);
} }
}); });
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment