Bug 1454205 [wpt PR 10477] - Accept two values in the overflow shorthand, a=testonly
authorChris Nardi <cnardi@chromium.org>
Tue, 01 May 2018 15:01:22 +0000
changeset 472674 22226423b006da14b61e173f36b6e228880d04db
parent 472673 c792e5a24b8cb6e2ce804dc02f74d5cc6b3cea72
child 472675 052f56ef82ee6233ea88fcdb0607d7305dee653d
push id1728
push userjlund@mozilla.com
push dateMon, 18 Jun 2018 21:12:27 +0000
treeherdermozilla-release@c296fde26f5f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1454205, 10477, 833105, 1013618, 554078
milestone61.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 1454205 [wpt PR 10477] - Accept two values in the overflow shorthand, a=testonly Automatic update from web-platform-testsAccept two values in the overflow shorthand https://github.com/w3c/csswg-drafts/issues/2484 details the resolution by the CSSWG to accept two values in the overflow shorthand. Update our implementation to match this, and also update two existing CSSOM serialization tests. Additionally remove tests that are duplicates of those currently found in WPT. Intent to Implement and Ship: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/4qF8XPQ1z2s Bug: 833105 Change-Id: Id8f61182a7d7369a2f575acfdbf608600d1218dd Reviewed-on: https://chromium-review.googlesource.com/1013618 Commit-Queue: Chris Nardi <cnardi@chromium.org> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/master@{#554078} -- wpt-commits: e6756de059f68d445306ac35a6b8e80633d75925 wpt-pr: 10477
testing/web-platform/meta/MANIFEST.json
testing/web-platform/tests/css/cssom/overflow-serialization.html
testing/web-platform/tests/css/cssom/shorthand-values.html
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -540035,17 +540035,17 @@
    "42c6fb48a67af381e09995e27dcd8795557345dd",
    "testharness"
   ],
   "css/cssom/medialist-interfaces-004.html": [
    "a8a6a1b9966526de2d846baf6176880353f84e1a",
    "testharness"
   ],
   "css/cssom/overflow-serialization.html": [
-   "48ca70f4c20da103276e1b053ca0e4613fcc2819",
+   "85952fbd040de03f5082f28ba8116fd4827a1fc3",
    "testharness"
   ],
   "css/cssom/selectorSerialize.html": [
    "d93c31a8261ddc3b83bb4def15f7c8eb765b9dc7",
    "testharness"
   ],
   "css/cssom/selectorText-modification-restyle-001-ref.html": [
    "4fbe124f09131f30e5c68154774246e5cd15b14a",
@@ -540079,17 +540079,17 @@
    "8521d827e1e641c3b856854c38eac66a97ddf690",
    "testharness"
   ],
   "css/cssom/shorthand-serialization.html": [
    "eac49bf894c81813d3763828cbd1c103b388869d",
    "testharness"
   ],
   "css/cssom/shorthand-values.html": [
-   "8bfc0dff5da1859e17df31ceeca710d17a982109",
+   "9211674fd69ddfa32d3bafcf2bc967977eb3ec31",
    "testharness"
   ],
   "css/cssom/style-sheet-interfaces-001.html": [
    "1614c9a0e4973672b18caf46ad56e6cf188285b5",
    "testharness"
   ],
   "css/cssom/style-sheet-interfaces-002.html": [
    "8fc091c20efd7fc71c6c357278977ee6137fd8d4",
--- a/testing/web-platform/tests/css/cssom/overflow-serialization.html
+++ b/testing/web-platform/tests/css/cssom/overflow-serialization.html
@@ -1,33 +1,33 @@
 <!doctype html>
 <html>
 <head>
     <meta charset="utf-8">
-    <title>CSSOM - Overlow property has different serialization than other shorthands.</title>
+    <title>CSSOM - Overflow shorthand serialization</title>
     <link rel="help" href="https://drafts.csswg.org/cssom/#serialize-a-css-value">
     <script src="/resources/testharness.js"></script>
     <script src="/resources/testharnessreport.js"></script>
     <style>
         div { overflow: inherit; }
         div { overflow: hidden; }
         div { overflow-x: initial; overflow-y: initial; }
         div { overflow-x: scroll; overflow-y: scroll; }
-        div { overflow-x: inherit; overflow-y: unset; }
+        div { overflow-x: scroll; overflow-y: hidden; }
     </style>
 
     <script>
     test(function () {
         var styleSheet = document.styleSheets[0];
 
         assert_equals(styleSheet.cssRules[0].style.cssText, "overflow: inherit;", "Single value overflow with CSS-wide keyword should serialize correctly.");
         assert_equals(styleSheet.cssRules[1].style.cssText, "overflow: hidden;", "Single value overflow with non-CSS-wide keyword should serialize correctly.");
         assert_equals(styleSheet.cssRules[2].style.cssText, "overflow: initial;", "Overflow-x/y longhands with same CSS-wide keyword should serialize correctly.");
         assert_equals(styleSheet.cssRules[3].style.cssText, "overflow: scroll;", "Overflow-x/y longhands with same non-CSS-wide keyword should serialize correctly.");
-        assert_equals(styleSheet.cssRules[4].style.cssText, "overflow-x: inherit; overflow-y: unset;", "Overflow-x/y longhands with different keywords should serialize correctly.");
+        assert_equals(styleSheet.cssRules[4].style.cssText, "overflow: scroll hidden;", "Overflow-x/y longhands with different keywords should serialize correctly.");
 
         var div = document.createElement('div');
         div.style.overflow = "inherit";
         assert_equals(div.style.overflow, "inherit", "Single value overflow with CSS-wide keyword should serialize correctly.");
 
         div.style.overflow = "hidden";
         assert_equals(div.style.overflow, "hidden", "Single value overflow with non-CSS-wide keyword should serialize correctly.");
 
@@ -35,15 +35,15 @@
         div.style.overflowX = "initial";
         div.style.overflowY = "initial";
         assert_equals(div.style.overflow, "initial", "Overflow-x/y longhands with same CSS-wide keyword should serialize correctly.");
 
         div.style.overflowX = "scroll";
         div.style.overflowY = "scroll";
         assert_equals(div.style.overflow, "scroll", "Overflow-x/y longhands with same non-CSS-wide keyword should serialize correctly.");
 
-        div.style.overflowX = "inherit";
-        div.style.overflowY = "unset";
-        assert_equals(div.style.overflow, "", "Overflow-x/y longhands with different keywords shouldn't serialize.");
+        div.style.overflowX = "scroll";
+        div.style.overflowY = "hidden";
+        assert_equals(div.style.overflow, "scroll hidden", "Overflow-x/y longhands with different keywords should serialize correctly.");
     });
     </script>
 </head>
 </html>
--- a/testing/web-platform/tests/css/cssom/shorthand-values.html
+++ b/testing/web-platform/tests/css/cssom/shorthand-values.html
@@ -27,17 +27,17 @@
         'border: red;': 'border: red;',
         'border-top: 1px; border-right: 1px; border-bottom: 1px; border-left: 1px;': 'border: 1px;',
         'border-top: 1px; border-right: 2px; border-bottom: 3px; border-left: 4px;': 'border-width: 1px 2px 3px 4px;',
         'border: 1px; border-top: 2px;': 'border-width: 2px 1px 1px;',
         'border: 1px; border-top: 1px !important;': 'border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-width: 1px !important;',
         'border: 1px; border-top-color: red;': 'border-width: 1px; border-top-color: red;',
         'border: solid; border-style: dotted': 'border: dotted;',
         'border-width: 1px;': 'border-width: 1px;',
-        'overflow-x: scroll; overflow-y: hidden;': 'overflow-x: scroll; overflow-y: hidden;',
+        'overflow-x: scroll; overflow-y: hidden;': 'overflow: scroll hidden;',
         'overflow-x: scroll; overflow-y: scroll;': 'overflow: scroll;',
         'outline-width: 2px; outline-style: dotted; outline-color: blue;': 'outline: blue dotted 2px;',
         'margin-top: 1px; margin-right: 2px; margin-bottom: 3px; margin-left: 4px;': 'margin: 1px 2px 3px 4px;',
         'list-style-type: circle; list-style-position: inside; list-style-image: initial;': 'list-style: circle inside;',
         'list-style-type: lower-alpha;': 'list-style-type: lower-alpha;',
         'font-family: sans-serif; line-height: 2em; font-size: 3em; font-style: italic; font-weight: bold;': 'font-family: sans-serif; line-height: 2em; font-size: 3em; font-style: italic; font-weight: bold;',
         'padding-top: 1px; padding-right: 2px; padding-bottom: 3px; padding-left: 4px;': 'padding: 1px 2px 3px 4px;'
       }