blob: 1ca76500cc5f05dda26e095d80eb2ee96ab0ad46 [file] [log] [blame]
<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<style>
#testAuto {
color-scheme: auto;
}
#testOnly {
color-scheme: only;
}
#testLight {
color-scheme: light;
}
#testDark {
color-scheme: dark;
}
#testLightDark {
color-scheme: light dark;
}
#testDarkLight {
color-scheme: dark light;
}
#testLightDarkOnly {
color-scheme: light dark only;
}
#testOnlyDark {
color-scheme: only dark;
}
#testLightOnlyDark {
color-scheme: light only dark;
}
#testLightUnknown {
color-scheme: light foo;
}
#testUnknownDarkOnly {
color-scheme: bar dark only;
}
#testLightUnknownOnly {
color-scheme: light baz only;
}
#testInvalidLightAuto {
color-scheme: light auto;
}
#testInvalidAutoDark {
color-scheme: auto dark;
}
#testInvalidLightDarkLight {
color-scheme: light dark light;
}
#testInvalidNumber {
color-scheme: 42;
}
#testInvalidString {
color-scheme: "foo";
}
#testInvalidLightString {
color-scheme: light "foo";
}
</style>
<div id="testAuto"></div>
<div id="testOnly"></div>
<div id="testLight"></div>
<div id="testDark"></div>
<div id="testLightDark"></div>
<div id="testDarkLight"></div>
<div id="testLightDarkOnly"></div>
<div id="testOnlyDark"></div>
<div id="testLightOnlyDark"></div>
<div id="testLightUnknown"></div>
<div id="testUnknownDarkOnly"></div>
<div id="testInvalidLightAuto"></div>
<div id="testInvalidAutoDark"></div>
<div id="testInvalidLightDarkLight"></div>
<div id="testInvalidNumber"></div>
<div id="testInvalidString"></div>
<div id="testInvalidLightString"></div>
<script>
function test_prop(id, property, expected) {
assert_equals(window.getComputedStyle(document.getElementById(id)).getPropertyValue(property), expected);
}
test(function() {
test_prop("testAuto", "color-scheme", "auto");
test_prop("testOnly", "color-scheme", "light only");
test_prop("testLight", "color-scheme", "light");
test_prop("testDark", "color-scheme", "dark");
test_prop("testLightDark", "color-scheme", "light dark");
test_prop("testDarkLight", "color-scheme", "light dark");
test_prop("testLightDarkOnly", "color-scheme", "light dark only");
test_prop("testOnlyDark", "color-scheme", "dark only");
test_prop("testLightOnlyDark", "color-scheme", "light dark only");
test_prop("testLightUnknown", "color-scheme", "light");
test_prop("testUnknownDarkOnly", "color-scheme", "dark only");
}, "Test valid values");
test(function() {
test_prop("testInvalidLightAuto", "color-scheme", "auto");
test_prop("testInvalidAutoDark", "color-scheme", "auto");
test_prop("testInvalidLightDarkLight", "color-scheme", "auto");
test_prop("testInvalidNumber", "color-scheme", "auto");
test_prop("testInvalidString", "color-scheme", "auto");
test_prop("testInvalidLightString", "color-scheme", "auto");
}, "Test invalid values");
</script>