Bug 1015474 part 4: Add reftests for interaction between "min-width:auto" & "overflow-x". r=dbaron
authorDaniel Holbert <dholbert@cs.stanford.edu>
Tue, 22 Jul 2014 08:24:37 -0700
changeset 195452 51999ceb00aeaf760c4a81b765050527038c28cc
parent 195451 d82a0354fdcd69aca7b3e35a662890310ea3924d
child 195453 48cf2fca495baa85a130a200441a1c9913b56fb6
push id46605
push userdholbert@mozilla.com
push dateTue, 22 Jul 2014 15:27:37 +0000
treeherdermozilla-inbound@b489ff052163 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdbaron
bugs1015474
milestone34.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 1015474 part 4: Add reftests for interaction between "min-width:auto" & "overflow-x". r=dbaron
layout/reftests/w3c-css/submitted/flexbox/flexbox-min-width-auto-003-ref.html
layout/reftests/w3c-css/submitted/flexbox/flexbox-min-width-auto-003.html
layout/reftests/w3c-css/submitted/flexbox/reftest.list
new file mode 100644
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/flexbox/flexbox-min-width-auto-003-ref.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+  <head>
+    <meta charset="utf-8">
+    <title>CSS Reftest Reference</title>
+    <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
+    <style>
+      .item {
+        /* Flex items have purple border: */
+        border: 2px dotted purple;
+        margin-bottom: 2px; /* (Just for spacing things out, visually) */
+      }
+
+      .small { width: 26px; }
+      .big   { width: 80px; }
+
+      .item > * {
+        /* Flex items' contents are gray & fixed-size: */
+        background: gray;
+        height: 40px;
+        width: 80px;
+      }
+
+      .xvisible { overflow-x: visible; }
+      .xhidden  { overflow-x: hidden;  }
+      .xscroll  { overflow-x: scroll;  }
+      .xauto    { overflow-x: auto;    }
+    </style>
+  </head>
+  <body>
+    <div class="item big   xvisible"><div></div></div>
+    <div class="item small xhidden"><div></div></div>
+    <div class="item small xscroll"><div></div></div>
+    <div class="item small xauto"><div></div></div>
+  </body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/flexbox/flexbox-min-width-auto-003.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+  <head>
+    <meta charset="utf-8">
+    <title>CSS Test: Testing min-width:auto & 'overflow' interaction</title>
+    <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
+    <link rel="help" href="http://www.w3.org/TR/css3-flexbox/#min-size-auto">
+    <link rel="match" href="flexbox-min-width-auto-003-ref.html">
+<!--
+     This testcase checks how "overflow-x" impacts the sizing behavior of flex
+     items with "min-width:auto" (the new initial value for "min-width").
+
+     In particular, the flex-item-specific "min-width:auto" behavior is
+     supposed to be disabled (e.g. we end up with min-width:0) when
+     "overflow-x" is non-"visible".
+-->
+    <style>
+      .flexbox {
+        display: flex;
+        width: 30px;  /* Shrink flex items below min-width */
+        margin-bottom: 2px; /* (Just for spacing things out, visually) */
+      }
+
+      .flexbox > * {
+        /* Flex items have purple border: */
+        border: 2px dotted purple;
+      }
+
+      .flexbox > * > * {
+        /* Flex items' contents are gray & fixed-size: */
+        background: gray;
+        height: 40px;
+        width: 80px;
+      }
+
+      .xvisible { overflow-x: visible; }
+      .xhidden  { overflow-x: hidden;  }
+      .xscroll  { overflow-x: scroll;  }
+      .xauto    { overflow-x: auto;    }
+    </style>
+  </head>
+  <body>
+    <!-- min-width:auto should prevent shrinking below intrinsic width when
+         the flex item has "overflow-x: visible", but not for any other
+         overflow-x values. -->
+    <div class="flexbox"><div class="xvisible"><div></div></div></div>
+    <div class="flexbox"><div class="xhidden"><div></div></div></div>
+    <div class="flexbox"><div class="xscroll"><div></div></div></div>
+    <div class="flexbox"><div class="xauto"><div></div></div></div>
+  </body>
+</html>
--- a/layout/reftests/w3c-css/submitted/flexbox/reftest.list
+++ b/layout/reftests/w3c-css/submitted/flexbox/reftest.list
@@ -133,16 +133,17 @@ fuzzy-if(Android,158,32) == flexbox-alig
 == flexbox-min-height-auto-001.html flexbox-min-height-auto-001-ref.html
 == flexbox-min-height-auto-002a.html flexbox-min-height-auto-002-ref.html
 fails == flexbox-min-height-auto-002b.html flexbox-min-height-auto-002-ref.html # Bug 1041019
 == flexbox-min-height-auto-002c.html flexbox-min-height-auto-002-ref.html
 == flexbox-min-width-auto-001.html flexbox-min-width-auto-001-ref.html
 == flexbox-min-width-auto-002a.html flexbox-min-width-auto-002-ref.html
 fails == flexbox-min-width-auto-002b.html flexbox-min-width-auto-002-ref.html # Bug 1041019
 == flexbox-min-width-auto-002c.html flexbox-min-width-auto-002-ref.html
+== flexbox-min-width-auto-003.html flexbox-min-width-auto-003-ref.html
 
 # Tests for flex containers with the "overflow" property set
 == flexbox-overflow-horiz-1.html flexbox-overflow-horiz-1-ref.html
 == flexbox-overflow-horiz-2.html flexbox-overflow-horiz-2-ref.html
 == flexbox-overflow-horiz-3.html flexbox-overflow-horiz-3-ref.html
 == flexbox-overflow-horiz-4.html flexbox-overflow-horiz-4-ref.html
 == flexbox-overflow-horiz-5.html flexbox-overflow-horiz-5-ref.html
 == flexbox-overflow-vert-1.html flexbox-overflow-vert-1-ref.html