Bug 1298008 Part 4: Add a web-platform test of getBoxQuads on block and flex boxes with auto margins. r=dholbert
☠☠ backed out by dd15708ceec6 ☠ ☠
authorBrad Werth <bwerth@mozilla.com>
Wed, 28 Mar 2018 14:46:11 -0700
changeset 410793 f5d5d6a09965236f1f594390ebc772be986c1b1c
parent 410792 c18e2aac48a5fa8c4c4af9d245249afc2527181a
child 410794 7738d74015d3e509963238ad4f75240f8bce1fa3
push id33739
push usernbeleuzu@mozilla.com
push dateFri, 30 Mar 2018 21:47:45 +0000
treeherdermozilla-central@10c662d8416e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdholbert
bugs1298008
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 1298008 Part 4: Add a web-platform test of getBoxQuads on block and flex boxes with auto margins. r=dholbert MozReview-Commit-ID: Hrw3rt1Lohq
testing/web-platform/meta/MANIFEST.json
testing/web-platform/mozilla/meta/MANIFEST.json
testing/web-platform/tests/css/cssom-view/cssom-getBoxQuads-001.html
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -314070,16 +314070,22 @@
     ]
    ],
    "css/cssom-view/cssom-getBoundingClientRect-002.html": [
     [
      "/css/cssom-view/cssom-getBoundingClientRect-002.html",
      {}
     ]
    ],
+   "css/cssom-view/cssom-getBoxQuads-001.html": [
+    [
+     "/css/cssom-view/cssom-getBoxQuads-001.html",
+     {}
+    ]
+   ],
    "css/cssom-view/cssom-getClientRects-002.html": [
     [
      "/css/cssom-view/cssom-getClientRects-002.html",
      {}
     ]
    ],
    "css/cssom-view/cssom-getClientRects.html": [
     [
@@ -525371,16 +525377,20 @@
   "css/cssom-view/cssom-getBoundingClientRect-001.html": [
    "7118495560adadebcca98e6add47a74669f87788",
    "testharness"
   ],
   "css/cssom-view/cssom-getBoundingClientRect-002.html": [
    "8dfaa313b4abad30281d07ce22ac06a61754cc06",
    "testharness"
   ],
+  "css/cssom-view/cssom-getBoxQuads-001.html": [
+   "6236946f2eb29b2fdb3e7b3c1152ef275d921759",
+   "testharness"
+  ],
   "css/cssom-view/cssom-getClientRects-002.html": [
    "da348da01e09474f652ff1dfb6869665740668d5",
    "testharness"
   ],
   "css/cssom-view/cssom-getClientRects.html": [
    "f4e750bc1267f5c519a513ef1f25bf3660365788",
    "testharness"
   ],
@@ -537788,17 +537798,17 @@
    "2275720296bd3ea4ef012ed5ef3ea63a4c5f953d",
    "testharness"
   ],
   "custom-elements/Document-createElementNS.html": [
    "799f59e3bf8ab0830e44faa3ffef6d3303da42eb",
    "testharness"
   ],
   "custom-elements/HTMLElement-constructor.html": [
-   "64522527ef425b90c704b20b000c8feef0d1ca25",
+   "4dc04a8b026538bddee52586f2df50206abc9334",
    "testharness"
   ],
   "custom-elements/OWNERS": [
    "9f6553b67cad3b479d3beb678653db4e712ed227",
    "support"
   ],
   "custom-elements/adopted-callback.html": [
    "3eaf4dbfe67edd892c9a950c20a87c9b9ed565fa",
@@ -537832,17 +537842,17 @@
    "ad030517981b11892126023bc758b7fe323a3d14",
    "testharness"
   ],
   "custom-elements/historical.html": [
    "991ebcff1d8b59a7a4d959f3061a17e0e8a83704",
    "testharness"
   ],
   "custom-elements/htmlconstructor/newtarget.html": [
-   "11b7927c9a2946c752f56e5b44cfb4051ab8b6d6",
+   "39a7331d37056d0203fd771d797fd8da3d2bbefb",
    "testharness"
   ],
   "custom-elements/microtasks-and-constructors.html": [
    "088fcd47e328e30c6119a37bbf19768e7f14763d",
    "testharness"
   ],
   "custom-elements/parser/parser-constructs-custom-element-in-document-write.html": [
    "b338f193a803ea679bbf0e041f71daf1e6d703f6",
--- a/testing/web-platform/mozilla/meta/MANIFEST.json
+++ b/testing/web-platform/mozilla/meta/MANIFEST.json
@@ -976,17 +976,17 @@
   }
  },
  "paths": {
   "./placeholder": [
    "74e16eb87ecdfeb2dfc28f36e0c73a584abdf9c2",
    "support"
   ],
   "dom/classList.html": [
-   "5aa8aa335e998e0033b72dfc259f0fe6608182f5",
+   "17c65652a2943738a0cc5152aec737f243a02d3d",
    "testharness"
   ],
   "dom/throttling/resources/test.html": [
    "0898e3efa5dbcc74138bdf27ff2787d1f1a2d4d8",
    "support"
   ],
   "dom/throttling/resources/throttling.js": [
    "e0bf1a7c5a0d2c8be2b793c786bb9484779dcbbf",
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/css/cssom-view/cssom-getBoxQuads-001.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<html>
+ <head>
+  <title>CSSOM View - getBoxQuads() returns proper border and margin boxes for block and flex</title>
+  <link rel="help" href="https://drafts.csswg.org/cssom-view/#the-geometryutils-interface">
+  <script src="/resources/testharness.js"></script>
+  <script src="/resources/testharnessreport.js"></script>
+
+  <style>
+    .container {
+      width: 100px;
+      height: 50px;
+      background-color: gray;
+    }
+    span {
+      display: block;
+      background: gold;
+      height: 4px;
+      width: 14px;
+      margin: auto;
+      padding: 0px;
+      border: 3px solid blue;
+    }
+  </style>
+ </head>
+ <body>
+  <div class="container">
+  <span id="block-block"></span>
+  </div>
+
+  <div class="container" style="display:flex">
+  <span id="flex-block"></span>
+  </div>
+
+  <script>
+    test(function() {
+      let bb = document.getElementById("block-block");
+      assert_equals(bb.getBoxQuads({box: "border"})[0].bounds.width,  20, "Block layout border box is expected width.");
+      assert_equals(bb.getBoxQuads({box: "margin"})[0].bounds.width, 100, "Block layout margin box is expected width.");
+
+      // For containers that expand items to fill block-axis space, measure the box heights also.
+      let fb = document.getElementById("flex-block");
+      assert_equals(fb.getBoxQuads({box: "border"})[0].bounds.width,  20, "Flex layout border box is expected width.");
+      assert_equals(fb.getBoxQuads({box: "margin"})[0].bounds.width, 100, "Flex layout margin box is expected width.");
+
+      assert_equals(fb.getBoxQuads({box: "border"})[0].bounds.height, 10, "Flex layout border box is expected height.");
+      assert_equals(fb.getBoxQuads({box: "margin"})[0].bounds.height, 50, "Flex layout margin box is expected height.");
+    });
+  </script>
+ </body>
+</html>