<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[279398] trunk/LayoutTests</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/279398">279398</a></dd>
<dt>Author</dt> <dd>cdumez@apple.com</dd>
<dt>Date</dt> <dd>2021-06-29 18:09:26 -0700 (Tue, 29 Jun 2021)</dd>
</dl>

<h3>Log Message</h3>
<pre>Resync css/cssom WPT tests from upstream
https://bugs.webkit.org/show_bug.cgi?id=227506

Reviewed by Sam Weinig.

Resync css/cssom WPT tests from upstream a38612f39e7752c353208.

* resources/resource-files.json:
* web-platform-tests/css/cssom/*: Updated.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsimportedw3cChangeLog">trunk/LayoutTests/imported/w3c/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsimportedw3cresourcesresourcefilesjson">trunk/LayoutTests/imported/w3c/resources/resource-files.json</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationcsstextexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationcsstexthtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreeexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreehtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevaluesexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevalueshtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevariablereferenceexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevariablereferencehtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadcountexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadcounthtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadtreeorderexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadtreeorderhtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomw3cimportlog">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestsplatformioswk2importedw3cwebplatformtestscsscssomcssstyledeclarationcsstextexpectedtxt">trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomCSSStyleSheettemplateadoptionexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomCSSStyleSheettemplateadoptionhtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationregisteredcustompropertiesexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationregisteredcustompropertieshtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomdeclarationblockallcrashhtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/declaration-block-all-crash.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomflexserializationexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomflexserializationhtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssominsertRuleacrosscontextexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssominsertRuleacrosscontexthtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssompagedescriptorsexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssompagedescriptorshtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors.html</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializecustompropsexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializecustompropshtml">trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props.html</a></li>
<li><a href="#trunkLayoutTestsplatformioswk2importedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreeexpectedtxt">trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsimportedw3cChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/ChangeLog (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/ChangeLog 2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/ChangeLog    2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2021-06-29  Chris Dumez  <cdumez@apple.com>
+
+        Resync css/cssom WPT tests from upstream
+        https://bugs.webkit.org/show_bug.cgi?id=227506
+
+        Reviewed by Sam Weinig.
+
+        Resync css/cssom WPT tests from upstream a38612f39e7752c353208.
+
+        * resources/resource-files.json:
+        * web-platform-tests/css/cssom/*: Updated.
+
</ins><span class="cx"> 2021-06-29  Johnson Zhou  <qiaosong_zhou@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Encoding specified in the 'charset' attribute should have precedence over 'content' attribute
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cresourcesresourcefilesjson"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/resources/resource-files.json (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/resources/resource-files.json     2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/resources/resource-files.json        2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -864,6 +864,7 @@
</span><span class="cx">         "web-platform-tests/css/css-writing-modes/vertical-alignment-vrl-018.xht",
</span><span class="cx">         "web-platform-tests/css/css-writing-modes/vertical-alignment-vrl-020.xht",
</span><span class="cx">         "web-platform-tests/css/cssom-view/iframe.html",
</span><ins>+        "web-platform-tests/css/cssom/declaration-block-all-crash.html",
</ins><span class="cx">         "web-platform-tests/css/cssom/removerule-invalidation-crash.html",
</span><span class="cx">         "web-platform-tests/css/cssom/support/xmlss-pi.xhtml",
</span><span class="cx">         "web-platform-tests/css/mediaqueries/media-queries-001.xht",
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomCSSStyleSheettemplateadoptionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption-expected.txt (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption-expected.txt                         (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption-expected.txt    2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL adoptedStyleSheets won'te be cleared when adopting into/from <template>s Illegal constructor
+
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomCSSStyleSheettemplateadoptionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption.html                         (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption.html    2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+<!doctype html>
+<title>adoptedStyleSheets should stay when adopting to/from template document</title>
+<link rel="author" title="Rakina Zata Amni" href="mailto:rakina@chromium.org">
+<link rel="help" href="https://wicg.github.io/construct-stylesheets/">
+<script src = '/resources/testharness.js'></script>
+<script src = '/resources/testharnessreport.js'></script>
+<body>
+<div id="host"></div>
+<template id='template'>
+  <template id='nested_template'></template>
+</template>
+</body>
+<script>
+test(function() {
+  let sheet = new CSSStyleSheet();
+  sheet.replaceSync("div { color: red }");
+
+  let host = document.getElementById("host");
+  let root = host.attachShadow({ mode: "open" });
+  root.adoptedStyleSheets = [sheet];
+  assert_equals(root.adoptedStyleSheets.length, 1);
+  assert_equals(root.adoptedStyleSheets[0], sheet);
+
+  // adoptedStyleSheets is not cleared when adopted into a <template>.
+  const template = document.getElementById("template");
+  template.content.appendChild(host);
+  assert_equals(root.adoptedStyleSheets.length, 1);
+  assert_equals(root.adoptedStyleSheets[0], sheet);
+
+  // adoptedStyleSheets is not cleared when adopted back in the main document.
+  document.body.appendChild(host);
+  assert_equals(root.adoptedStyleSheets.length, 1);
+  assert_equals(root.adoptedStyleSheets[0], sheet);
+
+  // adoptedStyleSheets is not cleared when adopted into a nested <template>.
+  const nested_template = template.content.firstElementChild;
+  nested_template.content.appendChild(host);
+  assert_equals(root.adoptedStyleSheets.length, 1);
+  assert_equals(root.adoptedStyleSheets[0], sheet);
+
+  // adoptedStyleSheets is cleared when adopted into an <iframe>.
+  const iframe = document.createElement("iframe");
+  document.body.appendChild(iframe);
+  iframe.contentDocument.body.appendChild(host);
+  assert_equals(root.adoptedStyleSheets.length, 0);
+}, "adoptedStyleSheets won'te be cleared when adopting into/from <template>s");
+</script>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationcsstextexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt     2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt        2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -7,5 +7,7 @@
</span><span class="cx"> PASS another cssText order (non-alphabetical order)
</span><span class="cx"> PASS whitespaces in value
</span><span class="cx"> PASS invalid property does not appear
</span><ins>+FAIL Shorthands aren't serialized if there are other properties with different logical groups in between assert_equals: expected "margin-top: 10px; margin-right: 10px; margin-left: 10px; margin-inline-start: 10px; margin-block: 10px; margin-inline-end: 10px; margin-bottom: 10px;" but got "margin: 10px; margin-inline: 10px; margin-block: 10px;"
+PASS Shorthands _are_ serialized if there are no other properties with different logical groups in between
</ins><span class="cx"> FAIL cssText on computed style declaration returns the empty string assert_equals: cssText is empty expected "" but got "align-content: normal; align-items: normal; align-self: auto; alignment-baseline: auto; all: ; alt: \"\"; animation-delay: 0s; animation-direction: normal; animation-duration: 0s; animation-fill-mode: none; animation-iteration-count: 1; animation-name: none; animation-play-state: running; animation-timing-function: ease; aspect-ratio: auto; background-attachment: scroll; background-blend-mode: normal; background-clip: border-box; background-color: rgba(0, 0, 0, 0); background-image: none; background-origin: padding-box; background-position-x: 0%; background-position-y: 0%; background-repeat: repeat; background-size: auto; baseline-shift: baseline; block-size: 0px; border-block-end-color: rgb(255, 0, 0); border-block-end-style: none; border-block-end-width: 0px; border-block-start-color: rgb(255, 0, 0); border-block-s
 tart-style: none; border-block-start-width: 0px; border-bottom-color: rgb(255, 0, 0); border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-bottom-style: none; border-bottom-width: 0px; border-collapse: separate; border-end-end-radius: 0px; border-end-start-radius: 0px; border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; border-inline-end-color: rgb(255, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(255, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(255, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(255, 0, 0); border-right-style: none; border-right-width: 0px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-color: rgb(255, 0, 0); border-top-left-radius: 0px; border-top-right-radius: 0px; border-top-style: none; border-top-width: 
 0px; bottom: auto; box-shadow: none; box-sizing: content-box; break-after: auto; break-before: auto; break-inside: auto; buffered-rendering: auto; caption-side: top; caret-color: rgb(255, 0, 0); clear: none; clip: auto; clip-path: none; clip-rule: nonzero; color: rgb(255, 0, 0); color-interpolation: sRGB; color-interpolation-filters: linearRGB; color-rendering: auto; color-scheme: auto; column-count: auto; column-fill: balance; column-gap: normal; column-rule-color: rgb(255, 0, 0); column-rule-style: none; column-rule-width: 0px; column-span: none; column-width: auto; contain: none; content: ; counter-increment: none; counter-reset: none; cursor: auto; cx: 0px; cy: 0px; direction: ltr; display: block; dominant-baseline: auto; empty-cells: show; fill: rgb(0, 0, 0); fill-opacity: 1; fill-rule: nonzero; filter: none; flex-basis: auto; flex-direction: row; flex-grow: 0; flex-shrink: 1; flex-wrap: nowrap; float: none; flood-color: rgb(0, 0, 0); flood-opacity: 1; font-family: -webkit-stan
 dard; font-feature-settings: normal; font-optical-sizing: auto; font-size: 13.333333015441895px; font-stretch: normal; font-style: normal; font-synthesis: style weight small-caps; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; font-weight: normal; glyph-orientation-horizontal: 0deg; glyph-orientation-vertical: auto; grid-auto-columns: auto; grid-auto-flow: row; grid-auto-rows: auto; grid-column-end: auto; grid-column-start: auto; grid-row-end: auto; grid-row-start: auto; grid-template-areas: none; grid-template-columns: none; grid-template-rows: none; hanging-punctuation: none; height: 0px; image-orientation: from-image; image-rendering: auto; inline-size: 784px; inset-block-end: auto; inset-block-start: auto; inset-inline-end: auto; inset-inline-start: auto; isolation: auto; justify-content: normal; justify-items
 : normal; justify-self: auto; kerning: 0; left: auto; letter-spacing: normal; lighting-color: rgb(255, 255, 255); line-break: auto; line-height: normal; list-style-image: none; list-style-position: outside; list-style-type: disc; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; marker-end: none; marker-mid: none; marker-start: none; mask: none; mask-type: luminance; math-style: normal; max-block-size: none; max-height: none; max-inline-size: none; max-width: none; min-block-size: 0px; min-height: 0px; min-inline-size: 0px; min-width: 0px; mix-blend-mode: normal; object-fit: fill; object-position: 50% 50%; opacity: 1; order: 0; orphans: auto; outline-color: rgb(255, 0, 0); outline-offset: 0px; outline-style: none; outline-width: 0px; overflow-wrap: normal; overflow-x: visible; overflow-y: visible; overscroll-behavior-x: auto; overscroll-behavior-y: auto; padding-
 block-end: 0px; padding-block-start: 0px; padding-bottom: 0px; padding-inline-end: 0px; padding-inline-start: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; page-break-after: auto; page-break-before: auto; page-break-inside: auto; paint-order: normal; perspective: none; perspective-origin-x: ; perspective-origin-y: ; pointer-events: auto; position: static; quotes: auto; r: 0px; resize: none; right: auto; rotate: none; row-gap: normal; rx: auto; ry: auto; scale: none; scroll-behavior: auto; scroll-margin-block: 0px; scroll-margin-bottom: 0px; scroll-margin-inline: 0px; scroll-margin-left: 0px; scroll-margin-right: 0px; scroll-margin-top: 0px; scroll-padding-block: auto; scroll-padding-bottom: auto; scroll-padding-inline: auto; scroll-padding-left: auto; scroll-padding-right: auto; scroll-padding-top: auto; scroll-snap-align: none; scroll-snap-stop: normal; scroll-snap-type: none; shape-image-threshold: 0; shape-margin: 0px; shape-outside: none; shape-rendering: auto; s
 ize: ; speak-as: normal; stop-color: rgb(0, 0, 0); stop-opacity: 1; stroke: none; stroke-color: rgba(0, 0, 0, 0); stroke-dasharray: none; stroke-dashoffset: 0px; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 4; stroke-opacity: 1; stroke-width: 1px; tab-size: 8; table-layout: auto; text-align: start; text-anchor: start; text-decoration: none; text-decoration-color: rgb(255, 0, 0); text-decoration-line: none; text-decoration-skip: auto; text-decoration-style: solid; text-decoration-thickness: auto; text-indent: 0px; text-orientation: mixed; text-overflow: clip; text-rendering: auto; text-shadow: none; text-transform: none; text-underline-offset: auto; text-underline-position: auto; top: auto; touch-action: auto; transform: none; transform-box: view-box; transform-origin-x: ; transform-origin-y: ; transform-origin-z: ; transform-style: flat; transition-delay: 0s; transition-duration: 0s; transition-property: all; transition-timing-function: ease; translate: none; uni
 code-bidi: normal; vector-effect: none; vertical-align: baseline; visibility: visible; white-space: normal; widows: auto; width: 784px; will-change: auto; word-break: normal; word-spacing: 0px; word-wrap: normal; writing-mode: horizontal-tb; x: 0px; y: 0px; z-index: auto; zoom: 1; -apple-color-filter: none; -apple-pay-button-style: black; -apple-pay-button-type: plain; -apple-trailing-word: auto; -webkit-appearance: none; -webkit-backdrop-filter: none; -webkit-backface-visibility: visible; -webkit-background-clip: border-box; -webkit-background-composite: source-over; -webkit-background-origin: padding-box; -webkit-background-size: auto; -webkit-border-fit: border; -webkit-border-horizontal-spacing: 0px; -webkit-border-image: none; -webkit-border-vertical-spacing: 0px; -webkit-box-align: stretch; -webkit-box-decoration-break: slice; -webkit-box-direction: normal; -webkit-box-flex: 0; -webkit-box-flex-group: 1; -webkit-box-lines: single; -webkit-box-ordinal-group: 1; -webkit-box-orie
 nt: horizontal; -webkit-box-pack: start; -webkit-box-reflect: none; -webkit-box-shadow: none; -webkit-column-axis: auto; -webkit-column-break-after: auto; -webkit-column-break-before: auto; -webkit-column-break-inside: auto; -webkit-column-progression: normal; -webkit-cursor-visibility: auto; -webkit-font-kerning: auto; -webkit-font-smoothing: auto; -webkit-hyphenate-character: auto; -webkit-hyphenate-limit-after: auto; -webkit-hyphenate-limit-before: auto; -webkit-hyphenate-limit-lines: no-limit; -webkit-hyphens: manual; -webkit-initial-letter: normal; -webkit-line-align: none; -webkit-line-box-contain: block inline replaced; -webkit-line-clamp: none; -webkit-line-grid: none; -webkit-line-snap: none; -webkit-locale: auto; -webkit-margin-after-collapse: collapse; -webkit-margin-before-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-margin-top-collapse: collapse; -webkit-mask-box-image: none; -webkit-mask-box-image-outset: 0; -webkit-mask-box-image-repeat: stret
 ch; -webkit-mask-box-image-slice: 0 fill; -webkit-mask-box-image-source: none; -webkit-mask-box-image-width: auto; -webkit-mask-clip: border-box; -webkit-mask-composite: source-over; -webkit-mask-image: none; -webkit-mask-origin: border-box; -webkit-mask-position-x: 0%; -webkit-mask-position-y: 0%; -webkit-mask-repeat: repeat; -webkit-mask-size: auto; -webkit-mask-source-type: alpha; -webkit-nbsp-mode: normal; -webkit-print-color-adjust: economy; -webkit-rtl-ordering: logical; -webkit-ruby-position: before; -webkit-text-combine: none; -webkit-text-emphasis-color: rgb(255, 0, 0); -webkit-text-emphasis-position: over right; -webkit-text-emphasis-style: none; -webkit-text-fill-color: rgb(255, 0, 0); -webkit-text-orientation: mixed; -webkit-text-security: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-color: rgb(255, 0, 0); -webkit-text-stroke-width: 0px; -webkit-text-zoom: normal; -webkit-transform-style: flat; -webkit-user-drag: auto; -webkit-user-modify: read-only; -webkit
 -user-select: text;"
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationcsstexthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext.html (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext.html     2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext.html        2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -97,6 +97,18 @@
</span><span class="cx"> 
</span><span class="cx">         }, 'invalid property does not appear');
</span><span class="cx"> 
</span><ins>+        test(function(){
+            var style = newElm().style;
+            style.cssText = "margin: 10px; margin-inline: 10px; margin-block: 10px; margin-inline-end: 10px; margin-bottom: 10px;";
+            assert_equals(style.cssText, "margin-top: 10px; margin-right: 10px; margin-left: 10px; margin-inline-start: 10px; margin-block: 10px; margin-inline-end: 10px; margin-bottom: 10px;");
+        }, 'Shorthands aren\'t serialized if there are other properties with different logical groups in between');
+
+        test(function(){
+            var style = newElm().style;
+            style.cssText = "margin-top: 10px; margin-left: 10px; margin-right: 10px; margin-bottom: 10px; margin-inline-start: 10px; margin-inline-end: 10px; margin-block-start: 10px; margin-block-end: 10px;";
+            assert_equals(style.cssText, "margin: 10px; margin-inline: 10px; margin-block: 10px;");
+        }, 'Shorthands _are_ serialized if there are no other properties with different logical groups in between');
+
</ins><span class="cx">         // https://github.com/w3c/csswg-drafts/issues/1033
</span><span class="cx">         test(function() {
</span><span class="cx">             var elm = newElm();
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationregisteredcustompropertiesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties-expected.txt (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties-expected.txt                                (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties-expected.txt   2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL Registered custom properties are included in CSSComputedStyleDeclaration assert_not_equals: got disallowed value -1
+FAIL Only relevant custom properties are included assert_not_equals: got disallowed value -1
+
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomcssstyledeclarationregisteredcustompropertieshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties.html                                (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties.html   2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+<!DOCTYPE html>
+<title>Computed CSSStyleDeclaration includes registered custom properties</title>
+<link rel="help" href="https://drafts.csswg.org/cssom/#dom-window-getcomputedstyle">
+<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/1316">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+  @property --non-inherited-length {
+    syntax: "<length>";
+    inherits: false;
+    initial-value: 0px;
+  }
+  @property --inherited-length {
+    syntax: "<length>";
+    inherits: true;
+    initial-value: 0px;
+  }
+  @property --universal-with-initial {
+    syntax: "*";
+    inherits: false;
+    initial-value: foo;
+  }
+  @property --universal-without-initial {
+    syntax: "*";
+    inherits: false;
+  }
+  #outer { --non-registered-outer: 1px; }
+  #inner { --non-registered-inner: 2px; }
+  #sibling { --universal-without-initial: bar; }
+</style>
+<div id=outer>
+  <div id=inner></div>
+  <div id=sibling></div>
+</div>
+<script>
+  const assert_present = (props, name) => assert_not_equals(props.indexOf(name), -1);
+  const assert_absent = (props, name) => assert_equals(props.indexOf(name), -1);
+
+  test(function() {
+    let props = Array.from(getComputedStyle(inner));
+    assert_present(props, '--non-inherited-length');
+    assert_present(props, '--inherited-length');
+    assert_present(props, '--non-registered-outer');
+    assert_present(props, '--non-registered-inner');
+    assert_present(props, '--universal-with-initial');
+    assert_absent(props, '--universal-without-initial');
+  }, 'Registered custom properties are included in CSSComputedStyleDeclaration');
+
+  test(function() {
+    let props = Array.from(getComputedStyle(sibling));
+    assert_present(props, '--non-inherited-length');
+    assert_present(props, '--inherited-length');
+    assert_present(props, '--non-registered-outer');
+    assert_present(props, '--universal-with-initial');
+    assert_present(props, '--universal-without-initial');
+    assert_absent(props, '--non-registered-inner');
+  }, 'Only relevant custom properties are included');
+</script>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomdeclarationblockallcrashhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/declaration-block-all-crash.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/declaration-block-all-crash.html                             (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/declaration-block-all-crash.html        2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+<!doctype html>
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1711189">
+<div></div>
+<script>
+  let div = document.querySelector("div");
+  let cs = getComputedStyle(div);
+  for (let i = 0; i < cs.length; ++i)
+    div.style.setProperty(cs[i], cs.getPropertyValue(cs[i]));
+  div.style.cssText
+</script>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomflexserializationexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization-expected.txt (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization-expected.txt                              (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization-expected.txt 2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL CSSOM - Flex serialization assert_equals: Single value flex with CSS-wide keyword should serialize correctly. expected "flex: initial;" but got ""
+
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomflexserializationhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization.html                              (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization.html 2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title>CSSOM - Flex 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 { flex: initial; }
+        div { flex: 0; }
+        div { flex: initial; flex-basis: initial; flex-shrink: initial; }
+        div { flex: initial; flex-shrink: 0; }
+        div { flex: initial; flex-basis: 0; flex-shrink: 2;}
+    </style>
+
+    <script>
+    test(function () {
+        var styleSheet = document.styleSheets[0];
+
+        assert_equals(styleSheet.cssRules[0].style.cssText, "flex: initial;", "Single value flex with CSS-wide keyword should serialize correctly.");
+        assert_in_array(styleSheet.cssRules[1].style.cssText, ["flex: 0px;", "flex: 0 1 0px;"], "Single value flex with non-CSS-wide keyword should serialize correctly.");
+        assert_equals(styleSheet.cssRules[2].style.cssText, "flex: initial;", "Multiple values flex with CSS-wide keyword should serialize correctly.");
+        assert_equals(styleSheet.cssRules[3].style.cssText, "flex-grow: initial; flex-basis: initial; flex-shrink: 0;", "Multiple values flex with CSS-wide and non-CSS-wide keyword should serialize correctly.");
+        assert_equals(styleSheet.cssRules[4].style.cssText, "flex-grow: initial; flex-basis: 0px; flex-shrink: 2;", "Multiple values flex with CSS-wide and non-CSS-wide keyword should serialize correctly.");
+    });
+    </script>
+</head>
+</html>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreeexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt       2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt  2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -1,8 +1,8 @@
</span><span class="cx"> 
</span><span class="cx"> PASS getComputedStyle returns no style for detached element
</span><del>-FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) assert_true: expected true got false
-FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) from iframe's window assert_true: expected true got false
-FAIL getComputedStyle returns no style for element outside the flat tree assert_true: expected true got false
-FAIL getComputedStyle returns no style for descendant outside the flat tree assert_true: expected true got false
</del><ins>+FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) assert_equals: expected 0 but got 390
+FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) from iframe's window assert_equals: expected 0 but got 390
+FAIL getComputedStyle returns no style for element outside the flat tree assert_equals: expected 0 but got 390
+FAIL getComputedStyle returns no style for descendant outside the flat tree assert_equals: expected 0 but got 390
</ins><span class="cx"> PASS getComputedStyle returns no style for shadow tree outside of flattened tree
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html       2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html  2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -17,7 +17,7 @@
</span><span class="cx">     assert_true(!!element);
</span><span class="cx">     let style = (global ? global : window).getComputedStyle(element);
</span><span class="cx">     assert_true(!!style);
</span><del>-    assert_true(style.length === 0);
</del><ins>+    assert_equals(style.length, 0);
</ins><span class="cx">     assert_equals(style.color, "");
</span><span class="cx">   }, `getComputedStyle returns no style for ${description}`);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssominsertRuleacrosscontextexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context-expected.txt (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context-expected.txt                               (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context-expected.txt  2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+
+PASS The constructor of inserted rule object must be from iframe
+FAIL The constructor of inserted rule object must be from iframe for new CSSStyleSheet() Illegal constructor
+
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssominsertRuleacrosscontexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context.html                               (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context.html  2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Test: CSSOM StyleSheet insertRule across context</title>
+<link rel="author" title="Kagami Sascha Rosylight" href="mailto:saschanaz@outlook.com">
+<link rel="author" title="Mozilla" href="https://mozilla.org">
+<link rel="help" href="https://drafts.csswg.org/cssom/">
+<script src="/resources/testharness.js" type="text/javascript"></script>
+<script src="/resources/testharnessreport.js" type="text/javascript"></script>
+
+<iframe id="iframe"></iframe>
+<script>
+  function createSheet() {
+    const tempStyleElement = iframe.contentDocument.createElement('style');
+    iframe.contentDocument.head.append(tempStyleElement);
+
+    const tempStyle = tempStyleElement.sheet;
+    tempStyleElement.remove();
+    return tempStyle;
+  }
+
+  test(() => {
+    const sheet = createSheet();
+    sheet.insertRule(".kaoru {}");
+    assert_equals(sheet.rules[0].constructor, iframe.contentWindow.CSSStyleRule);
+  }, "The constructor of inserted rule object must be from iframe");
+
+  test(() => {
+    const sheet = new iframe.contentWindow.CSSStyleSheet();
+    sheet.insertRule(".kaoru {}");
+    assert_equals(sheet.rules[0].constructor, iframe.contentWindow.CSSStyleRule);
+  }, "The constructor of inserted rule object must be from iframe for new CSSStyleSheet()");
+</script>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssompagedescriptorsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors-expected.txt (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors-expected.txt                                (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors-expected.txt   2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL Page descriptors shouldn't be exposed to CSS Style declarations assert_equals: computed style should not have size property expected (undefined) undefined but got (string) ""
+
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssompagedescriptorshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors.html                                (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors.html   2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+<!DOCTYPE HTML>
+<html>
+<head>
+  <link rel="author" title="Mozilla" href="https://mozilla.org">
+  <link rel="help" href="https://drafts.csswg.org/cssom/#the-cssstyledeclaration-interface">
+  <title>Page descriptors shouldn't be exposed to CSS Style declarations</title>
+  <script src="/resources/testharness.js"></script>
+  <script src="/resources/testharnessreport.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+'use strict';
+
+let element = document.getElementById("target");
+let computedStyle = window.getComputedStyle(element);
+let style = element.style;
+
+test(t => {
+    assert_equals(computedStyle.size, undefined,
+        "computed style should not have size property");
+    assert_equals(computedStyle.getPropertyValue("size"), "",
+        "computed style getPropertyValue(\"size\") should be empty");
+
+    assert_equals(style.size, undefined,
+        "style should not have size property");
+    assert_equals(style.getPropertyValue("size"), "",
+        "style getPropertyValue(\"size\") should be empty");
+    for(const val of ["initial", "auto", "100px"]){
+        style.setProperty("size", val);
+        assert_false(CSS.supports("size", val));
+        assert_equals(style.size, undefined,
+            "style should not have size property after assigning size=" + val);
+        assert_equals(style.getPropertyValue("size"), "",
+            "style getPropertyValue(\"size\") should be empty after assigning size=" + val);
+    }
+});
+</script>
+</body>
+</html>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializecustompropsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props-expected.txt (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props-expected.txt                          (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props-expected.txt     2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+
+PASS z-index can take a 4-digit integer
+PASS An unregistered custom prop can take a 4-digit integer
+PASS An <integer> custom prop can take a 4-digit integer
+PASS z-index can take a custom property set to a 4-digit integer
+PASS z-index can take a 6-digit integer
+PASS An unregistered custom prop can take a 6-digit integer
+PASS An <integer> custom prop can take a 6-digit integer
+PASS z-index can take a custom property set to a 6-digit integer
+PASS z-index can take a 8-digit integer
+PASS An unregistered custom prop can take a 8-digit integer
+PASS An <integer> custom prop can take a 8-digit integer
+PASS z-index can take a custom property set to a 8-digit integer
+PASS z-index can take a 12-digit integer
+PASS An unregistered custom prop can take a 12-digit integer
+PASS An <integer> custom prop can take a 12-digit integer
+PASS z-index can take a custom property set to a 12-digit integer
+PASS z-index can take a 25-digit integer
+FAIL An unregistered custom prop can take a 25-digit integer assert_equals: expected "1111111111111111111111111" but got "1.1111111111111111e+24"
+FAIL An <integer> custom prop can take a 25-digit integer assert_equals: expected "1111111111111111111111111" but got "1.1111111111111111e+24"
+PASS z-index can take a custom property set to a 25-digit integer
+
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializecustompropshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props.html (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props.html                          (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props.html     2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,69 @@
</span><ins>+<link rel=author title="Tab Atkins-Bittner" href="https://www.xanthir.com/contact/">
+<link rel="help" href="https://drafts.csswg.org/css-values/#calc-range">
+<body><!doctype html>
+<title>Serializing Integers Never Uses Scinot</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<link rel=author title="Tab Atkins-Bittner" href="https://www.xanthir.com/contact/">
+<link rel="help" href="https://drafts.csswg.org/cssom/#serialize-a-css-component-value">
+<!--
+  Per CSSOM, integers always serialize all their digits out.
+  They never serialize to scinot, regardless of size,
+  because that makes them stop being an integer.
+  This applies to custom properties as well.
+-->
+<body>
+
+<script>
+
+try {
+CSS.registerProperty({
+    name: "--two",
+    value: "<integer>",
+    inherits: true,
+    initial: -1
+});
+}catch(e){}
+
+testIntLength(4);
+testIntLength(6);
+testIntLength(8);
+testIntLength(12);
+// JS starts serializing with scinot at 22 digits...
+testIntLength(25);
+
+function testIntLength(len) {
+    let el = document.body;
+    const val = "1".repeat(len);
+    test(()=>{
+        el.removeAttribute("style");
+        const nullVal = getComputedStyle(el).zIndex;
+        el.style.zIndex=val;
+        assert_not_equals(getComputedStyle(el).zIndex, nullVal)
+    }, `z-index can take a ${len}-digit integer`);
+
+    test(()=>{
+        el.removeAttribute("style");
+        el.style.setProperty("--one", val);
+        assert_equals(getComputedStyle(el).getPropertyValue("--one"), val);
+    }, `An unregistered custom prop can take a ${len}-digit integer`);
+
+    test(()=>{
+        el.removeAttribute("style");
+        el.style.setProperty("--two", val);
+        assert_equals(getComputedStyle(el).getPropertyValue("--two"), val);
+    }, `An <integer> custom prop can take a ${len}-digit integer`);
+
+    test(()=>{
+        el.removeAttribute("style");
+        el.style.zIndex = val;
+        const standardVal = getComputedStyle(el).zIndex;
+        el.removeAttribute("style");
+        el.style.setProperty("--three", val);
+        el.style.zIndex = "var(--three)";
+        assert_equals(getComputedStyle(el).zIndex, standardVal);
+    }, `z-index can take a custom property set to a ${len}-digit integer`);
+}
+
+</script>
</ins></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevaluesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values-expected.txt        2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values-expected.txt   2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -450,6 +450,8 @@
</span><span class="cx"> PASS list-style-type: disc
</span><span class="cx"> PASS list-style-type: circle
</span><span class="cx"> PASS list-style-type: square
</span><ins>+PASS list-style-type: disclosure-open
+PASS list-style-type: disclosure-closed
</ins><span class="cx"> PASS list-style-type: decimal
</span><span class="cx"> PASS list-style-type: decimal-leading-zero
</span><span class="cx"> PASS list-style-type: lower-roman
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevalueshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values.html (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values.html        2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values.html   2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -433,7 +433,8 @@
</span><span class="cx">         'initial': 'outside',
</span><span class="cx">       }],
</span><span class="cx">       ['list-style-type', {
</span><del>-        'values': ['disc', 'circle', 'square', 'decimal', 'decimal-leading-zero', 'lower-roman',
</del><ins>+        'values': ['disc', 'circle', 'square', 'disclosure-open', 'disclosure-closed',
+                   'decimal', 'decimal-leading-zero', 'lower-roman',
</ins><span class="cx">                    'upper-roman', 'lower-greek', 'lower-latin', 'upper-latin', 'armenian', 'georgian',
</span><span class="cx">                    'lower-alpha', 'upper-alpha', 'none', 'inherit'],
</span><span class="cx">         'initial': 'disc',
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevariablereferenceexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference-expected.txt    2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference-expected.txt       2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> 
</span><span class="cx"> PASS Longhand with variable preserves original serialization: with whitespace
</span><span class="cx"> PASS Shorthand with variable preserves original serialization: with whitespace
</span><del>-FAIL Longhand with variable preserves original serialization: without whitespace assert_equals: expected "font-size:var(--a);" but got "font-size: var(--a);"
-FAIL Shorthand with variable preserves original serialization: without whitespace assert_equals: expected "font:var(--a);" but got "font: var(--a);"
</del><ins>+PASS Longhand with variable preserves original serialization but trims whitespace: without whitespace
+PASS Shorthand with variable preserves original serialization but trims whitespace: without whitespace
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomserializevariablereferencehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference.html (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference.html    2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-variable-reference.html       2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -25,12 +25,12 @@
</span><span class="cx">     test(function() {
</span><span class="cx">         var elem = document.getElementById('longhand');
</span><span class="cx"> 
</span><del>-        assert_equals(elem.style.cssText, 'font-size:var(--a);');
-    }, 'Longhand with variable preserves original serialization: without whitespace')
</del><ins>+        assert_equals(elem.style.cssText, 'font-size: var(--a);');
+    }, 'Longhand with variable preserves original serialization but trims whitespace: without whitespace')
</ins><span class="cx"> 
</span><span class="cx">     test(function() {
</span><span class="cx">         var elem = document.getElementById('shorthand');
</span><span class="cx"> 
</span><del>-        assert_equals(elem.style.cssText, 'font:var(--a);');
-    }, 'Shorthand with variable preserves original serialization: without whitespace')
</del><ins>+        assert_equals(elem.style.cssText, 'font: var(--a);');
+    }, 'Shorthand with variable preserves original serialization but trims whitespace: without whitespace')
</ins><span class="cx"> </script>
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadcountexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count-expected.txt   2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count-expected.txt      2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><span class="cx"> 
</span><span class="cx"> PASS stylesheet.css should be loaded and styleSheets.length === 1
</span><span class="cx"> PASS stylesheet.css should be unloaded and styleSheets.length === 0
</span><del>-FAIL stylesheet-1.css should be loaded and styleSheets.length === 1 assert_equals: styleSheets.length is incorrect: expected 1 but got 0
</del><ins>+PASS stylesheet-1.css should be loaded and styleSheets.length === 1
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadcounthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count.html (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count.html   2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-count.html      2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -39,7 +39,7 @@
</span><span class="cx">       }, "stylesheet.css should be unloaded and styleSheets.length === 0");
</span><span class="cx"> 
</span><span class="cx">       // Verify that the styleSheets list length is back to 1 after loading a new sheet
</span><del>-      test(function() {
</del><ins>+      async_test(function(t) {
</ins><span class="cx"> 
</span><span class="cx">         // create a css file reference
</span><span class="cx">         var fileReference = document.createElement("link");
</span><span class="lines">@@ -46,14 +46,14 @@
</span><span class="cx">         fileReference.setAttribute("rel", "stylesheet");
</span><span class="cx">         fileReference.setAttribute("type", "text/css");
</span><span class="cx">         fileReference.setAttribute("href", "stylesheet-1.css");
</span><ins>+        fileReference.onerror = t.step_func_done(function() {
+          // assert that there is 1 styleSheet in the styleSheets property
+          assert_equals(styleSheets.length, 1, "styleSheets.length is incorrect:");
+        });
</ins><span class="cx"> 
</span><span class="cx">         // load the css file reference into the head section
</span><span class="cx">         var head = document.getElementsByTagName("HEAD")[0];
</span><span class="cx">         head.appendChild(fileReference);
</span><del>-
-        // assert that there is 1 styleSheet in the styleSheets property
-        assert_equals(styleSheets.length, 1, "styleSheets.length is incorrect:");
-
</del><span class="cx">       }, "stylesheet-1.css should be loaded and styleSheets.length === 1");
</span><span class="cx"> 
</span><span class="cx">     </script>
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadtreeorderexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order-expected.txt      2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order-expected.txt 2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -1,8 +1,3 @@
</span><span class="cx"> 
</span><span class="cx"> FAIL styleSheets.length must be 5 assert_equals: styleSheets.length is incorrect: expected 5 but got 1
</span><del>-PASS styleSheets item 0 title must be aaa
-FAIL styleSheets item 1 title must be zebra null is not an object (evaluating 'styleSheets.item(1).title')
-FAIL styleSheets item 0 title must be kilo null is not an object (evaluating 'styleSheets.item(2).title')
-FAIL styleSheets item 0 title must be alpha null is not an object (evaluating 'styleSheets.item(3).title')
-FAIL styleSheets item 0 title must be zebra null is not an object (evaluating 'styleSheets.item(4).title')
</del><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomttwfcssomdocextloadtreeorderhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order.html (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order.html      2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/ttwf-cssom-doc-ext-load-tree-order.html 2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -21,7 +21,7 @@
</span><span class="cx"> <body>
</span><span class="cx">     <div id="log"></div>
</span><span class="cx">     <script>
</span><del>-
</del><ins>+    onload = function() {
</ins><span class="cx">       // Get the Document's styleSheets attribute
</span><span class="cx">       var styleSheets = document.styleSheets;
</span><span class="cx"> 
</span><span class="lines">@@ -50,7 +50,7 @@
</span><span class="cx">       test(function() {
</span><span class="cx">         assert_equals(styleSheets.item(4).title, "zebra", "title for item 1 is incorrect:");
</span><span class="cx">       }, "styleSheets item 0 title must be zebra");
</span><del>-
</del><ins>+    };
</ins><span class="cx">     </script>
</span><span class="cx"> </body>
</span><span class="cx"> </html>
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestscsscssomw3cimportlog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/w3c-import.log (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/w3c-import.log       2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/w3c-import.log  2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -33,6 +33,7 @@
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-constructable-replace-on-regular-sheet.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-constructable.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-modify-after-removal.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet-template-adoption.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/CSSStyleSheet.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/HTMLLinkElement-disabled-001.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/HTMLLinkElement-disabled-002.html
</span><span class="lines">@@ -80,11 +81,14 @@
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-mutationrecord-004.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-mutationrecord-005.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-properties.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-registered-custom-properties.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-setter-attr.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-setter-declarations.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-setter-form-controls.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-setter-logical.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/declaration-block-all-crash.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/escape.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/flex-serialization.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/font-family-serialization-001.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/font-shorthand-serialization.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-animations-replaced-into-ib-split.html
</span><span class="lines">@@ -112,6 +116,7 @@
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/historical.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/idlharness.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/inline-style-001.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-across-context.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-charset-no-index.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-from-script-expected.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/insertRule-from-script.html
</span><span class="lines">@@ -126,6 +131,7 @@
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/medialist-interfaces-004.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/mediaquery-sort-dedup.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/overflow-serialization.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/page-descriptors.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/preferred-stylesheet-order.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/preferred-stylesheet-reversed-order.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/removerule-invalidation-crash.html
</span><span class="lines">@@ -135,6 +141,7 @@
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/selectorText-modification-restyle-001.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/selectorText-modification-restyle-002.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialization-CSSDeclaration-with-important.html
</span><ins>+/LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-custom-props.html
</ins><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-media-rule.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-namespaced-type-selectors.html
</span><span class="cx"> /LayoutTests/imported/w3c/web-platform-tests/css/cssom/serialize-values.html
</span></span></pre></div>
<a id="trunkLayoutTestsplatformioswk2importedw3cwebplatformtestscsscssomcssstyledeclarationcsstextexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt (279397 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt    2021-06-30 00:14:27 UTC (rev 279397)
+++ trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt       2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -7,5 +7,7 @@
</span><span class="cx"> PASS another cssText order (non-alphabetical order)
</span><span class="cx"> PASS whitespaces in value
</span><span class="cx"> PASS invalid property does not appear
</span><ins>+FAIL Shorthands aren't serialized if there are other properties with different logical groups in between assert_equals: expected "margin-top: 10px; margin-right: 10px; margin-left: 10px; margin-inline-start: 10px; margin-block: 10px; margin-inline-end: 10px; margin-bottom: 10px;" but got "margin: 10px; margin-inline: 10px; margin-block: 10px;"
+PASS Shorthands _are_ serialized if there are no other properties with different logical groups in between
</ins><span class="cx"> FAIL cssText on computed style declaration returns the empty string assert_equals: cssText is empty expected "" but got "align-content: normal; align-items: normal; align-self: auto; alignment-baseline: auto; all: ; alt: \"\"; animation-delay: 0s; animation-direction: normal; animation-duration: 0s; animation-fill-mode: none; animation-iteration-count: 1; animation-name: none; animation-play-state: running; animation-timing-function: ease; aspect-ratio: auto; background-attachment: scroll; background-blend-mode: normal; background-clip: border-box; background-color: rgba(0, 0, 0, 0); background-image: none; background-origin: padding-box; background-position-x: 0%; background-position-y: 0%; background-repeat: repeat; background-size: auto; baseline-shift: baseline; block-size: 0px; border-block-end-color: rgb(255, 0, 0); border-block-end-style: none; border-block-end-width: 0px; border-block-start-color: rgb(255, 0, 0); border-block-s
 tart-style: none; border-block-start-width: 0px; border-bottom-color: rgb(255, 0, 0); border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-bottom-style: none; border-bottom-width: 0px; border-collapse: separate; border-end-end-radius: 0px; border-end-start-radius: 0px; border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; border-inline-end-color: rgb(255, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(255, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(255, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(255, 0, 0); border-right-style: none; border-right-width: 0px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-color: rgb(255, 0, 0); border-top-left-radius: 0px; border-top-right-radius: 0px; border-top-style: none; border-top-width: 
 0px; bottom: auto; box-shadow: none; box-sizing: content-box; break-after: auto; break-before: auto; break-inside: auto; buffered-rendering: auto; caption-side: top; caret-color: rgb(255, 0, 0); clear: none; clip: auto; clip-path: none; clip-rule: nonzero; color: rgb(255, 0, 0); color-interpolation: sRGB; color-interpolation-filters: linearRGB; color-rendering: auto; color-scheme: auto; column-count: auto; column-fill: balance; column-gap: normal; column-rule-color: rgb(255, 0, 0); column-rule-style: none; column-rule-width: 0px; column-span: none; column-width: auto; contain: none; content: ; counter-increment: none; counter-reset: none; cursor: auto; cx: 0px; cy: 0px; direction: ltr; display: block; dominant-baseline: auto; empty-cells: show; fill: rgb(0, 0, 0); fill-opacity: 1; fill-rule: nonzero; filter: none; flex-basis: auto; flex-direction: row; flex-grow: 0; flex-shrink: 1; flex-wrap: nowrap; float: none; flood-color: rgb(0, 0, 0); flood-opacity: 1; font-family: -webkit-stan
 dard; font-feature-settings: normal; font-optical-sizing: auto; font-size: 13.333333015441895px; font-stretch: normal; font-style: normal; font-synthesis: style weight small-caps; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; font-weight: normal; glyph-orientation-horizontal: 0deg; glyph-orientation-vertical: auto; grid-auto-columns: auto; grid-auto-flow: row; grid-auto-rows: auto; grid-column-end: auto; grid-column-start: auto; grid-row-end: auto; grid-row-start: auto; grid-template-areas: none; grid-template-columns: none; grid-template-rows: none; hanging-punctuation: none; height: 0px; image-orientation: from-image; image-rendering: auto; inline-size: 784px; inset-block-end: auto; inset-block-start: auto; inset-inline-end: auto; inset-inline-start: auto; isolation: auto; justify-content: normal; justify-items
 : normal; justify-self: auto; kerning: 0; left: auto; letter-spacing: normal; lighting-color: rgb(255, 255, 255); line-break: auto; line-height: normal; list-style-image: none; list-style-position: outside; list-style-type: disc; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; marker-end: none; marker-mid: none; marker-start: none; mask: none; mask-type: luminance; math-style: normal; max-block-size: none; max-height: none; max-inline-size: none; max-width: none; min-block-size: 0px; min-height: 0px; min-inline-size: 0px; min-width: 0px; mix-blend-mode: normal; object-fit: fill; object-position: 50% 50%; opacity: 1; order: 0; orphans: auto; outline-color: rgb(255, 0, 0); outline-offset: 0px; outline-style: none; outline-width: 0px; overflow-wrap: normal; overflow-x: visible; overflow-y: visible; overscroll-behavior-x: auto; overscroll-behavior-y: auto; padding-
 block-end: 0px; padding-block-start: 0px; padding-bottom: 0px; padding-inline-end: 0px; padding-inline-start: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; page-break-after: auto; page-break-before: auto; page-break-inside: auto; paint-order: normal; perspective: none; perspective-origin-x: ; perspective-origin-y: ; pointer-events: auto; position: static; quotes: auto; r: 0px; resize: none; right: auto; rotate: none; row-gap: normal; rx: auto; ry: auto; scale: none; scroll-behavior: auto; scroll-margin-block: 0px; scroll-margin-bottom: 0px; scroll-margin-inline: 0px; scroll-margin-left: 0px; scroll-margin-right: 0px; scroll-margin-top: 0px; scroll-padding-block: auto; scroll-padding-bottom: auto; scroll-padding-inline: auto; scroll-padding-left: auto; scroll-padding-right: auto; scroll-padding-top: auto; scroll-snap-align: none; scroll-snap-stop: normal; scroll-snap-type: none; shape-image-threshold: 0; shape-margin: 0px; shape-outside: none; shape-rendering: auto; s
 ize: ; speak-as: normal; stop-color: rgb(0, 0, 0); stop-opacity: 1; stroke: none; stroke-color: rgba(0, 0, 0, 0); stroke-dasharray: none; stroke-dashoffset: 0px; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 4; stroke-opacity: 1; stroke-width: 1px; tab-size: 8; table-layout: auto; text-align: start; text-anchor: start; text-decoration: none; text-decoration-color: rgb(255, 0, 0); text-decoration-line: none; text-decoration-skip: auto; text-decoration-style: solid; text-decoration-thickness: auto; text-indent: 0px; text-orientation: mixed; text-overflow: clip; text-rendering: auto; text-shadow: none; text-transform: none; text-underline-offset: auto; text-underline-position: auto; top: auto; touch-action: auto; transform: none; transform-box: view-box; transform-origin-x: ; transform-origin-y: ; transform-origin-z: ; transform-style: flat; transition-delay: 0s; transition-duration: 0s; transition-property: all; transition-timing-function: ease; translate: none; uni
 code-bidi: normal; vector-effect: none; vertical-align: baseline; visibility: visible; white-space: normal; widows: auto; width: 784px; will-change: auto; word-break: normal; word-spacing: 0px; word-wrap: normal; writing-mode: horizontal-tb; x: 0px; y: 0px; z-index: auto; zoom: 1; -apple-color-filter: none; -apple-pay-button-style: black; -apple-pay-button-type: plain; -apple-trailing-word: auto; -webkit-appearance: none; -webkit-backdrop-filter: none; -webkit-backface-visibility: visible; -webkit-background-clip: border-box; -webkit-background-composite: source-over; -webkit-background-origin: padding-box; -webkit-background-size: auto; -webkit-border-fit: border; -webkit-border-horizontal-spacing: 0px; -webkit-border-image: none; -webkit-border-vertical-spacing: 0px; -webkit-box-align: stretch; -webkit-box-decoration-break: slice; -webkit-box-direction: normal; -webkit-box-flex: 0; -webkit-box-flex-group: 1; -webkit-box-lines: single; -webkit-box-ordinal-group: 1; -webkit-box-orie
 nt: horizontal; -webkit-box-pack: start; -webkit-box-reflect: none; -webkit-box-shadow: none; -webkit-column-axis: auto; -webkit-column-break-after: auto; -webkit-column-break-before: auto; -webkit-column-break-inside: auto; -webkit-column-progression: normal; -webkit-cursor-visibility: auto; -webkit-font-kerning: auto; -webkit-font-smoothing: auto; -webkit-hyphenate-character: auto; -webkit-hyphenate-limit-after: auto; -webkit-hyphenate-limit-before: auto; -webkit-hyphenate-limit-lines: no-limit; -webkit-hyphens: manual; -webkit-initial-letter: normal; -webkit-line-align: none; -webkit-line-box-contain: block inline replaced; -webkit-line-clamp: none; -webkit-line-grid: none; -webkit-line-snap: none; -webkit-locale: auto; -webkit-margin-after-collapse: collapse; -webkit-margin-before-collapse: collapse; -webkit-margin-bottom-collapse: collapse; -webkit-margin-top-collapse: collapse; -webkit-mask-box-image: none; -webkit-mask-box-image-outset: 0; -webkit-mask-box-image-repeat: stret
 ch; -webkit-mask-box-image-slice: 0 fill; -webkit-mask-box-image-source: none; -webkit-mask-box-image-width: auto; -webkit-mask-clip: border-box; -webkit-mask-composite: source-over; -webkit-mask-image: none; -webkit-mask-origin: border-box; -webkit-mask-position-x: 0%; -webkit-mask-position-y: 0%; -webkit-mask-repeat: repeat; -webkit-mask-size: auto; -webkit-mask-source-type: alpha; -webkit-nbsp-mode: normal; -webkit-overflow-scrolling: auto; -webkit-print-color-adjust: economy; -webkit-rtl-ordering: logical; -webkit-ruby-position: before; -webkit-text-combine: none; -webkit-text-emphasis-color: rgb(255, 0, 0); -webkit-text-emphasis-position: over right; -webkit-text-emphasis-style: none; -webkit-text-fill-color: rgb(255, 0, 0); -webkit-text-orientation: mixed; -webkit-text-security: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-color: rgb(255, 0, 0); -webkit-text-stroke-width: 0px; -webkit-text-zoom: normal; -webkit-touch-callout: default; -webkit-transform-style: flat
 ; -webkit-user-drag: auto; -webkit-user-modify: read-only; -webkit-user-select: text;"
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsplatformioswk2importedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreeexpectedtxtfromrev279397trunkLayoutTestsimportedw3cwebplatformtestscsscssomgetComputedStyledetachedsubtreeexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt (from rev 279397, trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt) (0 => 279398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt                              (rev 0)
+++ trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt 2021-06-30 01:09:26 UTC (rev 279398)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+
+PASS getComputedStyle returns no style for detached element
+FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) assert_equals: expected 0 but got 392
+FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) from iframe's window assert_equals: expected 0 but got 392
+FAIL getComputedStyle returns no style for element outside the flat tree assert_equals: expected 0 but got 392
+FAIL getComputedStyle returns no style for descendant outside the flat tree assert_equals: expected 0 but got 392
+PASS getComputedStyle returns no style for shadow tree outside of flattened tree
+
</ins></span></pre>
</div>
</div>

</body>
</html>