Update web-platform-tests to revision 0f31ab1b094596062154092307bb9ff8e6122533

This commit is contained in:
WPT Sync Bot 2019-01-15 20:35:30 -05:00
parent 96ad6710b1
commit 372e03fe64
32 changed files with 992 additions and 222 deletions

View file

@ -0,0 +1,42 @@
<!DOCTYPE html>
<script src='/resources/testharness.js'></script>
<script src='/resources/testharnessreport.js'></script>
<script src='/resources/check-layout-th.js'></script>
<link rel="author" title="David Grogan" href="dgrogan@chromium.org">
<link rel="help" href="https://www.w3.org/TR/css-flexbox-1/#valdef-flex-basis-auto">
<meta name="flags" content="" />
<meta name="assert" content="flex-basis:auto on orthogonal item in horizontal column flexbox is calculated correctly" />
<style>
x-word-h {
display: inline-block;
height: 10px;
width: 20px;
background: blue;
}
x-word-v {
display: inline-block;
height: 20px;
width: 10px;
background: blue;
}
* {
/* This is for easier manual calculations, not necessary to demonstrate behavior. */
line-height: 0;
}
</style>
<div id=flexbox style="width:150px; background:green; height:400px; display:flex; flex-direction:column">
<div style="writing-mode: vertical-rl;background:orange; flex:1 1 auto" data-expected-height=225>
<x-word-v></x-word-v><x-word-v></x-word-v><x-word-v></x-word-v>
</div>
<div style="background:lightblue; flex: 1 1 auto">
<x-word-h></x-word-h><x-word-h></x-word-h><x-word-h></x-word-h>
</div>
</div>
<script>
checkLayout('#flexbox');
</script>

View file

@ -2,48 +2,36 @@
<link rel="help" href="https://drafts.csswg.org/mediaqueries-5/#prefers-color-scheme" />
<script type="text/javascript" src="/resources/testharness.js"></script>
<script type="text/javascript" src="/resources/testharnessreport.js"></script>
<style id="testStyle"> </style>
<script type="text/javascript" src="resources/matchmedia-utils.js"></script>
<script>
var sheet = testStyle.sheet;
query_should_be_css_parseable("(prefers-color-scheme)");
query_should_be_css_parseable("(prefers-color-scheme: no-preference)");
query_should_be_css_parseable("(prefers-color-scheme: light)");
query_should_be_css_parseable("(prefers-color-scheme: dark)");
function query_is_parseable(query) {
try {
sheet.insertRule("@media " + query + "{}", 0);
return sheet.cssRules.length == 1 &&
sheet.cssRules[0].media.mediaText != "not all";
} finally {
while (sheet.cssRules.length)
sheet.deleteRule(0);
}
}
query_should_not_be_css_parseable("(prefers-color-scheme: 0)");
query_should_not_be_css_parseable("(prefers-color-scheme: none)");
query_should_not_be_css_parseable("(prefers-color-scheme: 10px)");
query_should_not_be_css_parseable("(prefers-color-scheme: dark 0)");
query_should_not_be_css_parseable("(prefers-color-scheme: dark light)");
query_should_not_be_css_parseable("(prefers-color-scheme: light/dark)");
function query_should_be_parseable(query) {
test(() => {
assert_true(query_is_parseable(query));
}, "Should be parseable: '" + query + "'");
}
query_should_be_js_parseable("(prefers-color-scheme)");
query_should_be_js_parseable("(prefers-color-scheme: no-preference)");
query_should_be_js_parseable("(prefers-color-scheme: light)");
query_should_be_js_parseable("(prefers-color-scheme: dark)");
function query_should_not_be_parseable(query) {
test(() => {
assert_false(query_is_parseable(query));
}, "Should not be parseable: '" + query + "'");
}
query_should_not_be_js_parseable("(prefers-color-scheme: 0)");
query_should_not_be_js_parseable("(prefers-color-scheme: none)");
query_should_not_be_js_parseable("(prefers-color-scheme: 10px)");
query_should_not_be_js_parseable("(prefers-color-scheme: dark 0)");
query_should_not_be_js_parseable("(prefers-color-scheme: dark light)");
query_should_not_be_js_parseable("(prefers-color-scheme: light/dark)");
query_should_be_parseable("(prefers-color-scheme)");
query_should_be_parseable("(prefers-color-scheme: no-preference)");
query_should_be_parseable("(prefers-color-scheme: light)");
query_should_be_parseable("(prefers-color-scheme: dark)");
query_should_not_be_parseable("(prefers-color-scheme: 0)");
query_should_not_be_parseable("(prefers-color-scheme: none)");
query_should_not_be_parseable("(prefers-color-scheme: 10px)");
query_should_not_be_parseable("(prefers-color-scheme: dark 0)");
query_should_not_be_parseable("(prefers-color-scheme: dark light)");
query_should_not_be_parseable("(prefers-color-scheme: light/dark)");
test(() => {
let booleanContext = window.matchMedia("(prefers-color-scheme)");
let noPreference = window.matchMedia("(prefers-color-scheme: no-preference)");
assert_equals(booleanContext.matches, !noPreference.matches);
}, "Check that no-preference evaluates to false in the boolean context");
test(() => {
let booleanContext = window.matchMedia("(prefers-color-scheme)");
let noPreference = window.matchMedia("(prefers-color-scheme: no-preference)");
assert_equals(booleanContext.matches, !noPreference.matches);
}, "Check that no-preference evaluates to false in the boolean context");
</script>

View file

@ -0,0 +1,38 @@
<!DOCTYPE html>
<link rel="help" href="https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-motion" />
<script type="text/javascript" src="/resources/testharness.js"></script>
<script type="text/javascript" src="/resources/testharnessreport.js"></script>
<script type="text/javascript" src="resources/matchmedia-utils.js"></script>
<script>
query_should_be_css_parseable("(prefers-reduced-motion)");
query_should_be_css_parseable("(prefers-reduced-motion: no-preference)");
query_should_be_css_parseable("(prefers-reduced-motion: reduce)");
query_should_not_be_css_parseable("(prefers-reduced-motion: 0)");
query_should_not_be_css_parseable("(prefers-reduced-motion: none)");
query_should_not_be_css_parseable("(prefers-reduced-motion: 10px)");
query_should_not_be_css_parseable("(prefers-reduced-motion: no-preference reduce)");
query_should_not_be_css_parseable("(prefers-reduced-motion: reduced)");
query_should_not_be_css_parseable("(prefers-reduced-motion: no-preference/reduce)");
query_should_be_js_parseable("(prefers-reduced-motion)");
query_should_be_js_parseable("(prefers-reduced-motion: no-preference)");
query_should_be_js_parseable("(prefers-reduced-motion: reduce)");
query_should_not_be_js_parseable("(prefers-reduced-motion: 0)");
query_should_not_be_js_parseable("(prefers-reduced-motion: none)");
query_should_not_be_js_parseable("(prefers-reduced-motion: 10px)");
query_should_not_be_js_parseable("(prefers-reduced-motion: no-preference reduce)");
query_should_not_be_js_parseable("(prefers-reduced-motion: reduced)");
query_should_not_be_js_parseable("(prefers-reduced-motion: no-preference/reduce)");
test(() => {
// What this is saying is that 'no-preference' is not the default, so
// irregardless of the current OS settings, (prefers-reduced-motion).matches
// should not be equivalent to (prefers-reduced-motion: no-preference).matches.
let booleanContext = window.matchMedia("(prefers-reduced-motion)");
let noPreference = window.matchMedia("(prefers-reduced-motion: no-preference)");
assert_equals(booleanContext.matches, !noPreference.matches);
}, "Check that no-preference evaluates to false in the boolean context");
</script>

View file

@ -0,0 +1,49 @@
'use strict';
function query_is_css_parseable(query) {
const style = document.createElement('style');
style.type = 'text/css';
document.head.appendChild(style);
const sheet = style.sheet;
try {
sheet.insertRule("@media " + query + "{}", 0);
return sheet.cssRules.length == 1 &&
sheet.cssRules[0].media.mediaText != "not all";
} finally {
while (sheet.cssRules.length)
sheet.deleteRule(0);
style.remove();
}
}
function query_should_be_css_parseable(query) {
test(() => {
assert_true(query_is_css_parseable(query));
}, "Should be parseable in a CSS stylesheet: '" + query + "'");
}
function query_should_not_be_css_parseable(query) {
test(() => {
assert_false(query_is_css_parseable(query));
}, "Should not be parseable in a CSS stylesheet: '" + query + "'");
}
function query_is_js_parseable(query) {
// We cannot rely on whether a given feature is on or off, so only check the
// 'media' member of the result.
const match = window.matchMedia(query);
return match.media == query;
}
function query_should_be_js_parseable(query) {
test(() => {
assert_true(query_is_js_parseable(query));
}, "Should be parseable in JS: '" + query + "'");
}
function query_should_not_be_js_parseable(query) {
test(() => {
assert_false(query_is_js_parseable(query));
}, "Should not be parseable in JS: '" + query + "'");
}