Bug 1293164 - Create serialization test for local-ref URL. r=heycam
authorcku <cku@mozilla.com>
Thu, 18 Aug 2016 14:37:52 +0800
changeset 309928 e6b28b84c2cb280bd508661013849b6b15813629
parent 309927 828e9a557da41456e19186491dc9f0d46edb23a4
child 309929 e10bc41ebe781abfbbaf2641ad892e308c8d8cf0
push id30575
push userryanvm@gmail.com
push dateFri, 19 Aug 2016 13:46:06 +0000
treeherdermozilla-central@3da4d64410c0 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersheycam
bugs1293164
milestone51.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1293164 - Create serialization test for local-ref URL. r=heycam MozReview-Commit-ID: C5S6xbQVrxM
layout/style/test/test_computed_style.html
--- a/layout/style/test/test_computed_style.html
+++ b/layout/style/test/test_computed_style.html
@@ -335,12 +335,45 @@ var noframe_container = document.getElem
     for (var i = 0; i < subProp.length; i++) {
       p.style.mask = subProp[i];
       isnot(cs.mask, "", "computed value of " + subProp[i] + " mask");
     }
   }
   p.parentNode.removeChild(p);
 })();
 
+(function test_bug_1293164() {
+
+  var p = document.createElement("p");
+  var cs = getComputedStyle(p, "");
+  frame_container.appendChild(p);
+
+  var docPath = document.URL.substring(0, document.URL.lastIndexOf("/") + 1);
+
+  var localURL = "url(\"#foo\")";
+  var nonLocalURL = "url(\"foo.svg#foo\")";
+  var resolvedNonLocalURL = "url(\"" + docPath + "foo.svg#foo\")";
+
+  var testStyles = {
+    "mask" : "",
+    "markerStart" : "",
+    "markerMid" : "",
+    "markerEnd" : "",
+    "clipPath" : "",
+    "filter" : "",
+    "fill" : " transparent",
+    "stroke" : " transparent",
+  };
+
+  for (var prop in testStyles) {
+    p.style[prop] = localURL;
+    is(cs[prop], localURL + testStyles[prop], "computed value of " + prop);
+    p.style[prop] = nonLocalURL;
+    is(cs[prop], resolvedNonLocalURL + testStyles[prop], "computed value of " + prop);
+  }
+
+  p.parentNode.removeChild(p);
+})();
+
 </script>
 </pre>
 </body>
 </html>