Commit 7ca03df7 authored by Chromium WPT Sync's avatar Chromium WPT Sync Committed by Commit Bot

Import wpt@06f77f6bfaa86f3643a79f1ec2c49c6b6955cf18

Using wpt-import in Chromium ae7ce271.

Build: https://ci.chromium.org/buildbot/chromium.infra.cron/wpt-importer/14730

Note to sheriffs: This CL imports external tests and adds
expectations for those tests; if this CL is large and causes
a few new failures, please fix the failures by adding new
lines to TestExpectations rather than reverting. See:
https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md

TBR=danyao

No-Export: true
Change-Id: I404a7bfac9a1c546e3620c4fc20d927e155a516a
Reviewed-on: https://chromium-review.googlesource.com/981752
Commit-Queue: Blink WPT Bot <blink-w3c-test-autoroller@chromium.org>
Reviewed-by: default avatarBlink WPT Bot <blink-w3c-test-autoroller@chromium.org>
Cr-Commit-Position: refs/heads/master@{#545990}
parent a1cb5235
<!DOCTYPE html>
<title>Reference</title>
<style>
/* establish context */
.container {
clear: both;
padding: 10px;
color: blue;
font: 20px/1 Ahem;
}
.zero {
width: 0;
}
.infinite {
width: 400px; /* close enough */
}
/* visualize size contribution */
.container > div {
float: left;
border: solid orange 20px;
border-style: none solid;
}
.container > div > div {
border-right: solid 20px aqua;
}
/* controls for min-width */
/* content = 100% = 80px = 4ch + border */
/* choose sizes that are larger than content to see if how they take effect */
.control {
width: 60px;
}
.raw-percent,
.calc-percent {
width: 160px;
margin-right: -100px;
}
.no-percent {
width: 160px;
}
</style>
<!-- calculating min-content widths -->
<div class='zero container'>
<div><div class="control">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="raw-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="calc-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="no-percent">ppp pp</div></div>
</div>
<!-- calculating max-content widths -->
<div class='infinite container'>
<div><div class="control">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="raw-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="calc-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="no-percent">p p</div></div>
</div>
<!DOCTYPE html>
<title>Percentages of min-width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
<link rel="match" href="intrinsic-percent-non-replaced-001-ref.html">
<style>
/* establish context */
.container {
clear: both;
padding: 10px;
color: blue;
font: 20px/1 Ahem;
}
.zero {
width: 0;
}
.infinite {
width: 400px; /* close enough */
}
/* visualize size contribution */
.container > div {
float: left;
border: solid orange 20px;
border-style: none solid;
}
.container > div > div {
border-right: solid 20px aqua;
}
/* test min-width */
/* content = 100% = 80px = 4ch + border */
/* choose sizes that are larger than content to see if how they take effect */
.raw-percent {
min-width: 200%;
}
.calc-percent {
min-width: calc(160px + 0%);
}
.no-percent {
min-width: 160px;
}
</style>
<!-- calculating min-content widths -->
<div class='zero container'>
<div><div class="control">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="raw-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="calc-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="no-percent">ppp pp</div></div>
</div>
<!-- calculating max-content widths -->
<div class='infinite container'>
<div><div class="control">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="raw-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="calc-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="no-percent">p p</div></div>
</div>
<!DOCTYPE html>
<title>Reference</title>
<style>
/* establish context */
.container {
clear: both;
padding: 10px;
color: blue;
font: 20px/1 Ahem;
}
.zero {
width: 0;
}
.infinite {
width: 400px; /* close enough */
}
/* visualize size contribution */
.container > div {
float: left; /* shrinkwrap */
border: solid orange 20px;
border-style: none solid;
}
.container > div > div {
border-right: solid 20px aqua;
}
/* controls for width, max-width */
/* content = 100% = 80px = 4ch + border */
/* choose sizes that are larger than content to see if how they take effect */
.control {
width: 60px;
}
.raw-percent,
.calc-percent {
width: 40px;
margin-right: 20px;
}
.no-percent {
width: 40px;
}
</style>
<!-- calculating min-content widths -->
<div class='zero container'>
<div><div class="control">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="raw-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="calc-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="no-percent">ppp pp</div></div>
</div>
<!-- calculating max-content widths -->
<div class='infinite container'>
<div><div class="control">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="raw-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="calc-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="no-percent">p p</div></div>
</div>
<!DOCTYPE html>
<title>Percentages of max-width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
<style>
/* establish context */
.container {
clear: both;
padding: 10px;
color: blue;
font: 20px/1 Ahem;
}
.zero {
width: 0;
}
.infinite {
width: 400px; /* close enough */
}
/* visualize size contribution */
.container > div {
float: left; /* shrinkwrap */
border: solid orange 20px;
border-style: none solid;
}
.container > div > div {
border-right: solid 20px aqua;
}
/* test max-width */
/* content = 100% = 80px = 4ch + border */
/* choose sizes that are smaller than content to see if how they take effect */
.raw-percent {
max-width: 50%;
}
.calc-percent {
max-width: calc(40px + 0%);
}
.no-percent {
max-width: 40px;
}
</style>
<!-- calculating min-content widths -->
<div class='zero container'>
<div><div class="control">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="raw-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="calc-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="no-percent">ppp pp</div></div>
</div>
<!-- calculating max-content widths -->
<div class='infinite container'>
<div><div class="control">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="raw-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="calc-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="no-percent">p p</div></div>
</div>
<!DOCTYPE html>
<title>Percentages of width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
<link rel="match" href="intrinsic-percent-non-replaced-002-ref.html">
<style>
/* establish context */
.container {
clear: both;
padding: 10px;
color: blue;
font: 20px/1 Ahem;
}
.zero {
width: 0;
}
.infinite {
width: 400px; /* close enough */
}
/* visualize size contribution */
.container > div {
float: left;
border: solid orange 20px;
border-style: none solid;
}
.container > div > div {
border-right: solid 20px aqua;
}
/* test width */
/* content = 100% = 80px = 4ch + border */
/* choose sizes that are different than content to see if how they take effect */
.raw-percent {
width: 50%;
}
.calc-percent {
width: calc(40px + 0%);
}
.no-percent {
width: 40px;
}
</style>
<!-- calculating min-content widths -->
<div class='zero container'>
<div><div class="control">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="raw-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="calc-percent">ppp pp</div></div>
</div>
<div class='zero container'>
<div><div class="no-percent">ppp pp</div></div>
</div>
<!-- calculating max-content widths -->
<div class='infinite container'>
<div><div class="control">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="raw-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="calc-percent">p p</div></div>
</div>
<div class='infinite container'>
<div><div class="no-percent">p p</div></div>
</div>
......@@ -31,6 +31,13 @@ function checkModification(e, funcName, args, expectedRes, before, after,
}
setClass(e, before);
var obs;
// If we have MutationObservers available, do some checks to make
// sure attribute sets are happening at sane times.
if (self.MutationObserver) {
obs = new MutationObserver(() => {});
obs.observe(e, { attributes: true });
}
if (shouldThrow) {
assert_throws(expectedException, function() {
var list = e.classList;
......@@ -40,6 +47,21 @@ function checkModification(e, funcName, args, expectedRes, before, after,
var list = e.classList;
var res = list[funcName].apply(list, args);
}
if (obs) {
var mutationRecords = obs.takeRecords();
obs.disconnect();
if (shouldThrow) {
assert_equals(mutationRecords.length, 0,
"There should have been no mutation");
} else if (funcName == "replace") {
assert_equals(mutationRecords.length == 1,
expectedRes,
"Should have a mutation exactly when replace() returns true");
} else {
// For other functions, would need to check when exactly
// mutations are supposed to happen.
}
}
if (!shouldThrow) {
assert_equals(res, expectedRes, "wrong return value");
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment