WebKit Bugzilla
Attachment 338982 Details for
Bug 184935
: Serialize all URLs with double-quotes per CSSOM spec
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Try rebasing
bug-184935-20180427074353.patch (text/plain), 289.00 KB, created by
Chris Nardi
on 2018-04-27 04:43:53 PDT
(
hide
)
Description:
Try rebasing
Filename:
MIME Type:
Creator:
Chris Nardi
Created:
2018-04-27 04:43:53 PDT
Size:
289.00 KB
patch
obsolete
>Subversion Revision: 231091 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index cf702c9c3955bace7e225c3fb8e6f216c6664281..42b4dd637252c5aa0e1077c5bcbb0c76e39ba5b1 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,20 @@ >+2018-04-25 Chris Nardi <cnardi@chromium.org> >+ >+ Serialize all URLs with double-quotes per CSSOM spec >+ https://bugs.webkit.org/show_bug.cgi?id=184935 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ According to https://drafts.csswg.org/cssom/#serialize-a-url, all URLs should be serialized as strings, >+ which means they should have double quotes around the text of the URL. Update our implementation to match >+ this (and Firefox/Chrome). Also remove isCSSTokenizerURL() as this method is no longer needed. >+ >+ Tests: Many LayoutTests updated to use double quotes. >+ >+ * css/CSSMarkup.cpp: >+ (WebCore::serializeString): Remove FIXME as this was already fixed in a previous patch. >+ (WebCore::serializeURL): Remove FIXME and update implementation. >+ > 2018-04-27 Commit Queue <commit-queue@webkit.org> > > Unreviewed, rolling out r231089. >diff --git a/Source/WebCore/css/CSSMarkup.cpp b/Source/WebCore/css/CSSMarkup.cpp >index 81fe8886b840d9428b145cbc77bf30b79071a026..9a75ed59c076f479ffe5de1ed452b3cca7e2c47d 100644 >--- a/Source/WebCore/css/CSSMarkup.cpp >+++ b/Source/WebCore/css/CSSMarkup.cpp >@@ -118,52 +118,8 @@ void serializeIdentifier(const String& identifier, StringBuilder& appendTo, bool > } > } > >-template <typename CharacterType> >-static inline bool isCSSTokenizerURL(const CharacterType* characters, unsigned length) >-{ >- const CharacterType* end = characters + length; >- >- for (; characters != end; ++characters) { >- CharacterType c = characters[0]; >- switch (c) { >- case '!': >- case '#': >- case '$': >- case '%': >- case '&': >- break; >- default: >- if (c < '*') >- return false; >- if (c <= '~') >- break; >- if (c < 128) >- return false; >- } >- } >- >- return true; >-} >- >-// "url" from the CSS tokenizer, minus backslash-escape sequences >-static bool isCSSTokenizerURL(const String& string) >-{ >- unsigned length = string.length(); >- >- if (!length) >- return true; >- >- if (string.is8Bit()) >- return isCSSTokenizerURL(string.characters8(), length); >- return isCSSTokenizerURL(string.characters16(), length); >-} >- > void serializeString(const String& string, StringBuilder& appendTo) > { >- // FIXME: From the CSS OM draft: >- // To serialize a string means to create a string represented by '"' (U+0022). >- // We need to switch to using " instead of ', but this involves patching a large >- // number of tests and changing editing code to not get confused by double quotes. > appendTo.append('"'); > > unsigned index = 0; >@@ -191,12 +147,7 @@ String serializeString(const String& string) > > String serializeURL(const String& string) > { >- // FIXME: URLS must always be double quoted. From the CSS OM draft: >- // To serialize a URL means to create a string represented by "url(", followed by >- // the serialization of the URL as a string, followed by ")". >- // To keep backwards compatibility with existing tests, for now we only quote if needed and >- // we use a single quote. >- return "url(" + (isCSSTokenizerURL(string) ? string : serializeString(string)) + ")"; >+ return "url(" + serializeString(string) + ")"; > } > > String serializeAsStringOrCustomIdent(const String& string) >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index fb73003471b0b8039570baf3b72bb48a687e9e49..bb3c88c3f63b02f3d1a65d2a8ff066a475b09c7e 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,88 @@ >+2018-04-25 Chris Nardi <cnardi@chromium.org> >+ >+ Serialize all URLs with double-quotes per CSSOM spec >+ https://bugs.webkit.org/show_bug.cgi?id=184935 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Update tests to use double quotes when serializing URLs, and fixes for using double quotes in the test. >+ >+ * css3/calc/cross-fade-calc.html: >+ * css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt: >+ * css3/filters/backdrop/backdropfilter-property-computed-style.html: >+ * css3/filters/backdrop/backdropfilter-property-parsing-expected.txt: >+ * css3/filters/backdrop/backdropfilter-property-parsing.html: >+ * css3/filters/filter-property-computed-style-expected.txt: >+ * css3/filters/filter-property-computed-style.html: >+ * css3/filters/filter-property-expected.txt: >+ * css3/filters/filter-property-parsing-expected.txt: >+ * css3/filters/filter-property-parsing.html: >+ * css3/filters/filter-property.html: >+ * css3/filters/unprefixed-expected.txt: >+ * css3/filters/unprefixed.html: >+ * fast/backgrounds/background-shorthand-after-set-backgroundSize-expected.txt: >+ * fast/backgrounds/background-shorthand-after-set-backgroundSize.html: >+ * fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt: >+ * fast/backgrounds/background-shorthand-with-backgroundSize-style.html: >+ * fast/backgrounds/multiple-backgrounds-computed-style-expected.txt: >+ * fast/backgrounds/multiple-backgrounds-computed-style.html: >+ * fast/css/background-position-serialize-expected.txt: >+ * fast/css/cursor-parsing-expected.txt: >+ * fast/css/cursor-parsing-image-set-expected.txt: >+ * fast/css/cursor-parsing-image-set.html: >+ * fast/css/cursor-parsing.html: >+ * fast/css/getComputedStyle/computed-style-border-image-expected.txt: >+ * fast/css/getComputedStyle/computed-style-border-image.html: >+ * fast/css/getComputedStyle/computed-style-cross-fade-expected.txt: >+ * fast/css/getComputedStyle/computed-style-cross-fade.html: >+ * fast/css/getComputedStyle/computed-style-properties-expected.txt: >+ * fast/css/getComputedStyle/computed-style-properties.html: >+ * fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt: >+ * fast/css/getComputedStyle/getComputedStyle-background-shorthand.html: >+ * fast/css/getComputedStyle/getComputedStyle-list-style-shorthand-expected.txt: >+ * fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html: >+ * fast/css/image-set-parsing.html: >+ * fast/css/image-set-setting-expected.txt: >+ * fast/css/image-set-setting.html: >+ * fast/css/image-set-unprefixed-expected.txt: >+ * fast/css/image-set-unprefixed.html: >+ * fast/css/invalid-cursor-property-crash.html: >+ * fast/css/parse-border-image-repeat-null-crash-expected.txt: >+ * fast/css/uri-token-parsing-expected.txt: >+ * fast/css/uri-token-parsing.html: >+ * fast/css/url-with-multi-byte-unicode-escape-expected.txt: >+ * fast/css/url-with-multi-byte-unicode-escape.html: >+ * fast/filter-image/parse-filter-image-expected.txt: >+ * fast/filter-image/parse-filter-image.html: >+ * fast/innerHTML/innerHTML-uri-resolution.html: >+ * fast/inspector-support/cssURLQuotes-expected.txt: >+ * fast/inspector-support/cssURLQuotes.html: >+ * fast/masking/parsing-clip-path-iri-expected.txt: >+ * fast/masking/parsing-clip-path-iri.html: >+ * fast/masking/parsing-mask-expected.txt: >+ * fast/masking/parsing-mask.html: >+ * fast/shapes/parsing/parsing-shape-outside-expected.txt: >+ * fast/shapes/parsing/parsing-shape-outside.html: >+ * fast/shapes/parsing/parsing-test-utils.js: >+ (removeBaseURL): >+ * platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt: >+ * platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt: >+ * platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt: >+ * platform/ios/fast/css/image-set-unprefixed-expected.txt: Removed. >+ * platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt: >+ * platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt: >+ * platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt: >+ * platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt: >+ * platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt: >+ * platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt: >+ * platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt: >+ * resources/image-preload-helper.js: >+ (preloadImagesFromStyle): >+ * svg/css/svg-attribute-parser-mode-expected.txt: >+ * svg/css/svg-attribute-parser-mode.html: >+ * svg/custom/marker-getPropertyValue-expected.txt: >+ * svg/custom/marker-getPropertyValue.svg: >+ > 2018-04-26 Simon Fraser <simon.fraser@apple.com> > > Implement rendering support for the color-filter CSS property >diff --git a/LayoutTests/imported/w3c/ChangeLog b/LayoutTests/imported/w3c/ChangeLog >index 23ba0bc738ac9f7f2a9e6a5dcd9d7f5f60ecaa0a..201bc2e05fac6bd8dd31a69694b8927345b5cda9 100644 >--- a/LayoutTests/imported/w3c/ChangeLog >+++ b/LayoutTests/imported/w3c/ChangeLog >@@ -1,3 +1,17 @@ >+2018-04-25 Chris Nardi <cnardi@chromium.org> >+ >+ Serialize all URLs with double-quotes per CSSOM spec >+ https://bugs.webkit.org/show_bug.cgi?id=184935 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Update expectations for using double quotes when serializing URLs. >+ >+ * web-platform-tests/cssom/serialize-values-expected.txt: >+ * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt: >+ * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt: >+ * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt: >+ > 2018-04-26 Youenn Fablet <youenn@apple.com> > > preflight checker should add a console message when preflight load is blocked >diff --git a/LayoutTests/css3/calc/cross-fade-calc.html b/LayoutTests/css3/calc/cross-fade-calc.html >index 52350926e5a9cf5fc24b61363f821fa51deb42e2..21b93ecf6cacb91fcd6486e25e92b6a07d39b34d 100644 >--- a/LayoutTests/css3/calc/cross-fade-calc.html >+++ b/LayoutTests/css3/calc/cross-fade-calc.html >@@ -11,7 +11,7 @@ > <div id="test"></div> > <script> > const div = document.querySelector("#test"); >- const expected = "cross-fade(url(dummy://example.png), url(dummy://example.png), 0.7)" >+ const expected = 'cross-fade(url("dummy://example.png"), url("dummy://example.png"), 0.7)' > test(function() { > assert_equals(getComputedStyle(div).backgroundImage, expected); > }, "calc() in cross-fade"); >diff --git a/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt b/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt >index 5e025b610d897f9ecce07ff305d9da236b7fadb4..c885c765acf4e3677171fe53b99912fed9e0baf5 100644 >--- a/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt >+++ b/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt >@@ -6,21 +6,21 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > Basic reference : url('#a') > PASS filterStyle.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Bare unquoted reference converting to quoted form : url(#a) > PASS filterStyle.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Multiple references : url('#a') url('#b') > PASS filterStyle.length is 2 >-PASS subRule.cssText is "url(#a)" >-PASS subRule.cssText is "url(#b)" >+PASS subRule.cssText is "url(\"#a\")" >+PASS subRule.cssText is "url(\"#b\")" > > Reference as 2nd value : grayscale(1) url('#a') > PASS filterStyle.length is 2 > PASS subRule.cssText is "grayscale(1)" >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Integer value : grayscale(1) > PASS filterStyle.length is 1 >diff --git a/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style.html b/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style.html >index b1215083dd5b7e86bdb54539758e132687c38222..30dd222914b1cd0d3fd923191f227bc0c0001cc7 100644 >--- a/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style.html >+++ b/LayoutTests/css3/filters/backdrop/backdropfilter-property-computed-style.html >@@ -26,26 +26,26 @@ function testComputedFilterRule(description, rule, expectedLength, expectedTexts > shouldBe("filterStyle.length", `${expectedLength}`); > for (var i = 0; i < expectedLength; i++) { > subRule = filterStyle[i]; >- shouldBe("subRule.cssText", `"${expectedTexts[i]}"`); >+ shouldBeEqualToString("subRule.cssText", expectedTexts[i]); > } > stylesheet.deleteRule(0); > } > > testComputedFilterRule("Basic reference", > "url('#a')", 1, >- ["url(#a)"]); >+ ['url("#a")']); > > testComputedFilterRule("Bare unquoted reference converting to quoted form", > "url(#a)", 1, >- ["url(#a)"]); >+ ['url("#a")']); > > testComputedFilterRule("Multiple references", > "url('#a') url('#b')", 2, >- ["url(#a)", "url(#b)"]); >+ ['url("#a")', 'url("#b")']); > > testComputedFilterRule("Reference as 2nd value", > "grayscale(1) url('#a')", 2, >- ["grayscale(1)", "url(#a)"]); >+ ["grayscale(1)", 'url("#a")']); > > testComputedFilterRule("Integer value", > "grayscale(1)", 1, >diff --git a/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing-expected.txt b/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing-expected.txt >index 378efe0e92c222c001616a49d9f2e88f6cc315cc..2f6374ae8f118d731955362887d7b06bed443a69 100644 >--- a/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing-expected.txt >+++ b/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing-expected.txt >@@ -7,44 +7,44 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > Basic reference : url('#a') > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "url(#a)" >+PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "url(\"#a\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Bare unquoted reference converting to quoted form : url(#a) > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "url(#a)" >+PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "url(\"#a\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Multiple references : url('#a') url('#b') > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "url(#a) url(#b)" >+PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "url(\"#a\") url(\"#b\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 2 >-PASS subRule.cssText is "url(#a)" >-PASS subRule.cssText is "url(#b)" >+PASS subRule.cssText is "url(\"#a\")" >+PASS subRule.cssText is "url(\"#b\")" > > Reference as 2nd value : grayscale(1) url('#a') > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "grayscale(1) url(#a)" >+PASS declaration.getPropertyValue('-webkit-backdrop-filter') is "grayscale(1) url(\"#a\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 2 > PASS subRule.cssText is "grayscale(1)" >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Integer value : grayscale(1) > PASS cssRule.type is 1 >diff --git a/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing.html b/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing.html >index 2c82698c8eccd1200e0d64f234526eae9edff2a9..e3037c2a5aba4779b4f82656ebc92ba1db541285 100644 >--- a/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing.html >+++ b/LayoutTests/css3/filters/backdrop/backdropfilter-property-parsing.html >@@ -46,7 +46,7 @@ function testFilterRule(description, rule, expectedLength, expectedValue, expect > > declaration = cssRule.style; > shouldBe("declaration.length", "1"); >- shouldBe("declaration.getPropertyValue('-webkit-backdrop-filter')", `"${expectedValue}"`); >+ shouldBeEqualToString("declaration.getPropertyValue('-webkit-backdrop-filter')", expectedValue); > > filterRule = declaration.getPropertyCSSValue('-webkit-backdrop-filter'); > shouldBeType("filterRule", "CSSValueList"); >@@ -56,7 +56,7 @@ function testFilterRule(description, rule, expectedLength, expectedValue, expect > if (filterRule) { > for (var i = 0; i < expectedLength; i++) { > subRule = filterRule[i]; >- shouldBe("subRule.cssText", `"${expectedTexts[i]}"`); >+ shouldBeEqualToString("subRule.cssText", expectedTexts[i]); > } > } > >@@ -81,20 +81,20 @@ function testInvalidFilterRule(description, rule) > } > > testFilterRule("Basic reference", >- "url('#a')", 1, "url(#a)", >- ["url(#a)"]); >+ "url('#a')", 1, 'url("#a")', >+ ['url("#a")']); > > testFilterRule("Bare unquoted reference converting to quoted form", >- "url(#a)", 1, "url(#a)", >- ["url(#a)"]); >+ "url(#a)", 1, 'url("#a")', >+ ['url("#a")']); > > testFilterRule("Multiple references", >- "url('#a') url('#b')", 2, "url(#a) url(#b)", >- ["url(#a)", "url(#b)"]); >+ "url('#a') url('#b')", 2, 'url("#a") url("#b")', >+ ['url("#a")', 'url("#b")']); > > testFilterRule("Reference as 2nd value", >- "grayscale(1) url('#a')", 2, "grayscale(1) url(#a)", >- ["grayscale(1)", "url(#a)"]); >+ "grayscale(1) url('#a')", 2, 'grayscale(1) url("#a")', >+ ["grayscale(1)", 'url("#a")']); > > testFilterRule("Integer value", > "grayscale(1)", 1, "grayscale(1)", >diff --git a/LayoutTests/css3/filters/filter-property-computed-style-expected.txt b/LayoutTests/css3/filters/filter-property-computed-style-expected.txt >index eb41ff9a6d6a6f61b48ad9d57ebe6425f594bbfd..42a3540c7fef9582a24c2bfc0894acce0e0ebd58 100644 >--- a/LayoutTests/css3/filters/filter-property-computed-style-expected.txt >+++ b/LayoutTests/css3/filters/filter-property-computed-style-expected.txt >@@ -6,21 +6,21 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > Basic reference : url('#a') > PASS filterStyle.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Bare unquoted reference converting to quoted form : url(#a) > PASS filterStyle.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Multiple references : url('#a') url('#b') > PASS filterStyle.length is 2 >-PASS subRule.cssText is "url(#a)" >-PASS subRule.cssText is "url(#b)" >+PASS subRule.cssText is "url(\"#a\")" >+PASS subRule.cssText is "url(\"#b\")" > > Reference as 2nd value : grayscale(1) url('#a') > PASS filterStyle.length is 2 > PASS subRule.cssText is "grayscale(1)" >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Integer value : grayscale(1) > PASS filterStyle.length is 1 >diff --git a/LayoutTests/css3/filters/filter-property-computed-style.html b/LayoutTests/css3/filters/filter-property-computed-style.html >index 648200199ba6674cf6c5bb5ed9a796b28b89120a..f73c5821155f9f2155f7b280a690503a802d8734 100644 >--- a/LayoutTests/css3/filters/filter-property-computed-style.html >+++ b/LayoutTests/css3/filters/filter-property-computed-style.html >@@ -26,26 +26,26 @@ function testComputedFilterRule(description, rule, expectedLength, expectedTexts > shouldBe("filterStyle.length", `${expectedLength}`); > for (var i = 0; i < expectedLength; i++) { > subRule = filterStyle[i]; >- shouldBe("subRule.cssText", `"${expectedTexts[i]}"`); >+ shouldBeEqualToString("subRule.cssText", expectedTexts[i]); > } > stylesheet.deleteRule(0); > } > > testComputedFilterRule("Basic reference", > "url('#a')", 1, >- ["url(#a)"]); >+ ['url("#a")']); > > testComputedFilterRule("Bare unquoted reference converting to quoted form", > "url(#a)", 1, >- ["url(#a)"]); >+ ['url("#a")']); > > testComputedFilterRule("Multiple references", > "url('#a') url('#b')", 2, >- ["url(#a)", "url(#b)"]); >+ ['url("#a")', 'url("#b")']); > > testComputedFilterRule("Reference as 2nd value", > "grayscale(1) url('#a')", 2, >- ["grayscale(1)", "url(#a)"]); >+ ["grayscale(1)", 'url("#a")']); > > testComputedFilterRule("Integer value", > "grayscale(1)", 1, >diff --git a/LayoutTests/css3/filters/filter-property-expected.txt b/LayoutTests/css3/filters/filter-property-expected.txt >index 886baf5ba82eb002a7e213888477b0551c46190d..eabc775b8c72c8f62f1240401576456fdc046965 100644 >--- a/LayoutTests/css3/filters/filter-property-expected.txt >+++ b/LayoutTests/css3/filters/filter-property-expected.txt >@@ -5,7 +5,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('-webkit-filter') is 'url(#a) url(#b)' >+PASS declaration.getPropertyValue('-webkit-filter') is 'url("#a") url("#b")' > PASS successfullyParsed is true > > TEST COMPLETE >diff --git a/LayoutTests/css3/filters/filter-property-parsing-expected.txt b/LayoutTests/css3/filters/filter-property-parsing-expected.txt >index 24a8d1cff630acf2a39828380b072571e11d4f3b..29a77554f570b26174d37f0a51726e97cf362e34 100644 >--- a/LayoutTests/css3/filters/filter-property-parsing-expected.txt >+++ b/LayoutTests/css3/filters/filter-property-parsing-expected.txt >@@ -7,44 +7,44 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > Basic reference : url('#a') > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('filter') is "url(#a)" >+PASS declaration.getPropertyValue('filter') is "url(\"#a\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Bare unquoted reference converting to quoted form : url(#a) > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('filter') is "url(#a)" >+PASS declaration.getPropertyValue('filter') is "url(\"#a\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Multiple references : url('#a') url('#b') > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('filter') is "url(#a) url(#b)" >+PASS declaration.getPropertyValue('filter') is "url(\"#a\") url(\"#b\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 2 >-PASS subRule.cssText is "url(#a)" >-PASS subRule.cssText is "url(#b)" >+PASS subRule.cssText is "url(\"#a\")" >+PASS subRule.cssText is "url(\"#b\")" > > Reference as 2nd value : grayscale(1) url('#a') > PASS cssRule.type is 1 > PASS declaration.length is 1 >-PASS declaration.getPropertyValue('filter') is "grayscale(1) url(#a)" >+PASS declaration.getPropertyValue('filter') is "grayscale(1) url(\"#a\")" > PASS jsWrapperClass(filterRule) is 'CSSValueList' > PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueListPrototype' > PASS jsWrapperClass(filterRule.constructor) is 'Function' > PASS filterRule.length is 2 > PASS subRule.cssText is "grayscale(1)" >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Integer value : grayscale(1) > PASS cssRule.type is 1 >diff --git a/LayoutTests/css3/filters/filter-property-parsing.html b/LayoutTests/css3/filters/filter-property-parsing.html >index 8eb5a1faf8dfc2d677af6140bc3053c897524770..fbd8bff9e1787aae26de8c6f51a1f74ac8ced793 100644 >--- a/LayoutTests/css3/filters/filter-property-parsing.html >+++ b/LayoutTests/css3/filters/filter-property-parsing.html >@@ -46,7 +46,7 @@ function testFilterRule(description, rule, expectedLength, expectedValue, expect > > declaration = cssRule.style; > shouldBe("declaration.length", "1"); >- shouldBe("declaration.getPropertyValue('filter')", `"${expectedValue}"`); >+ shouldBeEqualToString("declaration.getPropertyValue('filter')", expectedValue); > > filterRule = declaration.getPropertyCSSValue("filter"); > shouldBeType("filterRule", "CSSValueList"); >@@ -56,7 +56,7 @@ function testFilterRule(description, rule, expectedLength, expectedValue, expect > if (filterRule) { > for (var i = 0; i < expectedLength; i++) { > subRule = filterRule[i]; >- shouldBe("subRule.cssText", `"${expectedTexts[i]}"`); >+ shouldBeEqualToString("subRule.cssText", expectedTexts[i]); > } > } > >@@ -81,20 +81,20 @@ function testInvalidFilterRule(description, rule) > } > > testFilterRule("Basic reference", >- "url('#a')", 1, "url(#a)", >- ["url(#a)"]); >+ "url('#a')", 1, 'url("#a")', >+ ['url("#a")']); > > testFilterRule("Bare unquoted reference converting to quoted form", >- "url(#a)", 1, "url(#a)", >- ["url(#a)"]); >+ "url(#a)", 1, 'url("#a")', >+ ['url("#a")']); > > testFilterRule("Multiple references", >- "url('#a') url('#b')", 2, "url(#a) url(#b)", >- ["url(#a)", "url(#b)"]); >+ "url('#a') url('#b')", 2, 'url("#a") url("#b")', >+ ['url("#a")', 'url("#b")']); > > testFilterRule("Reference as 2nd value", >- "grayscale(1) url('#a')", 2, "grayscale(1) url(#a)", >- ["grayscale(1)", "url(#a)"]); >+ "grayscale(1) url('#a')", 2, 'grayscale(1) url("#a")', >+ ["grayscale(1)", 'url("#a")']); > > testFilterRule("Integer value", > "grayscale(1)", 1, "grayscale(1)", >diff --git a/LayoutTests/css3/filters/filter-property.html b/LayoutTests/css3/filters/filter-property.html >index bbbd89fb3bfb63f048abb0deaa1c562d8981722f..c9f0857384d4490dea1aff64fe5d1aa181a9d4dd 100644 >--- a/LayoutTests/css3/filters/filter-property.html >+++ b/LayoutTests/css3/filters/filter-property.html >@@ -22,7 +22,7 @@ shouldBe("cssRule.type", "1"); > > var declaration = cssRule.style; > shouldBe("declaration.length", "1"); >-shouldBe("declaration.getPropertyValue('-webkit-filter')", "'url(#a) url(#b)'"); >+shouldBe("declaration.getPropertyValue('-webkit-filter')", "'url(\"#a\") url(\"#b\")'"); > > successfullyParsed = true; > </script> >diff --git a/LayoutTests/css3/filters/unprefixed-expected.txt b/LayoutTests/css3/filters/unprefixed-expected.txt >index 8cb6561ebc900d6fb43b21203879ee8256b4e964..912eac75306ced41ea4b09e982bae51aff17d358 100644 >--- a/LayoutTests/css3/filters/unprefixed-expected.txt >+++ b/LayoutTests/css3/filters/unprefixed-expected.txt >@@ -6,21 +6,21 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > Basic reference : url('#a') > PASS filterStyle.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Bare unquoted reference converting to quoted form : url(#a) > PASS filterStyle.length is 1 >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Multiple references : url('#a') url('#b') > PASS filterStyle.length is 2 >-PASS subRule.cssText is "url(#a)" >-PASS subRule.cssText is "url(#b)" >+PASS subRule.cssText is "url(\"#a\")" >+PASS subRule.cssText is "url(\"#b\")" > > Reference as 2nd value : grayscale(1) url('#a') > PASS filterStyle.length is 2 > PASS subRule.cssText is "grayscale(1)" >-PASS subRule.cssText is "url(#a)" >+PASS subRule.cssText is "url(\"#a\")" > > Integer value : grayscale(1) > PASS filterStyle.length is 1 >diff --git a/LayoutTests/css3/filters/unprefixed.html b/LayoutTests/css3/filters/unprefixed.html >index 287b07365ba3cfae3dca2c81708f9a2207c89c08..fb56f732f0bf59a2586f6b7c6bae7f463dd31c8b 100644 >--- a/LayoutTests/css3/filters/unprefixed.html >+++ b/LayoutTests/css3/filters/unprefixed.html >@@ -26,26 +26,26 @@ function testComputedFilterRule(description, rule, expectedLength, expectedTexts > shouldBe("filterStyle.length", "" + expectedLength); > for (var i = 0; i < expectedLength; i++) { > subRule = filterStyle[i]; >- shouldBe("subRule.cssText", `"${expectedTexts[i]}"`); >+ shouldBeEqualToString("subRule.cssText", expectedTexts[i]); > } > stylesheet.deleteRule(0); > } > > testComputedFilterRule("Basic reference", > "url('#a')", 1, >- ["url(#a)"]); >+ ['url("#a")']); > > testComputedFilterRule("Bare unquoted reference converting to quoted form", > "url(#a)", 1, >- ["url(#a)"]); >+ ['url("#a")']); > > testComputedFilterRule("Multiple references", > "url('#a') url('#b')", 2, >- ["url(#a)", "url(#b)"]); >+ ['url("#a")', 'url("#b")']); > > testComputedFilterRule("Reference as 2nd value", > "grayscale(1) url('#a')", 2, >- ["grayscale(1)", "url(#a)"]); >+ ["grayscale(1)", 'url("#a")']); > > testComputedFilterRule("Integer value", > "grayscale(1)", 1, >diff --git a/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize-expected.txt b/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize-expected.txt >index c5ee14ff2749e1d455d1484cd8594300f403b767..506a45183bf46eab7b6273d0441d68d3a03d95d9 100644 >--- a/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize-expected.txt >+++ b/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize-expected.txt >@@ -3,7 +3,7 @@ Tests a flag to make background shorthand property not override background-size > On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". > > >-PASS e.style.background is 'url(dummy://test.png) center center / cover no-repeat border-box border-box red' >+PASS e.style.background is 'url("dummy://test.png") center center / cover no-repeat border-box border-box red' > PASS e.style.backgroundSize is 'cover' > > PASS successfullyParsed is true >diff --git a/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize.html b/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize.html >index b82e46055e9b4a16354125291c80bd488c3d06a2..9346b69f3ef0aa4543bd18e170d8ba1b65f2c5fb 100644 >--- a/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize.html >+++ b/LayoutTests/fast/backgrounds/background-shorthand-after-set-backgroundSize.html >@@ -12,7 +12,7 @@ if (window.internals) { > > e.style.backgroundSize = "cover"; > e.style.background = "center red url(dummy://test.png) no-repeat border-box"; >- shouldBe("e.style.background", "'url(dummy://test.png) center center / cover no-repeat border-box border-box red'") >+ shouldBe("e.style.background", "'url(\"dummy://test.png\") center center / cover no-repeat border-box border-box red'") > shouldBe("e.style.backgroundSize", "'cover'"); > debug("") > >diff --git a/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt b/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt >index 424a96459200a8ce6713ee55feada192e1ee8041..c6d7fb229a07fb3418b5cb0135a8f85a1201461c 100644 >--- a/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt >+++ b/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt >@@ -3,59 +3,59 @@ Tests background shortand property with background-size > On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". > > >-PASS e.style.background is 'url(dummy://test.png) center center / cover no-repeat border-box border-box red' >+PASS e.style.background is 'url("dummy://test.png") center center / cover no-repeat border-box border-box red' > PASS e.style.backgroundSize is 'cover' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 50% 50% / cover border-box border-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat scroll 50% 50% / cover border-box border-box' > PASS computedStyle.getPropertyValue("background-size") is 'cover' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) 20px center / contain no-repeat padding-box padding-box red' >+PASS e.style.background is 'url("dummy://test.png") 20px center / contain no-repeat padding-box padding-box red' > PASS e.style.backgroundSize is 'contain' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 20px 50% / contain padding-box padding-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat scroll 20px 50% / contain padding-box padding-box' > PASS computedStyle.getPropertyValue("background-size") is 'contain' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) 50px 60px / 50% 75% no-repeat red' >+PASS e.style.background is 'url("dummy://test.png") 50px 60px / 50% 75% no-repeat red' > PASS e.style.backgroundSize is '50% 75%' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 50px 60px / 50% 75% padding-box border-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat scroll 50px 60px / 50% 75% padding-box border-box' > PASS computedStyle.getPropertyValue("background-size") is '50% 75%' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) left top / 100px 200px repeat border-box content-box red' >+PASS e.style.background is 'url("dummy://test.png") left top / 100px 200px repeat border-box content-box red' > PASS e.style.backgroundSize is '100px 200px' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / 100px 200px border-box content-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") repeat scroll 0% 0% / 100px 200px border-box content-box' > PASS computedStyle.getPropertyValue("background-size") is '100px 200px' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) 50% center / auto repeat content-box padding-box red' >+PASS e.style.background is 'url("dummy://test.png") 50% center / auto repeat content-box padding-box red' > PASS e.style.backgroundSize is 'auto' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 50% 50% / auto content-box padding-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") repeat scroll 50% 50% / auto content-box padding-box' > PASS computedStyle.getPropertyValue("background-size") is 'auto' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) 50px 60px / 50% no-repeat fixed red' >+PASS e.style.background is 'url("dummy://test.png") 50px 60px / 50% no-repeat fixed red' > PASS e.style.backgroundSize is '50%' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 50px 60px / 50% padding-box border-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 50px 60px / 50% padding-box border-box' > PASS computedStyle.getPropertyValue("background-size") is '50%' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) left top / 100px repeat scroll padding-box border-box red' >+PASS e.style.background is 'url("dummy://test.png") left top / 100px repeat scroll padding-box border-box red' > PASS e.style.backgroundSize is '100px' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / 100px padding-box border-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") repeat scroll 0% 0% / 100px padding-box border-box' > PASS computedStyle.getPropertyValue("background-size") is '100px' > PASS checkComputedStyleValue() is true > >-PASS e.style.background is 'url(dummy://test.png) 50% center / auto repeat fixed content-box content-box red' >+PASS e.style.background is 'url("dummy://test.png") 50% center / auto repeat fixed content-box content-box red' > PASS e.style.backgroundSize is 'auto' > PASS checkStyle() is true >-PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url(dummy://test.png) repeat fixed 50% 50% / auto content-box content-box' >+PASS computedStyle.getPropertyValue("background") is 'rgb(255, 0, 0) url("dummy://test.png") repeat fixed 50% 50% / auto content-box content-box' > PASS computedStyle.getPropertyValue("background-size") is 'auto' > PASS checkComputedStyleValue() is true > >diff --git a/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style.html b/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style.html >index b982dcdc1995dbcf9dcae24fc349c82664ee009b..ff2fa3bf0ceaa93b763e83182fab85e60da9ffa5 100644 >--- a/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style.html >+++ b/LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style.html >@@ -23,73 +23,73 @@ function checkComputedStyleValue() { > } > > e.style.background = "center / cover red url(dummy://test.png) no-repeat border-box"; >-shouldBe("e.style.background", "'url(dummy://test.png) center center / cover no-repeat border-box border-box red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") center center / cover no-repeat border-box border-box red'"); > shouldBe("e.style.backgroundSize", "'cover'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 50% 50% / cover border-box border-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat scroll 50% 50% / cover border-box border-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'cover'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "red 20px / contain url(dummy://test.png) no-repeat padding-box"; >-shouldBe("e.style.background", "'url(dummy://test.png) 20px center / contain no-repeat padding-box padding-box red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") 20px center / contain no-repeat padding-box padding-box red'"); > shouldBe("e.style.backgroundSize", "'contain'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 20px 50% / contain padding-box padding-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat scroll 20px 50% / contain padding-box padding-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'contain'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "red url(dummy://test.png) 50px 60px / 50% 75% no-repeat"; >-shouldBe("e.style.background", "'url(dummy://test.png) 50px 60px / 50% 75% no-repeat red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") 50px 60px / 50% 75% no-repeat red'"); > shouldBe("e.style.backgroundSize", "'50% 75%'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 50px 60px / 50% 75% padding-box border-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat scroll 50px 60px / 50% 75% padding-box border-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'50% 75%'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "red url(dummy://test.png) repeat top left / 100px 200px border-box content-box"; >-shouldBe("e.style.background", "'url(dummy://test.png) left top / 100px 200px repeat border-box content-box red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") left top / 100px 200px repeat border-box content-box red'"); > shouldBe("e.style.backgroundSize", "'100px 200px'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / 100px 200px border-box content-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") repeat scroll 0% 0% / 100px 200px border-box content-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'100px 200px'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "red url(dummy://test.png) repeat 50% / auto auto content-box padding-box"; >-shouldBe("e.style.background", "'url(dummy://test.png) 50% center / auto repeat content-box padding-box red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") 50% center / auto repeat content-box padding-box red'"); > shouldBe("e.style.backgroundSize", "'auto'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 50% 50% / auto content-box padding-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") repeat scroll 50% 50% / auto content-box padding-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'auto'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "url(dummy://test.png) red 50px 60px / 50% no-repeat fixed"; >-shouldBe("e.style.background", "'url(dummy://test.png) 50px 60px / 50% no-repeat fixed red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") 50px 60px / 50% no-repeat fixed red'"); > shouldBe("e.style.backgroundSize", "'50%'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 50px 60px / 50% padding-box border-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 50px 60px / 50% padding-box border-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'50%'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "red repeat scroll padding-box border-box top left / 100px url(dummy://test.png)"; >-shouldBe("e.style.background", "'url(dummy://test.png) left top / 100px repeat scroll padding-box border-box red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") left top / 100px repeat scroll padding-box border-box red'"); > shouldBe("e.style.backgroundSize", "'100px'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / 100px padding-box border-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") repeat scroll 0% 0% / 100px padding-box border-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'100px'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") > > e.style.background = "50% / auto fixed url(dummy://test.png) repeat content-box red"; >-shouldBe("e.style.background", "'url(dummy://test.png) 50% center / auto repeat fixed content-box content-box red'"); >+shouldBe("e.style.background", "'url(\"dummy://test.png\") 50% center / auto repeat fixed content-box content-box red'"); > shouldBe("e.style.backgroundSize", "'auto'"); > shouldBe("checkStyle()", "true"); >-shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(dummy://test.png) repeat fixed 50% 50% / auto content-box content-box'"); >+shouldBe('computedStyle.getPropertyValue("background")', "'rgb(255, 0, 0) url(\"dummy://test.png\") repeat fixed 50% 50% / auto content-box content-box'"); > shouldBe('computedStyle.getPropertyValue("background-size")', "'auto'"); > shouldBe("checkComputedStyleValue()", "true"); > debug("") >diff --git a/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style-expected.txt b/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style-expected.txt >index bef28cfdef4777e2c5ae964a62afd10dae4d883b..1426683d454a6013f195c5d50979d7de3dbce7d7 100644 >--- a/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style-expected.txt >+++ b/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style-expected.txt >@@ -3,9 +3,9 @@ This tests checks that all of the input values for background-repeat parse corre > On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". > > >-PASS test("backgroundImage", "background: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;") is "none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)" >+PASS test("backgroundImage", "background: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;") is "none, url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC\")" > PASS test("backgroundPosition", "background: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;") is "10px 10px, 20px 20px" >-PASS test("backgroundImage", "background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC), none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)") is "url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC), none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)" >+PASS test("backgroundImage", "background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC), none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)") is "url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC\"), none, url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC\")" > PASS test("backgroundRepeat", "background-image: none, none, none, none; background-repeat: repeat-x, repeat-y, repeat, no-repeat;") is "repeat-x, repeat-y, repeat, no-repeat" > PASS test("backgroundSize", "background-image: none, none, none; background-size: contain, cover, 20px 10%;") is "contain, cover, 20px 10%" > PASS test("webkitBackgroundSize", "background-image: none, none, none; -webkit-background-size: contain, cover, 20px 10%;") is "contain, cover, 20px 10%" >@@ -18,13 +18,13 @@ PASS test("webkitBackgroundOrigin", "background-image: none, none, none; -webkit > PASS test("backgroundPosition", "background-image: none, none, none, none, none; background-position: 20px 30px, 10% 90%, top, left, center;") is "20px 30px, 10% 90%, 50% 0%, 0% 50%, 50% 50%" > PASS test("backgroundPositionX", "background-image: none, none, none, none, none; background-position-x: 20px, 10%, right, left, center;") is "20px, 10%, 100%, 0%, 50%" > PASS test("backgroundPositionY", "background-image: none, none, none, none, none; background-position-y: 20px, 10%, bottom, top, center;") is "20px, 10%, 100%, 0%, 50%" >-PASS test("webkitMaskImage", "-webkit-mask: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;") is "none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)" >+PASS test("webkitMaskImage", "-webkit-mask: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;") is "none, url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC\")" > PASS test("webkitMaskPosition", "-webkit-mask: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;") is "10px 10px, 20px 20px" > PASS test("webkitMaskClip", "-webkit-mask: center url() content-box ") is "content-box" > PASS test("webkitMaskClip", "-webkit-mask: content-box padding-box") is "padding-box" > PASS test("webkitMaskClip", "-webkit-mask: border-box url() content-box") is "content-box" > PASS test("webkitMaskClip", "-webkit-mask: url() repeat-x content-box border-box scroll ") is "border-box" >-PASS test("webkitMaskImage", "-webkit-mask-image: none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC);") is "none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)" >+PASS test("webkitMaskImage", "-webkit-mask-image: none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC);") is "none, url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC\")" > PASS test("webkitMaskSize", "-webkit-mask-image: none, none, none; -webkit-mask-size: contain, cover, 20px 10%;") is "contain, cover, 20px 10%" > PASS test("webkitMaskRepeat", "-webkit-mask-image: none, none, none, none; -webkit-mask-repeat: repeat-x, repeat-y, repeat, no-repeat;") is "repeat-x, repeat-y, repeat, no-repeat" > PASS test("webkitMaskClip", "-webkit-mask-image: none, none; -webkit-mask-clip: border-box, padding-box;") is "border-box, padding-box" >diff --git a/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style.html b/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style.html >index d93d4f4379d61804e7fc72663357c109dbd1c4ae..8348daf7129e1a37a9ea7180994ca0a95be2570d 100644 >--- a/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style.html >+++ b/LayoutTests/fast/backgrounds/multiple-backgrounds-computed-style.html >@@ -19,13 +19,13 @@ function test(property, value) > } > > // shorthands >-shouldBe('test("backgroundImage", "background: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;")', >- '"none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)"'); >+shouldBeEqualToString('test("backgroundImage", "background: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;")', >+ 'none, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC")'); > shouldBe('test("backgroundPosition", "background: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;")', '"10px 10px, 20px 20px"'); > > // background longhands >-shouldBe('test("backgroundImage", "background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC), none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)")', >- '"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC), none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)"'); >+shouldBeEqualToString('test("backgroundImage", "background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC), none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)")', >+ 'url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC"), none, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC")'); > shouldBe('test("backgroundRepeat", "background-image: none, none, none, none; background-repeat: repeat-x, repeat-y, repeat, no-repeat;")', '"repeat-x, repeat-y, repeat, no-repeat"'); > shouldBe('test("backgroundSize", "background-image: none, none, none; background-size: contain, cover, 20px 10%;")', '"contain, cover, 20px 10%"'); > shouldBe('test("webkitBackgroundSize", "background-image: none, none, none; -webkit-background-size: contain, cover, 20px 10%;")', '"contain, cover, 20px 10%"'); >@@ -40,7 +40,7 @@ shouldBe('test("backgroundPositionX", "background-image: none, none, none, none, > shouldBe('test("backgroundPositionY", "background-image: none, none, none, none, none; background-position-y: 20px, 10%, bottom, top, center;")', '"20px, 10%, 100%, 0%, 50%"'); > > // mask shorthands >-shouldBe('test("webkitMaskImage", "-webkit-mask: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;")', '"none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)"'); >+shouldBeEqualToString('test("webkitMaskImage", "-webkit-mask: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;")', 'none, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC")'); > shouldBe('test("webkitMaskPosition", "-webkit-mask: none 10px 10px, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC) 20px 20px;")', '"10px 10px, 20px 20px"'); > shouldBe('test("webkitMaskClip", "-webkit-mask: center url() content-box ")', '"content-box"'); > shouldBe('test("webkitMaskClip", "-webkit-mask: content-box padding-box")', '"padding-box"'); >@@ -48,7 +48,7 @@ shouldBe('test("webkitMaskClip", "-webkit-mask: border-box url() content-box")', > shouldBe('test("webkitMaskClip", "-webkit-mask: url() repeat-x content-box border-box scroll ")', '"border-box"'); > > // mask longhands >-shouldBe('test("webkitMaskImage", "-webkit-mask-image: none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC);")', '"none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC)"'); >+shouldBeEqualToString('test("webkitMaskImage", "-webkit-mask-image: none, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC);")', 'none, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR42mP4%2F58BAAT%2FAf9jgNErAAAAAElFTkSuQmCC")'); > shouldBe('test("webkitMaskSize", "-webkit-mask-image: none, none, none; -webkit-mask-size: contain, cover, 20px 10%;")', '"contain, cover, 20px 10%"'); > shouldBe('test("webkitMaskRepeat", "-webkit-mask-image: none, none, none, none; -webkit-mask-repeat: repeat-x, repeat-y, repeat, no-repeat;")', '"repeat-x, repeat-y, repeat, no-repeat"'); > shouldBe('test("webkitMaskClip", "-webkit-mask-image: none, none; -webkit-mask-clip: border-box, padding-box;")', '"border-box, padding-box"'); >diff --git a/LayoutTests/fast/css/background-position-serialize-expected.txt b/LayoutTests/fast/css/background-position-serialize-expected.txt >index abac61ff7f7086562349594af9c043efea2201b0..011ab502a74a8abd13413591bfb832634eeae071 100644 >--- a/LayoutTests/fast/css/background-position-serialize-expected.txt >+++ b/LayoutTests/fast/css/background-position-serialize-expected.txt >@@ -72,4 +72,4 @@ PASS: window.getComputedStyle(t).backgroundPositionX should be 20px and is. > t.setAttribute('style', 'background: url(about:blank) 80% 80%;'); > t.style.backgroundPositionY = '50px' > style.cssText = >-background-image: url(about:blank); background-position: 80% 50px; background-repeat: initial initial; >+background-image: url("about:blank"); background-position: 80% 50px; background-repeat: initial initial; >diff --git a/LayoutTests/fast/css/cursor-parsing-expected.txt b/LayoutTests/fast/css/cursor-parsing-expected.txt >index 27c1aa4c76b4a0015a7245207c157309111ebea3..23b58cdad4464198d1a437030a6dd7643b03be59 100644 >--- a/LayoutTests/fast/css/cursor-parsing-expected.txt >+++ b/LayoutTests/fast/css/cursor-parsing-expected.txt >@@ -4,64 +4,64 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > > Test a bunch of cursor rules which should round-trip exactly. >-PASS roundtripCssRule("cursor: auto;") is "cursor: auto;" >-PASS roundtripCssRule("cursor: default;") is "cursor: default;" >-PASS roundtripCssRule("cursor: none;") is "cursor: none;" >-PASS roundtripCssRule("cursor: context-menu;") is "cursor: context-menu;" >-PASS roundtripCssRule("cursor: help;") is "cursor: help;" >-PASS roundtripCssRule("cursor: pointer;") is "cursor: pointer;" >-PASS roundtripCssRule("cursor: progress;") is "cursor: progress;" >-PASS roundtripCssRule("cursor: wait;") is "cursor: wait;" >-PASS roundtripCssRule("cursor: cell;") is "cursor: cell;" >-PASS roundtripCssRule("cursor: crosshair;") is "cursor: crosshair;" >-PASS roundtripCssRule("cursor: text;") is "cursor: text;" >-PASS roundtripCssRule("cursor: vertical-text;") is "cursor: vertical-text;" >-PASS roundtripCssRule("cursor: alias;") is "cursor: alias;" >-PASS roundtripCssRule("cursor: copy;") is "cursor: copy;" >-PASS roundtripCssRule("cursor: move;") is "cursor: move;" >-PASS roundtripCssRule("cursor: no-drop;") is "cursor: no-drop;" >-PASS roundtripCssRule("cursor: not-allowed;") is "cursor: not-allowed;" >-PASS roundtripCssRule("cursor: grab;") is "cursor: grab;" >-PASS roundtripCssRule("cursor: grabbing;") is "cursor: grabbing;" >-PASS roundtripCssRule("cursor: e-resize;") is "cursor: e-resize;" >-PASS roundtripCssRule("cursor: n-resize;") is "cursor: n-resize;" >-PASS roundtripCssRule("cursor: ne-resize;") is "cursor: ne-resize;" >-PASS roundtripCssRule("cursor: nw-resize;") is "cursor: nw-resize;" >-PASS roundtripCssRule("cursor: s-resize;") is "cursor: s-resize;" >-PASS roundtripCssRule("cursor: se-resize;") is "cursor: se-resize;" >-PASS roundtripCssRule("cursor: sw-resize;") is "cursor: sw-resize;" >-PASS roundtripCssRule("cursor: w-resize;") is "cursor: w-resize;" >-PASS roundtripCssRule("cursor: ew-resize;") is "cursor: ew-resize;" >-PASS roundtripCssRule("cursor: ns-resize;") is "cursor: ns-resize;" >-PASS roundtripCssRule("cursor: nesw-resize;") is "cursor: nesw-resize;" >-PASS roundtripCssRule("cursor: nwse-resize;") is "cursor: nwse-resize;" >-PASS roundtripCssRule("cursor: col-resize;") is "cursor: col-resize;" >-PASS roundtripCssRule("cursor: row-resize;") is "cursor: row-resize;" >-PASS roundtripCssRule("cursor: all-scroll;") is "cursor: all-scroll;" >-PASS roundtripCssRule("cursor: zoom-in;") is "cursor: zoom-in;" >-PASS roundtripCssRule("cursor: zoom-out;") is "cursor: zoom-out;" >-PASS roundtripCssRule("cursor: -webkit-grab;") is "cursor: -webkit-grab;" >-PASS roundtripCssRule("cursor: -webkit-grabbing;") is "cursor: -webkit-grabbing;" >-PASS roundtripCssRule("cursor: -webkit-zoom-in;") is "cursor: -webkit-zoom-in;" >-PASS roundtripCssRule("cursor: -webkit-zoom-out;") is "cursor: -webkit-zoom-out;" >-PASS roundtripCssRule("cursor: url(file:///foo.png), crosshair;") is "cursor: url(file:///foo.png), crosshair;" >-PASS roundtripCssRule("cursor: url(file:///foo.png), url(file:///foo2.png), pointer;") is "cursor: url(file:///foo.png), url(file:///foo2.png), pointer;" >-PASS roundtripCssRule("cursor: url(file:///foo.png) 12 3, pointer;") is "cursor: url(file:///foo.png) 12 3, pointer;" >-PASS roundtripCssRule("cursor: url(file:///foo.png) 0 0, pointer;") is "cursor: url(file:///foo.png) 0 0, pointer;" >-PASS roundtripCssRule("cursor: url(file:///foo.png) 12 3, url(file:///foo2.png), url(file:///foo3.png) 6 7, crosshair;") is "cursor: url(file:///foo.png) 12 3, url(file:///foo2.png), url(file:///foo3.png) 6 7, crosshair;" >-PASS roundtripCssRule("cursor: url(file:///foo.png) -2 3, pointer;") is "cursor: url(file:///foo.png) -2 3, pointer;" >-PASS roundtripCssRule("cursor: url(file:///foo.png) 2 -3, pointer;") is "cursor: url(file:///foo.png) 2 -3, pointer;" >-PASS roundtripCssRule("cursor: url(file:///foo.png) -1 -1, pointer;") is "cursor: url(file:///foo.png) -1 -1, pointer;" >+PASS style.cssText is "cursor: auto;" >+PASS style.cssText is "cursor: default;" >+PASS style.cssText is "cursor: none;" >+PASS style.cssText is "cursor: context-menu;" >+PASS style.cssText is "cursor: help;" >+PASS style.cssText is "cursor: pointer;" >+PASS style.cssText is "cursor: progress;" >+PASS style.cssText is "cursor: wait;" >+PASS style.cssText is "cursor: cell;" >+PASS style.cssText is "cursor: crosshair;" >+PASS style.cssText is "cursor: text;" >+PASS style.cssText is "cursor: vertical-text;" >+PASS style.cssText is "cursor: alias;" >+PASS style.cssText is "cursor: copy;" >+PASS style.cssText is "cursor: move;" >+PASS style.cssText is "cursor: no-drop;" >+PASS style.cssText is "cursor: not-allowed;" >+PASS style.cssText is "cursor: grab;" >+PASS style.cssText is "cursor: grabbing;" >+PASS style.cssText is "cursor: e-resize;" >+PASS style.cssText is "cursor: n-resize;" >+PASS style.cssText is "cursor: ne-resize;" >+PASS style.cssText is "cursor: nw-resize;" >+PASS style.cssText is "cursor: s-resize;" >+PASS style.cssText is "cursor: se-resize;" >+PASS style.cssText is "cursor: sw-resize;" >+PASS style.cssText is "cursor: w-resize;" >+PASS style.cssText is "cursor: ew-resize;" >+PASS style.cssText is "cursor: ns-resize;" >+PASS style.cssText is "cursor: nesw-resize;" >+PASS style.cssText is "cursor: nwse-resize;" >+PASS style.cssText is "cursor: col-resize;" >+PASS style.cssText is "cursor: row-resize;" >+PASS style.cssText is "cursor: all-scroll;" >+PASS style.cssText is "cursor: zoom-in;" >+PASS style.cssText is "cursor: zoom-out;" >+PASS style.cssText is "cursor: -webkit-grab;" >+PASS style.cssText is "cursor: -webkit-grabbing;" >+PASS style.cssText is "cursor: -webkit-zoom-in;" >+PASS style.cssText is "cursor: -webkit-zoom-out;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\"), crosshair;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\"), url(\"file:///foo2.png\"), pointer;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\") 12 3, pointer;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\") 0 0, pointer;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\") 12 3, url(\"file:///foo2.png\"), url(\"file:///foo3.png\") 6 7, crosshair;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\") -2 3, pointer;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\") 2 -3, pointer;" >+PASS style.cssText is "cursor: url(\"file:///foo.png\") -1 -1, pointer;" > > Test a bunch of invalid cursor rules which shouldn't parse at all. >-PASS roundtripCssRule("cursor: nonexistent;") is "" >-PASS roundtripCssRule("cursor: ltr;") is "" >-PASS roundtripCssRule("cursor: inline;") is "" >-PASS roundtripCssRule("cursor: url(file:///foo.png), url(file:///foo2.png);") is "" >-PASS roundtripCssRule("cursor: url(file:///foo.png) 12;") is "" >-PASS roundtripCssRule("cursor: url(file:///foo.png) 12 3 5;") is "" >-PASS roundtripCssRule("cursor: url(file:///foo.png) x y;") is "" >-PASS roundtripCssRule("cursor: url(file:///foo.png) auto;") is "" >+PASS roundtripCssRule("cursor: nonexistent;").cssText is "" >+PASS roundtripCssRule("cursor: ltr;").cssText is "" >+PASS roundtripCssRule("cursor: inline;").cssText is "" >+PASS roundtripCssRule("cursor: url(file:///foo.png), url(file:///foo2.png);").cssText is "" >+PASS roundtripCssRule("cursor: url(file:///foo.png) 12;").cssText is "" >+PASS roundtripCssRule("cursor: url(file:///foo.png) 12 3 5;").cssText is "" >+PASS roundtripCssRule("cursor: url(file:///foo.png) x y;").cssText is "" >+PASS roundtripCssRule("cursor: url(file:///foo.png) auto;").cssText is "" > PASS successfullyParsed is true > > TEST COMPLETE >diff --git a/LayoutTests/fast/css/cursor-parsing-image-set-expected.txt b/LayoutTests/fast/css/cursor-parsing-image-set-expected.txt >index dd03b66196f06152855a8e90173a97cc5bec04da..07ac5ff18788b196a83064f0b681754a41b7bbcc 100644 >--- a/LayoutTests/fast/css/cursor-parsing-image-set-expected.txt >+++ b/LayoutTests/fast/css/cursor-parsing-image-set-expected.txt >@@ -6,10 +6,10 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > Bug 99493 > > Test a bunch of cursor rules which should round-trip exactly. >-PASS roundtripCssRule("cursor: image-set(url(file:///foo.png) 1x), auto;") is "cursor: image-set(url(file:///foo.png) 1x), auto;" >-PASS roundtripCssRule("cursor: image-set(url(file:///foo.png) 1x, url(file:///foo2x.png) 2x), auto;") is "cursor: image-set(url(file:///foo.png) 1x, url(file:///foo2x.png) 2x), auto;" >-PASS roundtripCssRule("cursor: image-set(url(file:///foo.png) 1x, url(file:///foo2x.png) 2x) 2 3, auto;") is "cursor: image-set(url(file:///foo.png) 1x, url(file:///foo2x.png) 2x) 2 3, auto;" >-PASS roundtripCssRule("cursor: image-set(url(file:///foo03.png) 0.3x, url(file:///foo5x.png) 5x) 6 5, url(file:///foo.png) 12 3, pointer;") is "cursor: image-set(url(file:///foo03.png) 0.3x, url(file:///foo5x.png) 5x) 6 5, url(file:///foo.png) 12 3, pointer;" >+PASS style.cssText is "cursor: image-set(url(\"file:///foo.png\") 1x), auto;" >+PASS style.cssText is "cursor: image-set(url(\"file:///foo.png\") 1x, url(\"file:///foo2x.png\") 2x), auto;" >+PASS style.cssText is "cursor: image-set(url(\"file:///foo.png\") 1x, url(\"file:///foo2x.png\") 2x) 2 3, auto;" >+PASS style.cssText is "cursor: image-set(url(\"file:///foo03.png\") 0.3x, url(\"file:///foo5x.png\") 5x) 6 5, url(\"file:///foo.png\") 12 3, pointer;" > PASS successfullyParsed is true > > TEST COMPLETE >diff --git a/LayoutTests/fast/css/cursor-parsing-image-set.html b/LayoutTests/fast/css/cursor-parsing-image-set.html >index b360e22f74cf0babadc01a389bd96b228fa56212..c140cb4ce67737dda68cf7d84830024e6c67ab16 100644 >--- a/LayoutTests/fast/css/cursor-parsing-image-set.html >+++ b/LayoutTests/fast/css/cursor-parsing-image-set.html >@@ -10,6 +10,8 @@ > <script> > description("Test the parsing of the cursor property when used with -webkit-image-set."); > >+var style; >+ > function makeCursorRule(rule) > { > return "cursor: " + rule + ";"; >@@ -18,7 +20,8 @@ function makeCursorRule(rule) > function testCursorRule(rule) > { > var cssText = makeCursorRule(rule); >- shouldBeEqualToString('roundtripCssRule("' + cssText + '")', cssText); >+ style = roundtripCssRule(cssText); >+ shouldBeEqualToString('style.cssText', cssText); > } > > function roundtripCssRule(cssText) >@@ -26,7 +29,7 @@ function roundtripCssRule(cssText) > var div = document.createElement("div"); > div.setAttribute("style", cssText); > document.body.appendChild(div); >- var result = div.style.cssText; >+ var result = div.style; > document.body.removeChild(div); > return result; > } >@@ -36,10 +39,10 @@ function roundtripCssRule(cssText) > // to avoid triggering any network activity. > > debug('Test a bunch of cursor rules which should round-trip exactly.'); >-testCursorRule('image-set(url(file:///foo.png) 1x), auto'); >-testCursorRule('image-set(url(file:///foo.png) 1x, url(file:///foo2x.png) 2x), auto'); >-testCursorRule('image-set(url(file:///foo.png) 1x, url(file:///foo2x.png) 2x) 2 3, auto'); >-testCursorRule('image-set(url(file:///foo03.png) 0.3x, url(file:///foo5x.png) 5x) 6 5, url(file:///foo.png) 12 3, pointer'); >+testCursorRule('image-set(url("file:///foo.png") 1x), auto'); >+testCursorRule('image-set(url("file:///foo.png") 1x, url("file:///foo2x.png") 2x), auto'); >+testCursorRule('image-set(url("file:///foo.png") 1x, url("file:///foo2x.png") 2x) 2 3, auto'); >+testCursorRule('image-set(url("file:///foo03.png") 0.3x, url("file:///foo5x.png") 5x) 6 5, url("file:///foo.png") 12 3, pointer'); > > successfullyParsed = true; > </script> >diff --git a/LayoutTests/fast/css/cursor-parsing.html b/LayoutTests/fast/css/cursor-parsing.html >index a6d07c9438f1bbd80f181f8764a417737d75605e..7b07d3005fc2f75e26d381b69540fd0174490ad3 100644 >--- a/LayoutTests/fast/css/cursor-parsing.html >+++ b/LayoutTests/fast/css/cursor-parsing.html >@@ -9,6 +9,8 @@ > <script> > description("Test the parsing of the cursor property."); > >+var style; >+ > function makeCursorRule(rule) > { > return "cursor: " + rule + ";"; >@@ -17,12 +19,13 @@ function makeCursorRule(rule) > function testCursorRule(rule) > { > var cssText = makeCursorRule(rule); >- shouldBeEqualToString('roundtripCssRule("' + cssText + '")', cssText); >+ style = roundtripCssRule(cssText); >+ shouldBeEqualToString('style.cssText', cssText); > } > > function testInvalidCursorRule(rule) > { >- shouldBeEqualToString('roundtripCssRule("' + makeCursorRule(rule) + '")', ''); >+ shouldBeEqualToString('roundtripCssRule("' + makeCursorRule(rule) + '").cssText', ''); > } > > function roundtripCssRule(cssText) >@@ -30,7 +33,7 @@ function roundtripCssRule(cssText) > var div = document.createElement("div"); > div.setAttribute("style", cssText); > document.body.appendChild(div); >- var result = div.style.cssText; >+ var result = div.style; > document.body.removeChild(div); > return result; > } >@@ -82,14 +85,14 @@ testCursorRule('-webkit-grabbing'); > testCursorRule('-webkit-zoom-in'); > testCursorRule('-webkit-zoom-out'); > >-testCursorRule('url(file:///foo.png), crosshair'); >-testCursorRule('url(file:///foo.png), url(file:///foo2.png), pointer'); >-testCursorRule('url(file:///foo.png) 12 3, pointer'); >-testCursorRule('url(file:///foo.png) 0 0, pointer'); >-testCursorRule('url(file:///foo.png) 12 3, url(file:///foo2.png), url(file:///foo3.png) 6 7, crosshair'); >-testCursorRule('url(file:///foo.png) -2 3, pointer'); >-testCursorRule('url(file:///foo.png) 2 -3, pointer'); >-testCursorRule('url(file:///foo.png) -1 -1, pointer'); >+testCursorRule('url("file:///foo.png"), crosshair'); >+testCursorRule('url("file:///foo.png"), url("file:///foo2.png"), pointer'); >+testCursorRule('url("file:///foo.png") 12 3, pointer'); >+testCursorRule('url("file:///foo.png") 0 0, pointer'); >+testCursorRule('url("file:///foo.png") 12 3, url("file:///foo2.png"), url("file:///foo3.png") 6 7, crosshair'); >+testCursorRule('url("file:///foo.png") -2 3, pointer'); >+testCursorRule('url("file:///foo.png") 2 -3, pointer'); >+testCursorRule('url("file:///foo.png") -1 -1, pointer'); > > debug(''); > debug('Test a bunch of invalid cursor rules which shouldn\'t parse at all.'); >diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-border-image-expected.txt b/LayoutTests/fast/css/getComputedStyle/computed-style-border-image-expected.txt >index d1fb8f3bc3fcd452aa57af9253b3d32c4970af21..aecad5962442f4b957205547b693929e2ab5af99 100644 >--- a/LayoutTests/fast/css/getComputedStyle/computed-style-border-image-expected.txt >+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-border-image-expected.txt >@@ -4,10 +4,10 @@ PASS computedBorderImageStyle('12 11 12 11', 'border-image-slice') is '12 11' > PASS computedBorderImageStyle('12 11 12 11', 'border-image') is 'none' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 12 11 repeat stretch', 'border-image-slice') is '12 11' >-PASS computedBorderImageStyle('url(dummy://test.png) 12 11 repeat stretch', 'border-image') is 'url(dummy://test.png) 12 11 / 1 / 0px repeat stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 12 11 repeat stretch', 'border-image') is 'url("dummy://test.png") 12 11 / 1 / 0px repeat stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 1 2 3 4 repeat stretch', 'border-image-slice') is '1 2 3 4' >-PASS computedBorderImageStyle('url(dummy://test.png) 1 2 3 4 repeat stretch', 'border-image') is 'url(dummy://test.png) 1 2 3 4 / 1 / 0px repeat stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 1 2 3 4 repeat stretch', 'border-image') is 'url("dummy://test.png") 1 2 3 4 / 1 / 0px repeat stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 12 repeat stretch', 'border-image-slice') is '12' > PASS computedBorderImageStyle('url(test.png) 10 10 5 5 repeat stretch', 'border-image-slice') is '10 10 5 5' >@@ -15,16 +15,16 @@ PASS computedBorderImageStyle('url(test.png) 10 a b c repeat stretch', 'border-i > PASS computedBorderImageStyle('url(dummy://test.png) 10 a b c repeat stretch', 'border-image') is 'none' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 20 fill', 'border-image-slice') is '10 20 fill' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 20 fill', 'border-image') is 'url(dummy://test.png) 10 20 fill / 1 / 0px stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 20 fill', 'border-image') is 'url("dummy://test.png") 10 20 fill / 1 / 0px stretch' > PASS checkComputedStyleValue() is true >-PASS computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image-source') is 'url(dummy://test.png)' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image') is 'url(dummy://test.png) 10 / 1 / 0px repeat stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image-source') is 'url("dummy://test.png")' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image') is 'url("dummy://test.png") 10 / 1 / 0px repeat stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10', 'border-image-repeat') is 'stretch' >-PASS computedBorderImageStyle('url(dummy://test.png) 10', 'border-image') is 'url(dummy://test.png) 10 / 1 / 0px stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10', 'border-image') is 'url("dummy://test.png") 10 / 1 / 0px stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 stretch', 'border-image-repeat') is 'stretch' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 stretch', 'border-image') is 'url(dummy://test.png) 10 / 1 / 0px stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 stretch', 'border-image') is 'url("dummy://test.png") 10 / 1 / 0px stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 kittens', 'border-image-repeat') is 'stretch' > PASS computedBorderImageStyle('url(dummy://test.png) 10 kittens', 'border-image') is 'none' >@@ -33,22 +33,22 @@ PASS computedBorderImageStyle('url(test.png) 10 stretch stretch fill', 'border-i > PASS computedBorderImageStyle('url(dummy://test.png) 10 stretch stretch fill', 'border-image') is 'none' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 repeat stretch', 'border-image-repeat') is 'repeat stretch' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 repeat stretch', 'border-image') is 'url(dummy://test.png) 10 / 1 / 0px repeat stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 repeat stretch', 'border-image') is 'url("dummy://test.png") 10 / 1 / 0px repeat stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 round space', 'border-image-repeat') is 'round space' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 round space', 'border-image') is 'url(dummy://test.png) 10 / 1 / 0px round space' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 round space', 'border-image') is 'url("dummy://test.png") 10 / 1 / 0px round space' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 / 13px 1.5em 1em 10px', 'border-image-width') is '13px 24px 16px 10px' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 / 13px 1.5em 1em 10px', 'border-image') is 'url(dummy://test.png) 10 / 13px 24px 16px 10px / 0px stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 / 13px 1.5em 1em 10px', 'border-image') is 'url("dummy://test.png") 10 / 13px 24px 16px 10px / 0px stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 / 14px 10%', 'border-image-width') is '14px 10%' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 / 14px 10%', 'border-image') is 'url(dummy://test.png) 10 / 14px 10% / 0px stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 / 14px 10%', 'border-image') is 'url("dummy://test.png") 10 / 14px 10% / 0px stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 / 13px / 11px', 'border-image-outset') is '11px' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px', 'border-image') is 'url(dummy://test.png) 10 / 13px / 11px stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px', 'border-image') is 'url("dummy://test.png") 10 / 13px / 11px stretch' > PASS checkComputedStyleValue() is true > PASS computedBorderImageStyle('url(test.png) 10 / 13px / 11px repeat stretch', 'border-image-outset') is '11px' >-PASS computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px repeat stretch', 'border-image') is 'url(dummy://test.png) 10 / 13px / 11px repeat stretch' >+PASS computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px repeat stretch', 'border-image') is 'url("dummy://test.png") 10 / 13px / 11px repeat stretch' > PASS checkComputedStyleValue() is true > PASS successfullyParsed is true > >diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-border-image.html b/LayoutTests/fast/css/getComputedStyle/computed-style-border-image.html >index 5f9a3cc9a1f6601744a1e11e42492aff23d2c498..731ee7af8ce1f300e1c57a614d1ef36a6eee1df0 100644 >--- a/LayoutTests/fast/css/getComputedStyle/computed-style-border-image.html >+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-border-image.html >@@ -30,10 +30,10 @@ shouldBe("computedBorderImageStyle('12 11 12 11', 'border-image-slice')", "'12 1 > shouldBe("computedBorderImageStyle('12 11 12 11', 'border-image')", "'none'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 12 11 repeat stretch', 'border-image-slice')", "'12 11'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 12 11 repeat stretch', 'border-image')", "'url(dummy://test.png) 12 11 / 1 / 0px repeat stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 12 11 repeat stretch', 'border-image')", "'url(\"dummy://test.png\") 12 11 / 1 / 0px repeat stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 1 2 3 4 repeat stretch', 'border-image-slice')", "'1 2 3 4'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 1 2 3 4 repeat stretch', 'border-image')", "'url(dummy://test.png) 1 2 3 4 / 1 / 0px repeat stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 1 2 3 4 repeat stretch', 'border-image')", "'url(\"dummy://test.png\") 1 2 3 4 / 1 / 0px repeat stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 12 repeat stretch', 'border-image-slice')", "'12'"); > shouldBe("computedBorderImageStyle('url(test.png) 10 10 5 5 repeat stretch', 'border-image-slice')", "'10 10 5 5'"); >@@ -41,18 +41,18 @@ shouldBe("computedBorderImageStyle('url(test.png) 10 a b c repeat stretch', 'bor > shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 a b c repeat stretch', 'border-image')", "'none'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 20 fill', 'border-image-slice')", "'10 20 fill'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 20 fill', 'border-image')", "'url(dummy://test.png) 10 20 fill / 1 / 0px stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 20 fill', 'border-image')", "'url(\"dummy://test.png\") 10 20 fill / 1 / 0px stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image-source')", "'url(dummy://test.png)'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image')", "'url(dummy://test.png) 10 / 1 / 0px repeat stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image-source')", "'url(\"dummy://test.png\")'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 10 10 10 repeat stretch', 'border-image')", "'url(\"dummy://test.png\") 10 / 1 / 0px repeat stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > > shouldBe("computedBorderImageStyle('url(test.png) 10', 'border-image-repeat')", "'stretch'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10', 'border-image')", "'url(dummy://test.png) 10 / 1 / 0px stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10', 'border-image')", "'url(\"dummy://test.png\") 10 / 1 / 0px stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 stretch', 'border-image-repeat')", "'stretch'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 stretch', 'border-image')", "'url(dummy://test.png) 10 / 1 / 0px stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 stretch', 'border-image')", "'url(\"dummy://test.png\") 10 / 1 / 0px stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 kittens', 'border-image-repeat')", "'stretch'"); > shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 kittens', 'border-image')", "'none'"); >@@ -61,24 +61,24 @@ shouldBe("computedBorderImageStyle('url(test.png) 10 stretch stretch fill', 'bor > shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 stretch stretch fill', 'border-image')", "'none'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 repeat stretch', 'border-image-repeat')", "'repeat stretch'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 repeat stretch', 'border-image')", "'url(dummy://test.png) 10 / 1 / 0px repeat stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 repeat stretch', 'border-image')", "'url(\"dummy://test.png\") 10 / 1 / 0px repeat stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 round space', 'border-image-repeat')", "'round space'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 round space', 'border-image')", "'url(dummy://test.png) 10 / 1 / 0px round space'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 round space', 'border-image')", "'url(\"dummy://test.png\") 10 / 1 / 0px round space'"); > shouldBe("checkComputedStyleValue()", "true"); > > shouldBe("computedBorderImageStyle('url(test.png) 10 / 13px 1.5em 1em 10px', 'border-image-width')", "'13px 24px 16px 10px'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 13px 1.5em 1em 10px', 'border-image')", "'url(dummy://test.png) 10 / 13px 24px 16px 10px / 0px stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 13px 1.5em 1em 10px', 'border-image')", "'url(\"dummy://test.png\") 10 / 13px 24px 16px 10px / 0px stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 / 14px 10%', 'border-image-width')", "'14px 10%'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 14px 10%', 'border-image')", "'url(dummy://test.png) 10 / 14px 10% / 0px stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 14px 10%', 'border-image')", "'url(\"dummy://test.png\") 10 / 14px 10% / 0px stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > shouldBe("computedBorderImageStyle('url(test.png) 10 / 13px / 11px', 'border-image-outset')", "'11px'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px', 'border-image')", "'url(dummy://test.png) 10 / 13px / 11px stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px', 'border-image')", "'url(\"dummy://test.png\") 10 / 13px / 11px stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > > shouldBe("computedBorderImageStyle('url(test.png) 10 / 13px / 11px repeat stretch', 'border-image-outset')", "'11px'"); >-shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px repeat stretch', 'border-image')", "'url(dummy://test.png) 10 / 13px / 11px repeat stretch'"); >+shouldBe("computedBorderImageStyle('url(dummy://test.png) 10 / 13px / 11px repeat stretch', 'border-image')", "'url(\"dummy://test.png\") 10 / 13px / 11px repeat stretch'"); > shouldBe("checkComputedStyleValue()", "true"); > > </script> >diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade-expected.txt b/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade-expected.txt >index f18391499e1d8e2b67773137e9a0e222e5fa881d..b10f6bad4319f5ede3442e9d48ee882216f046d2 100644 >--- a/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade-expected.txt >+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade-expected.txt >@@ -3,26 +3,26 @@ cross-fade > > PASS testCrossfade("opacity: 500%", "opacity") is "1" > Prefixed >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image") is "-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)" >-PASS testCrossfade("background-image: -webkit-cross-fade(-webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image") is "-webkit-cross-fade(-webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), url(dummy://example.png), 0.5)" >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://c.png), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image") is "-webkit-cross-fade(url(dummy://c.png), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), 0.5)" >-PASS testCrossfade("background-image: -webkit-cross-fade(-webkit-linear-gradient(black, white), url(dummy://example.png), 10%)", "background-image") is "-webkit-cross-fade(-webkit-linear-gradient(top, black, white), url(dummy://example.png), 0.1)" >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image") is "-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1)" >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)", "background-image") is "-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)" >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 5.0)", "background-image") is "-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1)" >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 700%)", "background-image") is "-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1)" >-PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), -20)", "background-image") is "-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image") is "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0.5)" >+PASS testCrossfade("background-image: -webkit-cross-fade(-webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image") is "-webkit-cross-fade(-webkit-cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), url(\"dummy://example.png\"), 0.5)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://c.png), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image") is "-webkit-cross-fade(url(\"dummy://c.png\"), -webkit-cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), 0.5)" >+PASS testCrossfade("background-image: -webkit-cross-fade(-webkit-linear-gradient(black, white), url(dummy://example.png), 10%)", "background-image") is "-webkit-cross-fade(-webkit-linear-gradient(top, black, white), url(\"dummy://example.png\"), 0.1)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image") is "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)", "background-image") is "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0.5)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 5.0)", "background-image") is "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 700%)", "background-image") is "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)" >+PASS testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), -20)", "background-image") is "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0)" > Unprefixed > > >-PASS testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image") is "cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)" >-PASS testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image") is "cross-fade(url(dummy://example.png), url(dummy://example.png), 1)" >+PASS testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image") is "cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0.5)" >+PASS testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image") is "cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)" > Mixed > > >-PASS testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image") is "-webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), url(dummy://example.png), 0.5)" >-PASS testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image") is "-webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), 0.5)" >-PASS testCrossfade("background-image: cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image") is "cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), 0.5)" >+PASS testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image") is "-webkit-cross-fade(cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), url(\"dummy://example.png\"), 0.5)" >+PASS testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image") is "-webkit-cross-fade(cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), 0.5)" >+PASS testCrossfade("background-image: cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image") is "cross-fade(cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), -webkit-cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), 0.5)" > Invalid values > > >diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade.html b/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade.html >index ed76325c24f188a680dc90a1760a2a20ffe23989..cb85a92fa523a4183ea4d7d5c6c329a2bc7af2b1 100644 >--- a/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade.html >+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-cross-fade.html >@@ -25,32 +25,32 @@ shouldBe('testCrossfade("opacity: 500%", "opacity")', '"1"'); > > debug('Prefixed'); > >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image")', '"-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(-webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image")', '"-webkit-cross-fade(-webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), url(dummy://example.png), 0.5)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://c.png), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image")', >- '"-webkit-cross-fade(url(dummy://c.png), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), 0.5)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(-webkit-linear-gradient(black, white), url(dummy://example.png), 10%)", "background-image")', '"-webkit-cross-fade(-webkit-linear-gradient(top, black, white), url(dummy://example.png), 0.1)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image")', '"-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)", "background-image")', '"-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)"'); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image")', "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0.5)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(-webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image")', "-webkit-cross-fade(-webkit-cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), url(\"dummy://example.png\"), 0.5)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://c.png), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image")', >+ "-webkit-cross-fade(url(\"dummy://c.png\"), -webkit-cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), 0.5)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(-webkit-linear-gradient(black, white), url(dummy://example.png), 10%)", "background-image")', "-webkit-cross-fade(-webkit-linear-gradient(top, black, white), url(\"dummy://example.png\"), 0.1)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image")', "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)", "background-image")', "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0.5)"); > >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 5.0)", "background-image")', '"-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 700%)", "background-image")', '"-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 1)"'); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 5.0)", "background-image")', "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 700%)", "background-image")', "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)"); > >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), -20)", "background-image")', '"-webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), 0)"'); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(url(dummy://example.png), url(dummy://example.png), -20)", "background-image")', "-webkit-cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0)"); > > debug('<h2>Unprefixed</h2>'); > >-shouldBe('testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image")', '"cross-fade(url(dummy://example.png), url(dummy://example.png), 0.5)"'); >-shouldBe('testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image")', '"cross-fade(url(dummy://example.png), url(dummy://example.png), 1)"'); >+shouldBeEqualToString('testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 50%)", "background-image")', "cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 0.5)"); >+shouldBeEqualToString('testCrossfade("background-image: cross-fade(url(dummy://example.png), url(dummy://example.png), 1.0)", "background-image")', "cross-fade(url(\"dummy://example.png\"), url(\"dummy://example.png\"), 1)"); > > debug('<h2>Mixed</h2>'); > >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image")', >- '"-webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), url(dummy://example.png), 0.5)"'); >-shouldBe('testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image")', >- '"-webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), 0.5)"'); >-shouldBe('testCrossfade("background-image: cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image")', >- '"cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 0.25), 0.5)"'); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), url(dummy://example.png), 50%)", "background-image")', >+ "-webkit-cross-fade(cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), url(\"dummy://example.png\"), 0.5)"); >+shouldBeEqualToString('testCrossfade("background-image: -webkit-cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image")', >+ "-webkit-cross-fade(cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), 0.5)"); >+shouldBeEqualToString('testCrossfade("background-image: cross-fade(cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), -webkit-cross-fade(url(dummy://a.png), url(dummy://b.png), 25%), 50%)", "background-image")', >+ "cross-fade(cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), -webkit-cross-fade(url(\"dummy://a.png\"), url(\"dummy://b.png\"), 0.25), 0.5)"); > > debug('<h2>Invalid values</h2>'); > >diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-properties-expected.txt b/LayoutTests/fast/css/getComputedStyle/computed-style-properties-expected.txt >index 511c20140b298fdb22501aa358ec53b7fff0e3ed..75d646e9b28ed95c1c69a5ac4bbb6061410b7418 100644 >--- a/LayoutTests/fast/css/getComputedStyle/computed-style-properties-expected.txt >+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-properties-expected.txt >@@ -11,7 +11,7 @@ Heading B > > PASS computedStyleFor('outline', null, 'outline-offset') is '5px' > PASS computedStyleFor('content', 'before', 'content') is "text" >-PASS computedStyleFor('content', 'after', 'content') is "\"test \" url(data:image/gif;base64,R0lGODlhAQABAJAAAP8AAAAAACwAAAAAAQABAAACAgQBADs=)" >+PASS computedStyleFor('content', 'after', 'content') is "\"test \" url(\"data:image/gif;base64,R0lGODlhAQABAJAAAP8AAAAAACwAAAAAAQABAAACAgQBADs=\")" > PASS computedStyleFor('counter', null, 'counter-reset') is "section 0" > PASS str.indexOf('subsection 0') != -1 is true > PASS str.indexOf('anothercounter 5') != -1 is true >diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-properties.html b/LayoutTests/fast/css/getComputedStyle/computed-style-properties.html >index 2d081c5076a3befa2384d8f0ec7950f18cc60587..571c686e084f743b3f2f28f02cdbfc3c56045bbf 100644 >--- a/LayoutTests/fast/css/getComputedStyle/computed-style-properties.html >+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-properties.html >@@ -66,7 +66,7 @@ function computedStyleFor(id, pseudo, property) > shouldBe("computedStyleFor('outline', null, 'outline-offset')", "'5px'"); > > shouldBeEqualToString("computedStyleFor('content', 'before', 'content')", "text"); >-shouldBeEqualToString("computedStyleFor('content', 'after', 'content')", `"test " url(data:image/gif;base64,R0lGODlhAQABAJAAAP8AAAAAACwAAAAAAQABAAACAgQBADs=)`); >+shouldBeEqualToString("computedStyleFor('content', 'after', 'content')", `"test " url(\"data:image/gif;base64,R0lGODlhAQABAJAAAP8AAAAAACwAAAAAAQABAAACAgQBADs=\")`); > shouldBeEqualToString("computedStyleFor('counter', null, 'counter-reset')", "section 0"); > var str = computedStyleFor('subcounter', null, 'counter-reset'); > shouldBe("str.indexOf('subsection 0') != -1", "true"); >diff --git a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt >index 068f573cad7bed181dc7f0b9b4fbe7dce820ce23..1e332861d5f0acad407d9fe72fa0ceb380e651c8 100644 >--- a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt >+++ b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt >@@ -22,9 +22,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'padding-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / auto padding-box border-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") repeat scroll 0% 0% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / auto padding-box border-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") repeat scroll 0% 0% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -41,9 +41,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'padding-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 0% 0% / auto padding-box border-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat scroll 0% 0% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 0% 0% / auto padding-box border-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat scroll 0% 0% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -60,9 +60,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'padding-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 0% 0% / auto padding-box border-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 0% 0% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 0% 0% / auto padding-box border-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 0% 0% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -79,9 +79,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'padding-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / auto padding-box border-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / auto padding-box border-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / auto padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -98,9 +98,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'padding-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover padding-box border-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / cover padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover padding-box border-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / cover padding-box border-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -117,9 +117,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'padding-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box border-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / cover content-box border-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box border-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / cover content-box border-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -136,9 +136,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'content-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'border-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box padding-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / cover content-box padding-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box padding-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(255, 0, 0) url("dummy://test.png") no-repeat fixed 100% 100% / cover content-box padding-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >@@ -155,9 +155,9 @@ PASS computedStyle.getPropertyCSSValue('background').item(1).item(0).getStringVa > PASS computedStyle.getPropertyCSSValue('background').item(1).item(1).getStringValue() is 'content-box' > PASS computedStyle.getPropertyCSSValue('background').item(1).item(2).getStringValue() is 'padding-box' > PASS checkComputedStyleValue() is true >-PASS computedStyle.getPropertyValue('background') is 'rgb(0, 128, 0) url(dummy://test.png) repeat fixed 45% 50% / contain border-box padding-box' >+PASS computedStyle.getPropertyValue('background') is 'rgb(0, 128, 0) url("dummy://test.png") repeat fixed 45% 50% / contain border-box padding-box' > PASS computedStyle.getPropertyCSSValue('background').toString() is '[object CSSValueList]' >-PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(0, 128, 0) url(dummy://test.png) repeat fixed 45% 50% / contain border-box padding-box' >+PASS computedStyle.getPropertyCSSValue('background').cssText is 'rgb(0, 128, 0) url("dummy://test.png") repeat fixed 45% 50% / contain border-box padding-box' > PASS computedStyle.getPropertyCSSValue('background').length is 2 > PASS computedStyle.getPropertyCSSValue('background').item(0).length is 5 > PASS computedStyle.getPropertyCSSValue('background').item(1).length is 3 >diff --git a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand.html b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand.html >index ee5bea3628c14f68881fc95731bc1f3581481da9..d0b0df1acecf61b2bb4a90ecc23fc4826106da54 100644 >--- a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand.html >+++ b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-background-shorthand.html >@@ -47,9 +47,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundImage = "url(dummy://test.png)"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") repeat scroll 0% 0% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) repeat scroll 0% 0% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") repeat scroll 0% 0% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -68,9 +68,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundRepeat = "no-repeat"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 0% 0% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat scroll 0% 0% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat scroll 0% 0% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat scroll 0% 0% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -89,9 +89,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundAttachment = "fixed"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 0% 0% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 0% 0% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 0% 0% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 0% 0% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -110,9 +110,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundPosition = "right bottom"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / auto padding-box border-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / auto padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -131,9 +131,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundSize = "cover"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover padding-box border-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / cover padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover padding-box border-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / cover padding-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -152,9 +152,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundOrigin = "content-box"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box border-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / cover content-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box border-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / cover content-box border-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -173,9 +173,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.backgroundClip = "padding-box"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box padding-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / cover content-box padding-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(dummy://test.png) no-repeat fixed 100% 100% / cover content-box padding-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(255, 0, 0) url(\"dummy://test.png\") no-repeat fixed 100% 100% / cover content-box padding-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >@@ -194,9 +194,9 @@ shouldBe("computedStyle.getPropertyCSSValue('background').item(1).item(2).getStr > shouldBe("checkComputedStyleValue()", "true"); > > e.style.background = "border-box padding-box url(dummy://test.png) green 45% / contain repeat fixed"; >-shouldBe("computedStyle.getPropertyValue('background')", "'rgb(0, 128, 0) url(dummy://test.png) repeat fixed 45% 50% / contain border-box padding-box'"); >+shouldBe("computedStyle.getPropertyValue('background')", "'rgb(0, 128, 0) url(\"dummy://test.png\") repeat fixed 45% 50% / contain border-box padding-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').toString()", "'[object CSSValueList]'"); >-shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(0, 128, 0) url(dummy://test.png) repeat fixed 45% 50% / contain border-box padding-box'"); >+shouldBe("computedStyle.getPropertyCSSValue('background').cssText", "'rgb(0, 128, 0) url(\"dummy://test.png\") repeat fixed 45% 50% / contain border-box padding-box'"); > shouldBe("computedStyle.getPropertyCSSValue('background').length", "2"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(0).length", "5"); > shouldBe("computedStyle.getPropertyCSSValue('background').item(1).length", "3"); >diff --git a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand-expected.txt b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand-expected.txt >index 4d8de4450df779d48151dc7e9e774a54dc86b91c..a85206b9f715ce96542688213e849c7c49e08060 100644 >--- a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand-expected.txt >+++ b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand-expected.txt >@@ -3,10 +3,10 @@ Test to make sure list-style shorthand property returns CSSValueList properly. > On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". > > >-PASS computedStyle.getPropertyValue('list-style') is 'circle outside url(dummy://test.png)' >+PASS computedStyle.getPropertyValue('list-style') is 'circle outside url("dummy://test.png")' > PASS computedStyle.getPropertyCSSValue('list-style').toString() is '[object CSSValueList]' > PASS computedStyle.getPropertyCSSValue('list-style').length is 3 >-PASS computedStyle.getPropertyCSSValue('list-style').cssText is 'circle outside url(dummy://test.png)' >+PASS computedStyle.getPropertyCSSValue('list-style').cssText is 'circle outside url("dummy://test.png")' > PASS computedStyle.getPropertyCSSValue('list-style').item(0).getStringValue() is 'circle' > PASS computedStyle.getPropertyCSSValue('list-style').item(1).getStringValue() is 'outside' > PASS computedStyle.getPropertyCSSValue('list-style').item(2).getStringValue() is 'dummy://test.png' >@@ -31,10 +31,10 @@ PASS computedStyle.getPropertyCSSValue('list-style').cssText is 'none outside no > PASS computedStyle.getPropertyCSSValue('list-style').item(0).getStringValue() is 'none' > PASS computedStyle.getPropertyCSSValue('list-style').item(1).getStringValue() is 'outside' > PASS computedStyle.getPropertyCSSValue('list-style').item(2).getStringValue() is 'none' >-PASS computedStyle.getPropertyValue('list-style') is 'circle outside url(dummy://test.png)' >+PASS computedStyle.getPropertyValue('list-style') is 'circle outside url("dummy://test.png")' > PASS computedStyle.getPropertyCSSValue('list-style').toString() is '[object CSSValueList]' > PASS computedStyle.getPropertyCSSValue('list-style').length is 3 >-PASS computedStyle.getPropertyCSSValue('list-style').cssText is 'circle outside url(dummy://test.png)' >+PASS computedStyle.getPropertyCSSValue('list-style').cssText is 'circle outside url("dummy://test.png")' > PASS computedStyle.getPropertyCSSValue('list-style').item(0).getStringValue() is 'circle' > PASS computedStyle.getPropertyCSSValue('list-style').item(1).getStringValue() is 'outside' > PASS computedStyle.getPropertyCSSValue('list-style').item(2).getStringValue() is 'dummy://test.png' >diff --git a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html >index d6955cf61e009bfc99a4db99650ef8e48f3f329d..ffc3d4df9705bf9f986fde73982c0fed5b225aa0 100644 >--- a/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html >+++ b/LayoutTests/fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html >@@ -19,10 +19,10 @@ e = document.getElementById('test'); > computedStyle = window.getComputedStyle(e, null); > > e.style.listStyle = "circle outside url(dummy://test.png)"; >-shouldBe("computedStyle.getPropertyValue('list-style')", "'circle outside url(dummy://test.png)'"); >+shouldBe("computedStyle.getPropertyValue('list-style')", "'circle outside url(\"dummy://test.png\")'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').toString()", "'[object CSSValueList]'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').length", "3"); >-shouldBe("computedStyle.getPropertyCSSValue('list-style').cssText", "'circle outside url(dummy://test.png)'"); >+shouldBe("computedStyle.getPropertyCSSValue('list-style').cssText", "'circle outside url(\"dummy://test.png\")'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').item(0).getStringValue()", "'circle'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').item(1).getStringValue()", "'outside'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').item(2).getStringValue()", "'dummy://test.png'"); >@@ -59,10 +59,10 @@ e.style.listStyle = ""; > e.style.listStyleType = "circle"; > e.style.listStylePosition = "outside"; > e.style.listStyleImage = "url(dummy://test.png)"; >-shouldBe("computedStyle.getPropertyValue('list-style')", "'circle outside url(dummy://test.png)'"); >+shouldBe("computedStyle.getPropertyValue('list-style')", "'circle outside url(\"dummy://test.png\")'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').toString()", "'[object CSSValueList]'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').length", "3"); >-shouldBe("computedStyle.getPropertyCSSValue('list-style').cssText", "'circle outside url(dummy://test.png)'"); >+shouldBe("computedStyle.getPropertyCSSValue('list-style').cssText", "'circle outside url(\"dummy://test.png\")'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').item(0).getStringValue()", "'circle'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').item(1).getStringValue()", "'outside'"); > shouldBe("computedStyle.getPropertyCSSValue('list-style').item(2).getStringValue()", "'dummy://test.png'"); >diff --git a/LayoutTests/fast/css/image-set-parsing.html b/LayoutTests/fast/css/image-set-parsing.html >index e7bbbcd7a3abb2ee6cba607f80a2601c67f47c4b..9d1a5037bc5f4d84098cd078181fe5f41d4932b9 100644 >--- a/LayoutTests/fast/css/image-set-parsing.html >+++ b/LayoutTests/fast/css/image-set-parsing.html >@@ -58,7 +58,7 @@ function testImageSetRule(description, property, rule, expectedLength, expectedT > for (var i = 0; i < expectedLength; i++) { > string = imageSetRule[i]; > if (i % 2 == 0) { >- subRule = string.cssText.split('#')[1]; >+ subRule = string.cssText.split('#')[1].replace('"', ""); > subRule = subRule.split(')')[0]; > shouldBe("subRule", "'" + expectedTexts[i] + "'"); > } else { >diff --git a/LayoutTests/fast/css/image-set-setting-expected.txt b/LayoutTests/fast/css/image-set-setting-expected.txt >index 041e725d31a03bcc553926268d3ae82c65151516..ca7d96940c73bd9703514dd5634f55a05895a126 100644 >--- a/LayoutTests/fast/css/image-set-setting-expected.txt >+++ b/LayoutTests/fast/css/image-set-setting-expected.txt >@@ -4,20 +4,20 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > > >-Single value for background-image : url(http://www.webkit.org/a) 1x >-PASS testComputedStyle("background-image", "image-set(url(http://www.webkit.org/a) 1x)") is "image-set(url(http://www.webkit.org/a) 1x)" >+Single value for background-image : url("http://www.webkit.org/a") 1x >+PASS style.backgroundImage is "image-set(url(\"http://www.webkit.org/a\") 1x)" > >-Multiple values for background-image : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >-PASS testComputedStyle("background-image", "image-set(url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x)") is "image-set(url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x)" >+Multiple values for background-image : url("http://www.webkit.org/a") 1x, url("http://www.webkit.org/b") 2x >+PASS style.backgroundImage is "image-set(url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x)" > >-Multiple values for background-image, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-PASS testComputedStyle("background-image", "image-set(url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x)") is "image-set(url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x)" >+Multiple values for background-image, out of order : url("http://www.webkit.org/c") 3x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x >+PASS style.backgroundImage is "image-set(url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x)" > >-Duplicate values for background-image : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-PASS testComputedStyle("background-image", "image-set(url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x)") is "image-set(url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x)" >+Duplicate values for background-image : url("http://www.webkit.org/c") 1x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x >+PASS style.backgroundImage is "image-set(url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x)" > >-Fractional values for background-image : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >-PASS testComputedStyle("background-image", "image-set(url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x)") is "image-set(url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x)" >+Fractional values for background-image : url("http://www.webkit.org/c") 0.2x, url("http://www.webkit.org/b") 2.3x, url("http://www.webkit.org/a") 12.3456x >+PASS style.backgroundImage is "image-set(url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x)" > PASS successfullyParsed is true > > TEST COMPLETE >diff --git a/LayoutTests/fast/css/image-set-setting.html b/LayoutTests/fast/css/image-set-setting.html >index b9169bab1402c1062315ef17e4ddeea5a6f262f9..7e672ad7d39f21528f8ff39343b9b162bf457f88 100644 >--- a/LayoutTests/fast/css/image-set-setting.html >+++ b/LayoutTests/fast/css/image-set-setting.html >@@ -9,12 +9,14 @@ > <script> > description("Test the setting of the image-set function."); > >+var style; >+ > function testComputedStyle(property, fullRule) > { > var div = document.createElement("div"); > document.body.appendChild(div); > div.setAttribute("style", property + ": " + fullRule); >- var computedValue = div.style.backgroundImage; >+ var computedValue = div.style; > document.body.removeChild(div); > return computedValue; > } >@@ -25,28 +27,29 @@ function testImageSetRule(description, property, rule, expected) > debug(description + " : " + rule); > > var fullRule = "image-set(" + rule + ")"; >- shouldBeEqualToString('testComputedStyle("' + property + '", "' + fullRule + '")', fullRule); >+ style = testComputedStyle(property, fullRule); >+ shouldBeEqualToString('style.backgroundImage', fullRule); > } > > testImageSetRule("Single value for background-image", > "background-image", >- "url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Multiple values for background-image", > "background-image", >- "url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x"); >+ "url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x"); > > testImageSetRule("Multiple values for background-image, out of order", > "background-image", >- "url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Duplicate values for background-image", > "background-image", >- "url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Fractional values for background-image", > "background-image", >- "url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x"); >+ "url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x"); > > // FIXME: We should also be testing the behavior of negative values somewhere, but it's currently > // broken. http://wkb.ug/100132 >diff --git a/LayoutTests/fast/css/image-set-unprefixed-expected.txt b/LayoutTests/fast/css/image-set-unprefixed-expected.txt >index 288b486388b3f94dd39abd38115c86e719968889..2f0aacc326abb360beb44cb6c4cf243f67acc8c2 100644 >--- a/LayoutTests/fast/css/image-set-unprefixed-expected.txt >+++ b/LayoutTests/fast/css/image-set-unprefixed-expected.txt >@@ -1,81 +1,81 @@ > >-Single value for background-image : url(http://www.webkit.org/a) 1x >+Single value for background-image : url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for background-image : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >+Multiple values for background-image : url("http://www.webkit.org/a") 1x, url("http://www.webkit.org/b") 2x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for background-image, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Multiple values for background-image, out of order : url("http://www.webkit.org/c") 3x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Duplicate values for background-image : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Duplicate values for background-image : url("http://www.webkit.org/c") 1x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Fractional values for background-image : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >+Fractional values for background-image : url("http://www.webkit.org/c") 0.2x, url("http://www.webkit.org/b") 2.3x, url("http://www.webkit.org/a") 12.3456x > Unprefixed: PASS > Prefixed: PASS > >-Single value for cursor : url(http://www.webkit.org/a) 1x >+Single value for cursor : url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for cursor : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >+Multiple values for cursor : url("http://www.webkit.org/a") 1x, url("http://www.webkit.org/b") 2x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for cursor, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Multiple values for cursor, out of order : url("http://www.webkit.org/c") 3x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Duplicate values for cursor : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Duplicate values for cursor : url("http://www.webkit.org/c") 1x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Fractional values for cursor : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >+Fractional values for cursor : url("http://www.webkit.org/c") 0.2x, url("http://www.webkit.org/b") 2.3x, url("http://www.webkit.org/a") 12.3456x > Unprefixed: PASS > Prefixed: PASS > >-Single value for list-style-image : url(http://www.webkit.org/a) 1x >+Single value for list-style-image : url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for list-style-image : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >+Multiple values for list-style-image : url("http://www.webkit.org/a") 1x, url("http://www.webkit.org/b") 2x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for list-style-image, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Multiple values for list-style-image, out of order : url("http://www.webkit.org/c") 3x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Duplicate values for list-style-image : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Duplicate values for list-style-image : url("http://www.webkit.org/c") 1x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Fractional values for list-style-image : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >+Fractional values for list-style-image : url("http://www.webkit.org/c") 0.2x, url("http://www.webkit.org/b") 2.3x, url("http://www.webkit.org/a") 12.3456x > Unprefixed: PASS > Prefixed: PASS > >-Single value for content : url(http://www.webkit.org/a) 1x >+Single value for content : url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for content : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >+Multiple values for content : url("http://www.webkit.org/a") 1x, url("http://www.webkit.org/b") 2x > Unprefixed: PASS > Prefixed: PASS > >-Multiple values for content, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Multiple values for content, out of order : url("http://www.webkit.org/c") 3x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Duplicate values for content : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >+Duplicate values for content : url("http://www.webkit.org/c") 1x, url("http://www.webkit.org/b") 2x, url("http://www.webkit.org/a") 1x > Unprefixed: PASS > Prefixed: PASS > >-Fractional values for content : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >+Fractional values for content : url("http://www.webkit.org/c") 0.2x, url("http://www.webkit.org/b") 2.3x, url("http://www.webkit.org/a") 12.3456x > Unprefixed: PASS > Prefixed: PASS > >diff --git a/LayoutTests/fast/css/image-set-unprefixed.html b/LayoutTests/fast/css/image-set-unprefixed.html >index 6ddfb2075f11ca0ed489deba64e49d5fdd68b2cc..a5ab5885133e48655f46f9af68b8dad5b8e3e8d8 100644 >--- a/LayoutTests/fast/css/image-set-unprefixed.html >+++ b/LayoutTests/fast/css/image-set-unprefixed.html >@@ -41,83 +41,83 @@ if (window.testRunner) > > testImageSetRule("Single value for background-image", > "background-image", >- "url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Multiple values for background-image", > "background-image", >- "url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x"); >+ "url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x"); > > testImageSetRule("Multiple values for background-image, out of order", > "background-image", >- "url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Duplicate values for background-image", > "background-image", >- "url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Fractional values for background-image", > "background-image", >- "url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x"); >+ "url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x"); > > testImageSetRule("Single value for cursor", > "cursor", >- "url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Multiple values for cursor", > "cursor", >- "url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x"); >+ "url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x"); > > testImageSetRule("Multiple values for cursor, out of order", > "cursor", >- "url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Duplicate values for cursor", > "cursor", >- "url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Fractional values for cursor", > "cursor", >- "url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x"); >+ "url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x"); > > testImageSetRule("Single value for list-style-image", > "list-style-image", >- "url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Multiple values for list-style-image", > "list-style-image", >- "url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x"); >+ "url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x"); > > testImageSetRule("Multiple values for list-style-image, out of order", > "list-style-image", >- "url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Duplicate values for list-style-image", > "list-style-image", >- "url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Fractional values for list-style-image", > "list-style-image", >- "url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x"); >+ "url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x"); > > testImageSetRule("Single value for content", > "content", >- "url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Multiple values for content", > "content", >- "url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x"); >+ "url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x"); > > testImageSetRule("Multiple values for content, out of order", > "content", >- "url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Duplicate values for content", > "content", >- "url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x"); >+ "url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x"); > > testImageSetRule("Fractional values for content", > "content", >- "url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x"); >+ "url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x"); > > > </script> >diff --git a/LayoutTests/fast/css/invalid-cursor-property-crash.html b/LayoutTests/fast/css/invalid-cursor-property-crash.html >index 15ee861770932da1ea84edcee62ee9989c884548..3ef12df0cafec5f98cbec17eaef519355540ed3a 100644 >--- a/LayoutTests/fast/css/invalid-cursor-property-crash.html >+++ b/LayoutTests/fast/css/invalid-cursor-property-crash.html >@@ -8,7 +8,7 @@ > var d = document.getElementById('theDiv'); > var style = document.defaultView.getComputedStyle(d, ''); > >- if (style && style.cursor == 'url(' + document.location + '), auto') >+ if (style && style.cursor == 'url("' + document.location + '"), auto') > document.getElementById('result').innerHTML = 'SUCCESS'; > } > </script> >diff --git a/LayoutTests/fast/css/parse-border-image-repeat-null-crash-expected.txt b/LayoutTests/fast/css/parse-border-image-repeat-null-crash-expected.txt >index aca9d46d7f2bd3374e3140f72b39f502f4e45987..becf0592129fff425f5c121af4cfacee1258bc65 100644 >--- a/LayoutTests/fast/css/parse-border-image-repeat-null-crash-expected.txt >+++ b/LayoutTests/fast/css/parse-border-image-repeat-null-crash-expected.txt >@@ -1,2 +1,2 @@ >-CONSOLE MESSAGE: line 4: border-image-source: url(shadow-border.png); border-image-slice: 10; border-image-repeat: stretch; >+CONSOLE MESSAGE: line 4: border-image-source: url("shadow-border.png"); border-image-slice: 10; border-image-repeat: stretch; > This test should not crash >diff --git a/LayoutTests/fast/css/uri-token-parsing-expected.txt b/LayoutTests/fast/css/uri-token-parsing-expected.txt >index 72fb01d975a9c75468e749dad7d0328fe311e706..9cc0e4386b5275240efcea9498748eea3210a173 100644 >--- a/LayoutTests/fast/css/uri-token-parsing-expected.txt >+++ b/LayoutTests/fast/css/uri-token-parsing-expected.txt >@@ -4,19 +4,19 @@ SUCCESS > > Rules from the stylesheet: > >-#a { content: url(c); } >-#b { content: url(d); } >-#c { content: url(e); } >-#d { content: url(f); } >-#f { content: url(c); } >-#g { content: url(d); } >-#h { content: url(e); } >-#i { content: url(f); } >+#a { content: url("c"); } >+#b { content: url("d"); } >+#c { content: url("e"); } >+#d { content: url("f"); } >+#f { content: url("c"); } >+#g { content: url("d"); } >+#h { content: url("e"); } >+#i { content: url("f"); } > #j { content: url("url(g)"); } >-#l { content: url(c); } >-#m { content: url(d); } >-#n { content: url(e); } >-#o { content: url(f); } >+#l { content: url("c"); } >+#m { content: url("d"); } >+#n { content: url("e"); } >+#o { content: url("f"); } > #p { content: url("url(g)"); } > #q { cursor: url("url(q)"), default; } > #r { list-style-image: url("url(r)"); } >@@ -24,24 +24,24 @@ Rules from the stylesheet: > #t { -webkit-mask-image: url("url(t)"); } > #u { -webkit-border-image: url("url(u)") 1 2 3 4 fill stretch round; } > #v { -webkit-mask-box-image: url("url(v)") 1 2 3 4 fill stretch round; } >-#w { content: url(ww); } >-#x { content: url(x%20xx); } >-#y { content: url(y%20yy); } >+#w { content: url("ww"); } >+#x { content: url("x%20xx"); } >+#y { content: url("y%20yy"); } > Expected result: > >-#a { content: url(c); } >-#b { content: url(d); } >-#c { content: url(e); } >-#d { content: url(f); } >-#f { content: url(c); } >-#g { content: url(d); } >-#h { content: url(e); } >-#i { content: url(f); } >+#a { content: url("c"); } >+#b { content: url("d"); } >+#c { content: url("e"); } >+#d { content: url("f"); } >+#f { content: url("c"); } >+#g { content: url("d"); } >+#h { content: url("e"); } >+#i { content: url("f"); } > #j { content: url("url(g)"); } >-#l { content: url(c); } >-#m { content: url(d); } >-#n { content: url(e); } >-#o { content: url(f); } >+#l { content: url("c"); } >+#m { content: url("d"); } >+#n { content: url("e"); } >+#o { content: url("f"); } > #p { content: url("url(g)"); } > #q { cursor: url("url(q)"), default; } > #r { list-style-image: url("url(r)"); } >@@ -49,7 +49,7 @@ Expected result: > #t { -webkit-mask-image: url("url(t)"); } > #u { -webkit-border-image: url("url(u)") 1 2 3 4 fill stretch round; } > #v { -webkit-mask-box-image: url("url(v)") 1 2 3 4 fill stretch round; } >-#w { content: url(ww); } >-#x { content: url(x%20xx); } >-#y { content: url(y%20yy); } >+#w { content: url("ww"); } >+#x { content: url("x%20xx"); } >+#y { content: url("y%20yy"); } > >diff --git a/LayoutTests/fast/css/uri-token-parsing.html b/LayoutTests/fast/css/uri-token-parsing.html >index ec798de7660e9d53a61c3d5b62d0495858d07d10..677c9d1534ed7265aa23a1b00fad2352692f5a7d 100644 >--- a/LayoutTests/fast/css/uri-token-parsing.html >+++ b/LayoutTests/fast/css/uri-token-parsing.html >@@ -78,19 +78,19 @@ function runTest() > > <p>Expected result:</p> > >-<pre id="expected">#a { content: url(c); } >-#b { content: url(d); } >-#c { content: url(e); } >-#d { content: url(f); } >-#f { content: url(c); } >-#g { content: url(d); } >-#h { content: url(e); } >-#i { content: url(f); } >+<pre id="expected">#a { content: url("c"); } >+#b { content: url("d"); } >+#c { content: url("e"); } >+#d { content: url("f"); } >+#f { content: url("c"); } >+#g { content: url("d"); } >+#h { content: url("e"); } >+#i { content: url("f"); } > #j { content: url("url(g)"); } >-#l { content: url(c); } >-#m { content: url(d); } >-#n { content: url(e); } >-#o { content: url(f); } >+#l { content: url("c"); } >+#m { content: url("d"); } >+#n { content: url("e"); } >+#o { content: url("f"); } > #p { content: url("url(g)"); } > #q { cursor: url("url(q)"), default; } > #r { list-style-image: url("url(r)"); } >@@ -98,9 +98,9 @@ function runTest() > #t { -webkit-mask-image: url("url(t)"); } > #u { -webkit-border-image: url("url(u)") 1 2 3 4 fill stretch round; } > #v { -webkit-mask-box-image: url("url(v)") 1 2 3 4 fill stretch round; } >-#w { content: url(ww); } >-#x { content: url(x%20xx); } >-#y { content: url(y%20yy); } >+#w { content: url("ww"); } >+#x { content: url("x%20xx"); } >+#y { content: url("y%20yy"); } > </pre> > > <script> >diff --git a/LayoutTests/fast/css/url-with-multi-byte-unicode-escape-expected.txt b/LayoutTests/fast/css/url-with-multi-byte-unicode-escape-expected.txt >index c0d214c72f05c6d3c5a0537df4956f1f1b8534c7..53613be8e1e08365898c867f763cbfa6beba97d6 100644 >--- a/LayoutTests/fast/css/url-with-multi-byte-unicode-escape-expected.txt >+++ b/LayoutTests/fast/css/url-with-multi-byte-unicode-escape-expected.txt >@@ -4,8 +4,8 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > > PASS document.styleSheets[0].cssRules.length is 2 >-PASS document.styleSheets[0].cssRules[0].style.getPropertyValue("background-image") is "url(data:%C4%80)" >-PASS document.styleSheets[0].cssRules[0].style.getPropertyValue("border-image-source") is "url(data:%C4%80)" >+PASS document.styleSheets[0].cssRules[0].style.getPropertyValue("background-image") is "url(\"data:%C4%80\")" >+PASS document.styleSheets[0].cssRules[0].style.getPropertyValue("border-image-source") is "url(\"data:%C4%80\")" > PASS document.styleSheets[0].cssRules[1].style.getPropertyValue("background-color") is "green" > PASS window.getComputedStyle(document.getElementById("test")).getPropertyValue("background-color") is "rgb(0, 128, 0)" > PASS successfullyParsed is true >diff --git a/LayoutTests/fast/css/url-with-multi-byte-unicode-escape.html b/LayoutTests/fast/css/url-with-multi-byte-unicode-escape.html >index a3d8fc479744f4bb7bb2389db3c89d66a8eab06b..743562037d62c179bc0082a375e408f29baef34c 100644 >--- a/LayoutTests/fast/css/url-with-multi-byte-unicode-escape.html >+++ b/LayoutTests/fast/css/url-with-multi-byte-unicode-escape.html >@@ -13,8 +13,8 @@ > <script> > description('Test parsing a CSS URI containing a multi-byte Unicode escape sequence.'); > shouldBe('document.styleSheets[0].cssRules.length', '2'); >- shouldBeEqualToString('document.styleSheets[0].cssRules[0].style.getPropertyValue("background-image")', 'url(data:%C4%80)'); >- shouldBeEqualToString('document.styleSheets[0].cssRules[0].style.getPropertyValue("border-image-source")', 'url(data:%C4%80)'); >+ shouldBeEqualToString('document.styleSheets[0].cssRules[0].style.getPropertyValue("background-image")', 'url("data:%C4%80")'); >+ shouldBeEqualToString('document.styleSheets[0].cssRules[0].style.getPropertyValue("border-image-source")', 'url("data:%C4%80")'); > shouldBeEqualToString('document.styleSheets[0].cssRules[1].style.getPropertyValue("background-color")', 'green'); > shouldBeEqualToString('window.getComputedStyle(document.getElementById("test")).getPropertyValue("background-color")', 'rgb(0, 128, 0)'); > </script> >diff --git a/LayoutTests/fast/filter-image/parse-filter-image-expected.txt b/LayoutTests/fast/filter-image/parse-filter-image-expected.txt >index f52907838eaaa5c5906fa820b2d6dd2252b0a119..30bf41ef3a2eb445b0459b07abe2577888510ec3 100644 >--- a/LayoutTests/fast/filter-image/parse-filter-image-expected.txt >+++ b/LayoutTests/fast/filter-image/parse-filter-image-expected.txt >@@ -4,10 +4,10 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > > > PASS innerStyle("background-image", "filter(none, blur(3px))") is "filter(none, blur(3px))" >-PASS innerStyle("background-image", "filter(none, url(#a))") is "filter(none, url(#a))" >-PASS innerStyle("background-image", "filter(none, url(#a))") is "filter(none, url(#a))" >-PASS innerStyle("background-image", "filter(none, url(#a) url(#b))") is "filter(none, url(#a) url(#b))" >-PASS innerStyle("background-image", "filter(none, grayscale(1) url(#a))") is "filter(none, grayscale(1) url(#a))" >+PASS innerStyle("background-image", "filter(none, url(#a))") is "filter(none, url(\"#a\"))" >+PASS innerStyle("background-image", "filter(none, url(#a))") is "filter(none, url(\"#a\"))" >+PASS innerStyle("background-image", "filter(none, url(#a) url(#b))") is "filter(none, url(\"#a\") url(\"#b\"))" >+PASS innerStyle("background-image", "filter(none, grayscale(1) url(#a))") is "filter(none, grayscale(1) url(\"#a\"))" > PASS innerStyle("background-image", "filter(none, grayscale(1))") is "filter(none, grayscale(1))" > PASS innerStyle("background-image", "filter(none, grayscale(50%))") is "filter(none, grayscale(50%))" > PASS innerStyle("background-image", "filter(none, grayscale(1.0))") is "filter(none, grayscale(1))" >@@ -78,13 +78,13 @@ PASS innerStyle("background-image", "filter(radial-gradient(ellipse closest-corn > PASS innerStyle("background-image", "filter(linear-gradient(white, black), hue-rotate(90deg))") is "filter(linear-gradient(white, black), hue-rotate(90deg))" > PASS innerStyle("background-image", "filter(linear-gradient(to top left, white, black), hue-rotate(90deg))") is "filter(linear-gradient(to left top, white, black), hue-rotate(90deg))" > PASS innerStyle("background-image", "filter(linear-gradient(0deg, white -20%, blue, black 120%), hue-rotate(90deg))") is "filter(linear-gradient(0deg, white -20%, blue, black 120%), hue-rotate(90deg))" >-PASS innerStyle("background-image", "filter(-webkit-cross-fade(url(http://image1.png), url(http://image2.png), 50%), contrast(0.5))") is "filter(-webkit-cross-fade(url(http://image1.png/), url(http://image2.png/), 0.5), contrast(0.5))" >-PASS innerStyle("background-image", "filter(url(http://image1.png), brightness(50%))") is "filter(url(http://image1.png/), brightness(50%))" >-PASS innerStyle("background-image", "filter(url('http://image1.png'), brightness(50%))") is "filter(url(http://image1.png/), brightness(50%))" >-PASS innerStyle("border-image-source", "filter(url(http://image1.png), invert(50%))") is "filter(url(http://image1.png/), invert(50%))" >-PASS innerStyle("-webkit-mask-image", "filter(url(http://image1.png), invert(50%))") is "filter(url(http://image1.png/), invert(50%))" >-PASS innerStyle("-webkit-mask-box-image-source", "filter(url(http://image1.png), invert(50%))") is "filter(url(http://image1.png/), invert(50%))" >-PASS innerStyle("content", "filter(url(http://image1.png), invert(50%))") is "filter(url(http://image1.png/), invert(50%))" >+PASS innerStyle("background-image", "filter(-webkit-cross-fade(url(http://image1.png), url(http://image2.png), 50%), contrast(0.5))") is "filter(-webkit-cross-fade(url(\"http://image1.png/\"), url(\"http://image2.png/\"), 0.5), contrast(0.5))" >+PASS innerStyle("background-image", "filter(url(http://image1.png), brightness(50%))") is "filter(url(\"http://image1.png/\"), brightness(50%))" >+PASS innerStyle("background-image", "filter(url('http://image1.png'), brightness(50%))") is "filter(url(\"http://image1.png/\"), brightness(50%))" >+PASS innerStyle("border-image-source", "filter(url(http://image1.png), invert(50%))") is "filter(url(\"http://image1.png/\"), invert(50%))" >+PASS innerStyle("-webkit-mask-image", "filter(url(http://image1.png), invert(50%))") is "filter(url(\"http://image1.png/\"), invert(50%))" >+PASS innerStyle("-webkit-mask-box-image-source", "filter(url(http://image1.png), invert(50%))") is "filter(url(\"http://image1.png/\"), invert(50%))" >+PASS innerStyle("content", "filter(url(http://image1.png), invert(50%))") is "filter(url(\"http://image1.png/\"), invert(50%))" > PASS innerStyle("background-image", "filter()") is "" > PASS computedStyle("background-image", "filter()") is "none" > PASS innerStyle("background-image", "filter(url(image1.png))") is "" >diff --git a/LayoutTests/fast/filter-image/parse-filter-image.html b/LayoutTests/fast/filter-image/parse-filter-image.html >index eab5317ea83e60e146a54ac8bf68fb74bba1e1ab..a4ac640ffbdf7cdf5c1f597be43699273ca92b96 100644 >--- a/LayoutTests/fast/filter-image/parse-filter-image.html >+++ b/LayoutTests/fast/filter-image/parse-filter-image.html >@@ -48,19 +48,19 @@ testInner( > testInner( > "background-image", > "filter(none, url(#a))", >- "filter(none, url(#a))"); >+ "filter(none, url(\"#a\"))"); > testInner( > "background-image", > "filter(none, url(#a))", >- "filter(none, url(#a))"); >+ "filter(none, url(\"#a\"))"); > testInner( > "background-image", > "filter(none, url(#a) url(#b))", >- "filter(none, url(#a) url(#b))"); >+ "filter(none, url(\"#a\") url(\"#b\"))"); > testInner( > "background-image", > "filter(none, grayscale(1) url(#a))", >- "filter(none, grayscale(1) url(#a))"); >+ "filter(none, grayscale(1) url(\"#a\"))"); > testInner( > "background-image", > "filter(none, grayscale(1))", >@@ -346,33 +346,33 @@ testInner( > testInner( > "background-image", > "filter(-webkit-cross-fade(url(http://image1.png), url(http://image2.png), 50%), contrast(0.5))", >- "filter(-webkit-cross-fade(url(http://image1.png/), url(http://image2.png/), 0.5), contrast(0.5))"); >+ "filter(-webkit-cross-fade(url(\"http://image1.png/\"), url(\"http://image2.png/\"), 0.5), contrast(0.5))"); > testInner( > "background-image", > "filter(url(http://image1.png), brightness(50%))", >- "filter(url(http://image1.png/), brightness(50%))"); >+ "filter(url(\"http://image1.png/\"), brightness(50%))"); > testInner( > "background-image", > "filter(url('http://image1.png'), brightness(50%))", >- "filter(url(http://image1.png/), brightness(50%))"); >+ "filter(url(\"http://image1.png/\"), brightness(50%))"); > > // Test different properties, taking CSS Image values. > testInner( > "border-image-source", > "filter(url(http://image1.png), invert(50%))", >- "filter(url(http://image1.png/), invert(50%))"); >+ "filter(url(\"http://image1.png/\"), invert(50%))"); > testInner( > "-webkit-mask-image", > "filter(url(http://image1.png), invert(50%))", >- "filter(url(http://image1.png/), invert(50%))"); >+ "filter(url(\"http://image1.png/\"), invert(50%))"); > testInner( > "-webkit-mask-box-image-source", > "filter(url(http://image1.png), invert(50%))", >- "filter(url(http://image1.png/), invert(50%))"); >+ "filter(url(\"http://image1.png/\"), invert(50%))"); > testInner( > "content", > "filter(url(http://image1.png), invert(50%))", >- "filter(url(http://image1.png/), invert(50%))"); >+ "filter(url(\"http://image1.png/\"), invert(50%))"); > > // negative tests > negativeTest("background-image", "filter()"); >diff --git a/LayoutTests/fast/innerHTML/innerHTML-uri-resolution.html b/LayoutTests/fast/innerHTML/innerHTML-uri-resolution.html >index 5ab620da1b1e31d4a83e6d764ec9a61f0e354a2c..854e0f1a0b713769cc396685446731d82dc10531 100644 >--- a/LayoutTests/fast/innerHTML/innerHTML-uri-resolution.html >+++ b/LayoutTests/fast/innerHTML/innerHTML-uri-resolution.html >@@ -13,7 +13,7 @@ > > var currentUri = document.location.href; > var currentPath = currentUri.substring(0, currentUri.lastIndexOf('/')); >- var cssUriWasResolvedAgainstDocumentUri = document.getElementById("test-span").style.backgroundImage == 'url(' + currentPath + '/image.png)'; >+ var cssUriWasResolvedAgainstDocumentUri = document.getElementById("test-span").style.backgroundImage == 'url("' + currentPath + '/image.png")'; > > // Can't log the actual path since it's different depending on where the test is run. > shouldBeTrue('cssUriWasResolvedAgainstDocumentUri'); >diff --git a/LayoutTests/fast/inspector-support/cssURLQuotes-expected.txt b/LayoutTests/fast/inspector-support/cssURLQuotes-expected.txt >index ce78da3c803bc27b7eb48ca3cbee3aae3a2e93f7..cb23708d4746f4bd7f07fe1266e0413fd4b19996 100644 >--- a/LayoutTests/fast/inspector-support/cssURLQuotes-expected.txt >+++ b/LayoutTests/fast/inspector-support/cssURLQuotes-expected.txt >@@ -1,4 +1,4 @@ >-ALERT: url(file:///unquoted) (URL should not be quoted) >-ALERT: url(file:///noQuotesNeeded) (URL should not be quoted) >+ALERT: url("file:///unquoted") (URL should be quoted) >+ALERT: url("file:///quoted") (URL should be quoted) > ALERT: url("file:///should(Quote)") (URL should be quoted) > >diff --git a/LayoutTests/fast/inspector-support/cssURLQuotes.html b/LayoutTests/fast/inspector-support/cssURLQuotes.html >index 5b3dfb299454fe6d0325f8a7a245435dabf18405..4318f3b4f6d1edc8d5aac309276dd6a0851336ce 100644 >--- a/LayoutTests/fast/inspector-support/cssURLQuotes.html >+++ b/LayoutTests/fast/inspector-support/cssURLQuotes.html >@@ -1,5 +1,5 @@ > <div id="testUnquoted" style="background-image: url(file:///unquoted)"></div> >-<div id="testNoQuotesNeeded" style="background-image: url('file:///noQuotesNeeded')"></div> >+<div id="testQuoted" style="background-image: url('file:///quoted')"></div> > <div id="testShouldQuote" style="background-image: url('file:///should(Quote)')"></div> > <script> > function test(id, reason) { >@@ -7,7 +7,7 @@ function test(id, reason) { > } > if (window.testRunner) > testRunner.dumpAsText(); >-test("testUnquoted", "URL should not be quoted"); >-test("testNoQuotesNeeded", "URL should not be quoted"); >+test("testUnquoted", "URL should be quoted"); >+test("testQuoted", "URL should be quoted"); > test("testShouldQuote", "URL should be quoted"); > </script> >diff --git a/LayoutTests/fast/masking/parsing-clip-path-iri-expected.txt b/LayoutTests/fast/masking/parsing-clip-path-iri-expected.txt >index 7c78edeab3ff0b49799782f18f629c34b3845bd1..d07d234869435e5440f7d6617860e8d21149d60d 100644 >--- a/LayoutTests/fast/masking/parsing-clip-path-iri-expected.txt >+++ b/LayoutTests/fast/masking/parsing-clip-path-iri-expected.txt >@@ -3,10 +3,10 @@ Test clip-path IRIs > On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". > > >-PASS innerStyle("-webkit-clip-path", "url(#clip1)") is "url(#clip1)" >-PASS innerStyle("-webkit-clip-path", "url(clip.svg#clip1)") is "url(clip.svg#clip1)" >-PASS computedStyle("-webkit-clip-path", "url(#clip1)") is "url(#clip1)" >-PASS computedStyle("-webkit-clip-path", "url(clip.svg#clip1)") is "url(clip.svg#clip1)" >+PASS innerStyle("-webkit-clip-path", "url(#clip1)") is "url(\"#clip1\")" >+PASS innerStyle("-webkit-clip-path", "url(clip.svg#clip1)") is "url(\"clip.svg#clip1\")" >+PASS computedStyle("-webkit-clip-path", "url(#clip1)") is "url(\"#clip1\")" >+PASS computedStyle("-webkit-clip-path", "url(clip.svg#clip1)") is "url(\"clip.svg#clip1\")" > PASS successfullyParsed is true > > TEST COMPLETE >diff --git a/LayoutTests/fast/masking/parsing-clip-path-iri.html b/LayoutTests/fast/masking/parsing-clip-path-iri.html >index 69cb5fb886baab68942ae5c2101b35d2c88392ce..01020ed52d3542b127fe37a683c57cca5a2c6d11 100644 >--- a/LayoutTests/fast/masking/parsing-clip-path-iri.html >+++ b/LayoutTests/fast/masking/parsing-clip-path-iri.html >@@ -35,11 +35,11 @@ function testInner(property, value, expected) { > shouldBeEqualToString('innerStyle("' + property + '", "' + value + '")', expected); > } > >-testInner("-webkit-clip-path", "url(#clip1)", "url(#clip1)"); >-testInner("-webkit-clip-path", "url(clip.svg#clip1)", "url(clip.svg#clip1)"); >+testInner("-webkit-clip-path", "url(#clip1)", "url(\"#clip1\")"); >+testInner("-webkit-clip-path", "url(clip.svg#clip1)", "url(\"clip.svg#clip1\")"); > >-testComputed("-webkit-clip-path", "url(#clip1)", "url(#clip1)"); >-testComputed("-webkit-clip-path", "url(clip.svg#clip1)", "url(clip.svg#clip1)"); >+testComputed("-webkit-clip-path", "url(#clip1)", "url(\"#clip1\")"); >+testComputed("-webkit-clip-path", "url(clip.svg#clip1)", "url(\"clip.svg#clip1\")"); > > </script> > <script src="../../resources/js-test-post.js"></script> >diff --git a/LayoutTests/fast/masking/parsing-mask-expected.txt b/LayoutTests/fast/masking/parsing-mask-expected.txt >index b8e3bd971efdf21309b4b2727b9d8c326f2744c5..9535ac75496517f21ea268f37a6f1b881a8706ee 100644 >--- a/LayoutTests/fast/masking/parsing-mask-expected.txt >+++ b/LayoutTests/fast/masking/parsing-mask-expected.txt >@@ -6,8 +6,8 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE > PASS innerStyle("-webkit-mask", "none") is "none" > PASS innerStyle("-webkit-mask", "none, none") is "none, none" > PASS innerStyle("-webkit-mask", "none, none, none") is "none, none, none" >-PASS innerStyle("-webkit-mask", "url(file:///image.png), none") is "url(file:///image.png), none" >-PASS innerStyle("-webkit-mask", "none, url(file:///image.png)") is "none, url(file:///image.png)" >+PASS innerStyle("-webkit-mask", "url(file:///image.png), none") is "url(\"file:///image.png\"), none" >+PASS innerStyle("-webkit-mask", "none, url(file:///image.png)") is "none, url(\"file:///image.png\")" > PASS innerStyle("-webkit-mask", "top left") is "left top" > PASS innerStyle("-webkit-mask", "bottom right") is "right bottom" > PASS innerStyle("-webkit-mask", "left bottom") is "left bottom" >diff --git a/LayoutTests/fast/masking/parsing-mask.html b/LayoutTests/fast/masking/parsing-mask.html >index 3fa86bbbe4eb3cc99d2103cd774f3fe6c8b0856d..410dae59a51dd07962b45c89ec7be9dfe8786f16 100644 >--- a/LayoutTests/fast/masking/parsing-mask.html >+++ b/LayoutTests/fast/masking/parsing-mask.html >@@ -44,8 +44,8 @@ function negativeTest(property, value) { > testInner("-webkit-mask", "none", "none"); > testInner("-webkit-mask", "none, none", "none, none"); > testInner("-webkit-mask", "none, none, none", "none, none, none"); >-testInner("-webkit-mask", "url(file:///image.png), none", "url(file:///image.png), none"); >-testInner("-webkit-mask", "none, url(file:///image.png)", "none, url(file:///image.png)"); >+testInner("-webkit-mask", "url(file:///image.png), none", "url(\"file:///image.png\"), none"); >+testInner("-webkit-mask", "none, url(file:///image.png)", "none, url(\"file:///image.png\")"); > > > // test mask-position >diff --git a/LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt b/LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt >index 639e3989bfce0c0f9e1f0e1db77336252c6a5dfe..8d50187f3d5f885efe6ba5efbceaf8773098a10e 100644 >--- a/LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt >+++ b/LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt >@@ -183,8 +183,8 @@ PASS getCSSText("-webkit-shape-outside", "linear-gradient(to right, red, blue)") > PASS getComputedStyleValue("-webkit-shape-outside", "linear-gradient(to right, red, blue)") is "linear-gradient(to right, red, blue)" > PASS getCSSText("-webkit-shape-outside", "radial-gradient(at 10px 20px, red 0%, blue 50%, green 95%)") is "radial-gradient(at 10px 20px, red 0%, blue 50%, green 95%)" > PASS getComputedStyleValue("-webkit-shape-outside", "radial-gradient(at 10px 20px, red 0%, blue 50%, green 95%)") is "radial-gradient(at 10px 20px, red 0%, blue 50%, green 95%)" >-PASS removeBaseURL(getCSSText("-webkit-shape-outside", "url('image')")) is "url(image)" >-PASS removeBaseURL(getComputedStyleValue("-webkit-shape-outside", "url('image')")) is "url(image)" >+PASS removeBaseURL(getCSSText("-webkit-shape-outside", "url('image')")) is "url(\"image\")" >+PASS removeBaseURL(getComputedStyleValue("-webkit-shape-outside", "url('image')")) is "url(\"image\")" > PASS getCSSText("-webkit-shape-outside", "calc()") is "" > PASS getComputedStyleValue("-webkit-shape-outside", "calc()") is "none" > PASS getCSSText("-webkit-shape-outside", "auto") is "" >diff --git a/LayoutTests/fast/shapes/parsing/parsing-shape-outside.html b/LayoutTests/fast/shapes/parsing/parsing-shape-outside.html >index 436ee6ded2e16f763175b1b0d272021bd1b45bd6..a5155292ff0e00f38badb711eeb8ece4896e7c2b 100644 >--- a/LayoutTests/fast/shapes/parsing/parsing-shape-outside.html >+++ b/LayoutTests/fast/shapes/parsing/parsing-shape-outside.html >@@ -17,7 +17,7 @@ validShapeValues.forEach(function(elt, i, a) { > testShapeComputedProperty("-webkit-shape-outside", value, computedValue); > }); > >-testLocalURLShapeProperty("-webkit-shape-outside", "url(\'image\')", "url(image)"); >+testLocalURLShapeProperty("-webkit-shape-outside", "url(\'image\')", 'url("image")'); > > invalidShapeValues.forEach(function(value, i, a) { > testShapePropertyParsingFailure("-webkit-shape-outside", value, "none") >diff --git a/LayoutTests/fast/shapes/parsing/parsing-test-utils.js b/LayoutTests/fast/shapes/parsing/parsing-test-utils.js >index 9d4e8ab8a1c9597e52454ddb8fa9eeb1a74c7dbb..cb25c2a2083a5a2186692986b875e70b8972fbf5 100644 >--- a/LayoutTests/fast/shapes/parsing/parsing-test-utils.js >+++ b/LayoutTests/fast/shapes/parsing/parsing-test-utils.js >@@ -252,9 +252,9 @@ function testNotInheritedShapeChildProperty(property, parentValue, childValue, e > > // Need to remove the base URL to avoid having local paths in the expected results. > function removeBaseURL(src) { >- var urlRegexp = /url\(([^\)]*)\)/g; >+ var urlRegexp = /url\("([^\)]*)"\)/g; > return src.replace(urlRegexp, function(match, url) { >- return "url(" + url.substr(url.lastIndexOf("/") + 1) + ")"; >+ return "url(\"" + url.substr(url.lastIndexOf("/") + 1) + "\")"; > }); > } > >diff --git a/LayoutTests/imported/w3c/web-platform-tests/cssom/serialize-values-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/cssom/serialize-values-expected.txt >index 9f36e3d39dd83db26c4de350761acd42e0398100..c4cf77abf695cac7ea90ca47bdd4feea782b1ac5 100644 >--- a/LayoutTests/imported/w3c/web-platform-tests/cssom/serialize-values-expected.txt >+++ b/LayoutTests/imported/w3c/web-platform-tests/cssom/serialize-values-expected.txt >@@ -8,8 +8,8 @@ PASS background-color: rgb(50, 75, 100) > FAIL background-color: rgba(5, 7, 10, 0.5) assert_equals: background-color raw inline style declaration expected "rgba(5, 7, 10, 0.5)" but got "rgba(5, 7, 10, 0.498039)" > PASS background-color: transparent > PASS background-color: inherit >-FAIL background-image: url("http://localhost/") assert_equals: background-image raw inline style declaration expected "url(\"http://localhost/\")" but got "url(http://localhost/)" >-FAIL background-image: url(http://localhost/) assert_equals: background-image raw inline style declaration expected "url(\"http://localhost/\")" but got "url(http://localhost/)" >+PASS background-image: url("http://localhost/") >+PASS background-image: url(http://localhost/) > PASS background-image: none > PASS background-image: inherit > PASS background-position: 5% 5% >@@ -317,8 +317,8 @@ PASS content: normal > PASS content: none > FAIL content: "string" assert_equals: content raw inline style declaration expected "\"string\"" but got "string" > FAIL content: 'string' assert_equals: content raw inline style declaration expected "\"string\"" but got "string" >-FAIL content: url("http://localhost/") assert_equals: content raw inline style declaration expected "url(\"http://localhost/\")" but got "url(http://localhost/)" >-FAIL content: url(http://localhost/) assert_equals: content raw inline style declaration expected "url(\"http://localhost/\")" but got "url(http://localhost/)" >+PASS content: url("http://localhost/") >+PASS content: url(http://localhost/) > PASS content: counter(par-num) > PASS content: counter(par-num, upper-roman) > PASS content: attr(foo-bar) >@@ -439,8 +439,8 @@ PASS line-height: .1em > PASS line-height: 5% > PASS line-height: .5% > PASS line-height: inherit >-FAIL list-style-image: url("http://localhost/") assert_equals: list-style-image raw inline style declaration expected "url(\"http://localhost/\")" but got "url(http://localhost/)" >-FAIL list-style-image: url(http://localhost/) assert_equals: list-style-image raw inline style declaration expected "url(\"http://localhost/\")" but got "url(http://localhost/)" >+PASS list-style-image: url("http://localhost/") >+PASS list-style-image: url(http://localhost/) > PASS list-style-image: none > PASS list-style-image: inherit > PASS list-style-position: inside >diff --git a/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >index b314bac7ecc3321904af572f617f4de0cce71848..0a01d67583de1d7af05f784ea3a196af31fc786c 100644 >--- a/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >+++ b/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >@@ -7,8 +7,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAccumulation function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAccumulation function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -26,8 +26,8 @@ PASS border-image-slice (type: discrete) has testAccumulation function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAccumulation function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAccumulation function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -153,8 +153,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAccumulation function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAccumulation function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -172,8 +172,8 @@ PASS perspective (type: length) has testAccumulation function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAccumulation function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAccumulation function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >index 986f9c33388131b881dfee3240e94a32d11d7eac..6594f5cdad33ae414cd1b4f58e6561af5ac57c14 100644 >--- a/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >+++ b/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >@@ -7,8 +7,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAddition function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAddition function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -26,8 +26,8 @@ PASS border-image-slice (type: discrete) has testAddition function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAddition function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAddition function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -153,8 +153,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAddition function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAddition function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -172,8 +172,8 @@ PASS perspective (type: length) has testAddition function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAddition function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAddition function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >index 3eaa84875ffb65ce4ce7335947888a39a502145e..81318bdc5057a03ab579ae543d9ced2a6593797b 100644 >--- a/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >+++ b/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >@@ -7,9 +7,9 @@ PASS background-color supports animating as color of #RGBa > PASS background-color supports animating as color of rgba() > PASS background-color supports animating as color of hsla() > PASS background-image (type: discrete) has testInterpolation function >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-bottom-color (type: color) has testInterpolation function > PASS border-bottom-color supports animating as color of rgb() > PASS border-bottom-color supports animating as color of #RGB >@@ -29,9 +29,9 @@ FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with keyframe easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > PASS border-image-source (type: discrete) has testInterpolation function >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-image-width (type: discrete) has testInterpolation function > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with linear easing assert_equals: The value should be 1 2 3 4 at 499ms expected "1 2 3 4" but got "2.996000051498413 3.996000051498413 4.995999813079834 5.995999813079834" > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" >@@ -143,7 +143,7 @@ FAIL filter: interpolate different length of filter-function-list with function > FAIL filter: interpolate different length of filter-function-list with function which lacuna value is 0 assert_equals: The value should be opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px) at 500ms expected "opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px)" but got "opacity(0.25) grayscale(0.75) invert(0.75) sepia(0.75) blur(7.5px)" > FAIL filter: interpolate different length of filter-function-list with drop-shadow function assert_equals: The value should be blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px at 500ms expected "blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px" but got "blur(10px) drop-shadow(rgba(0, 0, 255, 0.8) 10px 10px 10px)" > PASS filter: interpolate from none >-FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(4.989999771118164px) url(#f1)" >+FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(4.989999771118164px) url(\"#f1\")" > PASS flood-color (type: color) has testInterpolation function > PASS flood-color supports animating as color of rgb() > PASS flood-color supports animating as color of #RGB >@@ -182,9 +182,9 @@ PASS lighting-color supports animating as color of #RGBa > PASS lighting-color supports animating as color of rgba() > PASS lighting-color supports animating as color of hsla() > PASS list-style-image (type: discrete) has testInterpolation function >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS outline-color (type: color) has testInterpolation function > PASS outline-color supports animating as color of rgb() > PASS outline-color supports animating as color of #RGB >@@ -202,9 +202,9 @@ PASS perspective (type: length) has testInterpolation function > PASS perspective supports animating as a length > FAIL perspective supports animating as a length of rem assert_equals: The value should be 30px at 500ms expected "30px" but got "3px" > PASS shape-outside (type: discrete) has testInterpolation function >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS stop-color (type: color) has testInterpolation function > PASS stop-color supports animating as color of rgb() > PASS stop-color supports animating as color of #RGB >diff --git a/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt b/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >index d0d2a8607b8238cdacd19bf109f7f0cb84a73ed2..e5a948a6cb98962ffc0427e799744d388ad5121b 100644 >--- a/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >+++ b/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >@@ -9,8 +9,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAccumulation function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAccumulation function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -28,8 +28,8 @@ PASS border-image-slice (type: discrete) has testAccumulation function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAccumulation function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAccumulation function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -148,8 +148,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAccumulation function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAccumulation function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -167,8 +167,8 @@ PASS perspective (type: length) has testAccumulation function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAccumulation function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAccumulation function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt b/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >index 7b31f4d3702b9dc821e1cce0157e7e1af46ae827..62e3d8c25e16d5df63531c90db37314d4e668785 100644 >--- a/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >+++ b/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >@@ -9,8 +9,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAddition function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAddition function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -28,8 +28,8 @@ PASS border-image-slice (type: discrete) has testAddition function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAddition function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAddition function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -148,8 +148,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAddition function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAddition function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -167,8 +167,8 @@ PASS perspective (type: length) has testAddition function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAddition function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAddition function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt b/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >index 029aa66b0064c428e340aef3263689e668e52fc4..42fb5c23d800c519c8aa3ebf1f622e49cff33bda 100644 >--- a/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >+++ b/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >@@ -8,10 +8,9 @@ PASS background-color supports animating as color of #RGBa > PASS background-color supports animating as color of rgba() > PASS background-color supports animating as color of hsla() > PASS background-image (type: discrete) has testInterpolation function >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-PASS border-bottom-color (type: color) has testInterpolation function >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-bottom-color supports animating as color of rgb() > PASS border-bottom-color supports animating as color of #RGB > PASS border-bottom-color supports animating as color of hsl() >@@ -30,9 +29,9 @@ FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with keyframe easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > PASS border-image-source (type: discrete) has testInterpolation function >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-image-width (type: discrete) has testInterpolation function > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with linear easing assert_equals: The value should be 1 2 3 4 at 499ms expected "1 2 3 4" but got "2.996000051498413 3.996000051498413 4.995999813079834 5.995999813079834" > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" >@@ -144,7 +143,7 @@ FAIL filter: interpolate different length of filter-function-list with function > FAIL filter: interpolate different length of filter-function-list with function which lacuna value is 0 assert_equals: The value should be opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px) at 500ms expected "opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px)" but got "opacity(0) grayscale(1) invert(1) sepia(1) blur(10px)" > FAIL filter: interpolate different length of filter-function-list with drop-shadow function assert_equals: The value should be blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px at 500ms expected "blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px" but got "blur(10px) drop-shadow(rgba(0, 0, 255, 0.8) 10px 10px 10px)" > FAIL filter: interpolate from none assert_equals: The value should be blur(5px) at 500ms expected "blur(5px)" but got "blur(10px)" >-FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(10px) url(#f2)" >+FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(10px) url(\"#f2\")" > PASS flood-color (type: color) has testInterpolation function > PASS flood-color supports animating as color of rgb() > PASS flood-color supports animating as color of #RGB >@@ -172,10 +171,9 @@ PASS lighting-color supports animating as color of #RGBa > PASS lighting-color supports animating as color of rgba() > PASS lighting-color supports animating as color of hsla() > PASS list-style-image (type: discrete) has testInterpolation function >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-PASS outline-color (type: color) has testInterpolation function >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS outline-color supports animating as color of rgb() > PASS outline-color supports animating as color of #RGB > PASS outline-color supports animating as color of hsl() >@@ -192,10 +190,9 @@ PASS perspective (type: length) has testInterpolation function > PASS perspective supports animating as a length > FAIL perspective supports animating as a length of rem assert_equals: The value should be 30px at 500ms expected "30px" but got "3px" > PASS shape-outside (type: discrete) has testInterpolation function >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-PASS stop-color (type: color) has testInterpolation function >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS stop-color supports animating as color of rgb() > PASS stop-color supports animating as color of #RGB > PASS stop-color supports animating as color of hsl() >diff --git a/LayoutTests/platform/ios/fast/css/image-set-unprefixed-expected.txt b/LayoutTests/platform/ios/fast/css/image-set-unprefixed-expected.txt >deleted file mode 100644 >index 288b486388b3f94dd39abd38115c86e719968889..0000000000000000000000000000000000000000 >--- a/LayoutTests/platform/ios/fast/css/image-set-unprefixed-expected.txt >+++ /dev/null >@@ -1,81 +0,0 @@ >- >-Single value for background-image : url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for background-image : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for background-image, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Duplicate values for background-image : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Fractional values for background-image : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >-Unprefixed: PASS >-Prefixed: PASS >- >-Single value for cursor : url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for cursor : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for cursor, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Duplicate values for cursor : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Fractional values for cursor : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >-Unprefixed: PASS >-Prefixed: PASS >- >-Single value for list-style-image : url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for list-style-image : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for list-style-image, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Duplicate values for list-style-image : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Fractional values for list-style-image : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >-Unprefixed: PASS >-Prefixed: PASS >- >-Single value for content : url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for content : url(http://www.webkit.org/a) 1x, url(http://www.webkit.org/b) 2x >-Unprefixed: PASS >-Prefixed: PASS >- >-Multiple values for content, out of order : url(http://www.webkit.org/c) 3x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Duplicate values for content : url(http://www.webkit.org/c) 1x, url(http://www.webkit.org/b) 2x, url(http://www.webkit.org/a) 1x >-Unprefixed: PASS >-Prefixed: PASS >- >-Fractional values for content : url(http://www.webkit.org/c) 0.2x, url(http://www.webkit.org/b) 2.3x, url(http://www.webkit.org/a) 12.3456x >-Unprefixed: PASS >-Prefixed: PASS >- >diff --git a/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt b/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >index bd8967143fbcfde5751298c0c0ce470f1a00050b..0b0a92b285613c9052865d92627e5d9cd022df2b 100644 >--- a/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >+++ b/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >@@ -7,8 +7,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAccumulation function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAccumulation function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -26,8 +26,8 @@ PASS border-image-slice (type: discrete) has testAccumulation function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAccumulation function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAccumulation function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -146,8 +146,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAccumulation function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAccumulation function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -165,8 +165,8 @@ PASS perspective (type: length) has testAccumulation function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAccumulation function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAccumulation function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt b/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >index 36091538a9f671e8468354c0a7eb8bb197279a42..e1af98d1bfc64b9533d5934e6f8e7d703618e061 100644 >--- a/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >+++ b/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >@@ -7,8 +7,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAddition function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAddition function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -26,8 +26,8 @@ PASS border-image-slice (type: discrete) has testAddition function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAddition function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAddition function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -146,8 +146,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAddition function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAddition function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -165,8 +165,8 @@ PASS perspective (type: length) has testAddition function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAddition function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAddition function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt b/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >index 879bf631e8bb36165d7943c3264d532bbcf164a9..f87e9664b08bbc9e67d39a289ba4dfde1f0fd426 100644 >--- a/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >+++ b/LayoutTests/platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >@@ -7,9 +7,9 @@ PASS background-color supports animating as color of #RGBa > PASS background-color supports animating as color of rgba() > PASS background-color supports animating as color of hsla() > PASS background-image (type: discrete) has testInterpolation function >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-bottom-color (type: color) has testInterpolation function > PASS border-bottom-color supports animating as color of rgb() > PASS border-bottom-color supports animating as color of #RGB >@@ -29,9 +29,9 @@ FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with keyframe easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > PASS border-image-source (type: discrete) has testInterpolation function >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-image-width (type: discrete) has testInterpolation function > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with linear easing assert_equals: The value should be 1 2 3 4 at 499ms expected "1 2 3 4" but got "2.996000051498413 3.996000051498413 4.995999813079834 5.995999813079834" > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" >@@ -143,7 +143,7 @@ FAIL filter: interpolate different length of filter-function-list with function > FAIL filter: interpolate different length of filter-function-list with function which lacuna value is 0 assert_equals: The value should be opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px) at 500ms expected "opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px)" but got "opacity(0.25) grayscale(0.75) invert(0.75) sepia(0.75) blur(7.5px)" > FAIL filter: interpolate different length of filter-function-list with drop-shadow function assert_equals: The value should be blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px at 500ms expected "blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px" but got "blur(10px) drop-shadow(rgba(0, 0, 255, 0.8) 10px 10px 10px)" > PASS filter: interpolate from none >-FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(4.989999771118164px) url(#f1)" >+FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(4.989999771118164px) url(\"#f1\")" > PASS flood-color (type: color) has testInterpolation function > PASS flood-color supports animating as color of rgb() > PASS flood-color supports animating as color of #RGB >@@ -171,9 +171,9 @@ PASS lighting-color supports animating as color of #RGBa > PASS lighting-color supports animating as color of rgba() > PASS lighting-color supports animating as color of hsla() > PASS list-style-image (type: discrete) has testInterpolation function >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS outline-color (type: color) has testInterpolation function > PASS outline-color supports animating as color of rgb() > PASS outline-color supports animating as color of #RGB >@@ -191,9 +191,9 @@ PASS perspective (type: length) has testInterpolation function > PASS perspective supports animating as a length > FAIL perspective supports animating as a length of rem assert_equals: The value should be 30px at 500ms expected "30px" but got "3px" > PASS shape-outside (type: discrete) has testInterpolation function >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS stop-color (type: color) has testInterpolation function > PASS stop-color supports animating as color of rgb() > PASS stop-color supports animating as color of #RGB >diff --git a/LayoutTests/platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt b/LayoutTests/platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt >index f002d378c6261ccf07926bf5ebb2a794ba7e66bd..e4234310981a81143aca55adfec02cc737504dbe 100644 >--- a/LayoutTests/platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt >+++ b/LayoutTests/platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt >@@ -1,2 +1,2 @@ >-CONSOLE MESSAGE: line 4: border-image-source: url(shadow-border.png) >+CONSOLE MESSAGE: line 4: border-image-source: url("shadow-border.png") > This test should not crash >diff --git a/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt b/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >index d0d2a8607b8238cdacd19bf109f7f0cb84a73ed2..e5a948a6cb98962ffc0427e799744d388ad5121b 100644 >--- a/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >+++ b/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt >@@ -9,8 +9,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAccumulation function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAccumulation function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -28,8 +28,8 @@ PASS border-image-slice (type: discrete) has testAccumulation function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAccumulation function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAccumulation function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -148,8 +148,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAccumulation function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAccumulation function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -167,8 +167,8 @@ PASS perspective (type: length) has testAccumulation function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAccumulation function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAccumulation function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt b/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >index 7b31f4d3702b9dc821e1cce0157e7e1af46ae827..62e3d8c25e16d5df63531c90db37314d4e668785 100644 >--- a/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >+++ b/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt >@@ -9,8 +9,8 @@ FAIL background-color supports animating as color of #RGBa assert_equals: The va > FAIL background-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL background-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS background-image (type: discrete) has testAddition function >-FAIL background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS background-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS background-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-bottom-color (type: color) has testAddition function > FAIL border-bottom-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL border-bottom-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -28,8 +28,8 @@ PASS border-image-slice (type: discrete) has testAddition function > PASS border-image-slice: "5 6 7 8" onto "1 2 3 4" > PASS border-image-slice: "1 2 3 4" onto "5 6 7 8" > PASS border-image-source (type: discrete) has testAddition function >-FAIL border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS border-image-source: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS border-image-source: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS border-image-width (type: discrete) has testAddition function > PASS border-image-width: "5 6 7 8" onto "1 2 3 4" > PASS border-image-width: "1 2 3 4" onto "5 6 7 8" >@@ -148,8 +148,8 @@ FAIL lighting-color supports animating as color of #RGBa assert_equals: The valu > FAIL lighting-color supports animating as color of rgba() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > FAIL lighting-color supports animating as color of hsla() assert_equals: The value should be rgb(230, 128, 128) at 0ms expected "rgb(230, 128, 128)" but got "rgba(255, 0, 0, 0.4)" > PASS list-style-image (type: discrete) has testAddition function >-FAIL list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS list-style-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS list-style-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS outline-color (type: color) has testAddition function > FAIL outline-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL outline-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >@@ -167,8 +167,8 @@ PASS perspective (type: length) has testAddition function > FAIL perspective: length assert_equals: The value should be 20px at 0ms expected "20px" but got "10px" > FAIL perspective: length of rem assert_equals: The value should be 20px at 0ms expected "20px" but got "1px" > PASS shape-outside (type: discrete) has testAddition function >-FAIL shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" assert_equals: The value should be url("http://localhost/test-2") at 0ms expected "url(\"http://localhost/test-2\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" >+PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" > PASS stop-color (type: color) has testAddition function > FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" > FAIL stop-color supports animating as color of #RGB assert_equals: The value should be rgb(255, 128, 128) at 0ms expected "rgb(255, 128, 128)" but got "rgb(255, 0, 0)" >diff --git a/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt b/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >index 029aa66b0064c428e340aef3263689e668e52fc4..eef35d20de41442b408fdac546511583c6b7cd7a 100644 >--- a/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >+++ b/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt >@@ -8,9 +8,9 @@ PASS background-color supports animating as color of #RGBa > PASS background-color supports animating as color of rgba() > PASS background-color supports animating as color of hsla() > PASS background-image (type: discrete) has testInterpolation function >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL background-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-bottom-color (type: color) has testInterpolation function > PASS border-bottom-color supports animating as color of rgb() > PASS border-bottom-color supports animating as color of #RGB >@@ -30,9 +30,9 @@ FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > FAIL border-image-slice uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with keyframe easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" > PASS border-image-source (type: discrete) has testInterpolation function >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL border-image-source uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS border-image-width (type: discrete) has testInterpolation function > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with linear easing assert_equals: The value should be 1 2 3 4 at 499ms expected "1 2 3 4" but got "2.996000051498413 3.996000051498413 4.995999813079834 5.995999813079834" > FAIL border-image-width uses discrete animation when animating between "1 2 3 4" and "5 6 7 8" with effect easing assert_equals: The value should be 1 2 3 4 at 940ms expected "1 2 3 4" but got "2.711512804031372 3.711512804031372 4.711513042449951 5.711513042449951" >@@ -144,7 +144,7 @@ FAIL filter: interpolate different length of filter-function-list with function > FAIL filter: interpolate different length of filter-function-list with function which lacuna value is 0 assert_equals: The value should be opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px) at 500ms expected "opacity(0.5) grayscale(0.5) invert(0.5) sepia(0.5) blur(5px)" but got "opacity(0) grayscale(1) invert(1) sepia(1) blur(10px)" > FAIL filter: interpolate different length of filter-function-list with drop-shadow function assert_equals: The value should be blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px at 500ms expected "blur(5px) drop-shadow(rgba(85, 0, 170, 0.6) 5px 5px 5px" but got "blur(10px) drop-shadow(rgba(0, 0, 255, 0.8) 10px 10px 10px)" > FAIL filter: interpolate from none assert_equals: The value should be blur(5px) at 500ms expected "blur(5px)" but got "blur(10px)" >-FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(10px) url(#f2)" >+FAIL filter: url function (interpoalte as discrete) assert_equals: The value should be blur(0px) url("#f1") at 499ms expected "blur(0px) url(\"#f1\")" but got "blur(10px) url(\"#f2\")" > PASS flood-color (type: color) has testInterpolation function > PASS flood-color supports animating as color of rgb() > PASS flood-color supports animating as color of #RGB >@@ -172,10 +172,9 @@ PASS lighting-color supports animating as color of #RGBa > PASS lighting-color supports animating as color of rgba() > PASS lighting-color supports animating as color of hsla() > PASS list-style-image (type: discrete) has testInterpolation function >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-1)" >-PASS outline-color (type: color) has testInterpolation function >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 499ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL list-style-image uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 940ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS outline-color supports animating as color of rgb() > PASS outline-color supports animating as color of #RGB > PASS outline-color supports animating as color of hsl() >@@ -192,9 +191,9 @@ PASS perspective (type: length) has testInterpolation function > PASS perspective supports animating as a length > FAIL perspective supports animating as a length of rem assert_equals: The value should be 30px at 500ms expected "30px" but got "3px" > PASS shape-outside (type: discrete) has testInterpolation function >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >-FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(http://localhost/test-2)" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with linear easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with effect easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" >+FAIL shape-outside uses discrete animation when animating between "url("http://localhost/test-1")" and "url("http://localhost/test-2")" with keyframe easing assert_equals: The value should be url("http://localhost/test-1") at 0ms expected "url(\"http://localhost/test-1\")" but got "url(\"http://localhost/test-2\")" > PASS stop-color (type: color) has testInterpolation function > PASS stop-color supports animating as color of rgb() > PASS stop-color supports animating as color of #RGB >diff --git a/LayoutTests/resources/image-preload-helper.js b/LayoutTests/resources/image-preload-helper.js >index 27ea17d143abaad3f1cd1f0b9144dee27b9b2804..b6fafdcc7bccce77684cb79a1204d9221e85bddd 100644 >--- a/LayoutTests/resources/image-preload-helper.js >+++ b/LayoutTests/resources/image-preload-helper.js >@@ -13,7 +13,7 @@ function preloadImagesFromStyle(rootNode, imageCount, onComplete, failPattern) { > var imagesToLoad = []; > var seenUrls = {}; > for (var i = 0; i < nodes.length; i++) { >- var urls = nodes[i].style.cssText.split(/url\w*\(([^)]*)\)/); >+ var urls = nodes[i].style.cssText.split(/url\w*\("([^)]*)"\)/); > for (var j = 1; j < urls.length; j += 2) { > // Attempt to convert URL to a relative path in order to have deterministic error messages. > var url = urls[j]; >diff --git a/LayoutTests/svg/css/svg-attribute-parser-mode-expected.txt b/LayoutTests/svg/css/svg-attribute-parser-mode-expected.txt >index 219fadcfcecd7f1d2fd646db6ff85a0af3e3a286..363b8114f7d0704830754fb22e1cff7e237cbebf 100644 >--- a/LayoutTests/svg/css/svg-attribute-parser-mode-expected.txt >+++ b/LayoutTests/svg/css/svg-attribute-parser-mode-expected.txt >@@ -15,9 +15,9 @@ PASS document.defaultView.getComputedStyle(rect, null).fill is "rgb(0, 0, 0)" > PASS document.defaultView.getComputedStyle(rect, null).fill is "rgb(0, 128, 0)" > PASS document.defaultView.getComputedStyle(rect, null).fill is "rgb(0, 0, 0)" > PASS document.defaultView.getComputedStyle(rect, null).fill is "rgb(0, 128, 0)" >-PASS document.defaultView.getComputedStyle(rect, null).fill is "url(#reference)" >+PASS document.defaultView.getComputedStyle(rect, null).fill is "url(\"#reference\")" > PASS document.defaultView.getComputedStyle(rect, null).fill is "rgb(0, 128, 0)" >-PASS document.defaultView.getComputedStyle(rect, null).fill is "url(#reference) rgb(0, 128, 0)" >+PASS document.defaultView.getComputedStyle(rect, null).fill is "url(\"#reference\") rgb(0, 128, 0)" > PASS document.defaultView.getComputedStyle(rect, null).fill is "rgb(0, 128, 0)" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "none" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "rgb(0, 128, 0)" >@@ -31,9 +31,9 @@ PASS document.defaultView.getComputedStyle(rect, null).stroke is "none" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "rgb(0, 128, 0)" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "none" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "rgb(0, 128, 0)" >-PASS document.defaultView.getComputedStyle(rect, null).stroke is "url(#reference)" >+PASS document.defaultView.getComputedStyle(rect, null).stroke is "url(\"#reference\")" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "rgb(0, 128, 0)" >-PASS document.defaultView.getComputedStyle(rect, null).stroke is "url(#reference) rgb(0, 128, 0)" >+PASS document.defaultView.getComputedStyle(rect, null).stroke is "url(\"#reference\") rgb(0, 128, 0)" > PASS document.defaultView.getComputedStyle(rect, null).stroke is "rgb(0, 128, 0)" > PASS document.defaultView.getComputedStyle(rect, null).color is "rgb(0, 0, 0)" > PASS document.defaultView.getComputedStyle(rect, null).color is "rgb(0, 128, 0)" >diff --git a/LayoutTests/svg/css/svg-attribute-parser-mode.html b/LayoutTests/svg/css/svg-attribute-parser-mode.html >index 750e3cdded744e3a64904dbe49ee7d42dd61278b..e9b4e96332e4e6aedbd40e2f930c5b2bd597bbc9 100644 >--- a/LayoutTests/svg/css/svg-attribute-parser-mode.html >+++ b/LayoutTests/svg/css/svg-attribute-parser-mode.html >@@ -61,13 +61,13 @@ rect.setAttribute("fill", "green"); > shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)"); > > rect.setAttribute("fill", "url(#reference)"); >-shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "url(#reference)"); >+shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", 'url("#reference")'); > // Reset to green. > rect.setAttribute("fill", "green"); > shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)"); > > rect.setAttribute("fill", "url(#reference) green"); >-shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "url(#reference) rgb(0, 128, 0)"); >+shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", 'url("#reference") rgb(0, 128, 0)'); > // Reset to green. > rect.setAttribute("fill", "green"); > shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)"); >@@ -113,13 +113,13 @@ rect.setAttribute("stroke", "green"); > shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)"); > > rect.setAttribute("stroke", "url(#reference)"); >-shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "url(#reference)"); >+shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", 'url("#reference")'); > // Reset to green. > rect.setAttribute("stroke", "green"); > shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)"); > > rect.setAttribute("stroke", "url(#reference) green"); >-shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "url(#reference) rgb(0, 128, 0)"); >+shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", 'url("#reference") rgb(0, 128, 0)'); > // Reset to green. > rect.setAttribute("stroke", "green"); > shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)"); >diff --git a/LayoutTests/svg/custom/marker-getPropertyValue-expected.txt b/LayoutTests/svg/custom/marker-getPropertyValue-expected.txt >index d202e6b455ef5c560ceb836b6d70aad68a9b406c..de974ecbd0398f4b0cb2ede62f24eb6ae1afd9b8 100644 >--- a/LayoutTests/svg/custom/marker-getPropertyValue-expected.txt >+++ b/LayoutTests/svg/custom/marker-getPropertyValue-expected.txt >@@ -1 +1 @@ >-url(#test) PASSED >+url("#test") PASSED >diff --git a/LayoutTests/svg/custom/marker-getPropertyValue.svg b/LayoutTests/svg/custom/marker-getPropertyValue.svg >index 96dbe1c0365a08fc18106d4aceaedcd676c5338b..5d09e1088d3ac09b8d2b71c351b3feb66cd720c2 100644 >--- a/LayoutTests/svg/custom/marker-getPropertyValue.svg >+++ b/LayoutTests/svg/custom/marker-getPropertyValue.svg >@@ -16,7 +16,7 @@ > testRunner.dumpAsText(); > > var e = document.getElementById("rect"); >- expect(e.style.getPropertyValue("marker"), "url(#test)"); >+ expect(e.style.getPropertyValue("marker"), 'url("#test")'); > } > ]]></script> > <rect visibility="hidden" width="100" height="100" id="rect" style="marker: url(#test)"/>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 184935
:
338669
|
338683
|
338687
|
338694
|
338696
|
338698
|
338702
|
338722
|
338724
|
338751
|
338754
| 338982