blob: 609b4881b4e95457e75b2fbc92ef345e15e7e2ec [file] [log] [blame]
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body id="body-elem">
<div id="child"></div>
<p id="description"></p>
<script>
description("Testing the computed style of touch-action:");
let styleElement = document.createElement("style");
document.head.appendChild(styleElement);
let stylesheet = styleElement.sheet;
debug("Testing touch-action: manipulation;");
stylesheet.insertRule("body { touch-action: manipulation; }", 0);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'manipulation'");
stylesheet.deleteRule(0);
debug("Testing touch-action: auto;");
stylesheet.insertRule("body { touch-action: auto; }", 0);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'auto'");
stylesheet.deleteRule(0);
debug("Testing a bogus value");
stylesheet.insertRule("body { touch-action: typo; }", 0);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'auto'");
stylesheet.deleteRule(0);
debug("Testing all caps");
stylesheet.insertRule("body { touch-action: MANIPULATION; }", 0);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'manipulation'");
stylesheet.deleteRule(0);
debug("Testing weird casing");
stylesheet.insertRule("body { touch-action: aUtO; }", 0);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'auto'");
stylesheet.deleteRule(0);
debug("Testing !important (auto)");
stylesheet.insertRule("body { touch-action: auto !important; }", 0);
stylesheet.insertRule("#body-elem { touch-action: manipulation; }", 1);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'auto'");
stylesheet.deleteRule(1);
stylesheet.deleteRule(0);
debug("Testing !important (manipulation)");
stylesheet.insertRule("body { touch-action: manipulation !important; }", 0);
stylesheet.insertRule("#body-elem { touch-action: auto; }", 1);
shouldBe("window.getComputedStyle(document.body).getPropertyValue('touch-action')", "'manipulation'");
stylesheet.deleteRule(1);
stylesheet.deleteRule(0);
debug("Testing non-inheritance");
stylesheet.insertRule("body { touch-action: manipulation; }", 0);
shouldBe("window.getComputedStyle(document.getElementById('child')).getPropertyValue('touch-action')", "'auto'");
stylesheet.deleteRule(0);
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>