forked from mirrors/gecko-dev
Automatic update from web-platform-tests Strip comment tokens when parsing pending substitutions. CSSPropertyParser::ParseValue() isn't ready for comment tokens, which we now preserve since we need them for the original text. Strip them out right before parsing; as the comment says, this probably isn't optimal, but it shouldn't be too bad either. Fixed: 1430953 Fixed: 1431444 Change-Id: I3f1039ddd4424b1d0a72e42cc2ba4fa1a243ca0c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4414717 Reviewed-by: Rune Lillesveen <futhark@chromium.org> Commit-Queue: Steinar H Gunderson <sesse@chromium.org> Cr-Commit-Position: refs/heads/main@{#1128618} -- wpt-commits: ffc28f3efccc3281f289c7f6d825f2a64569909b wpt-pr: 39472
57 lines
2.1 KiB
HTML
57 lines
2.1 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>test shadow property variable substitution</title>
|
|
|
|
<meta rel="author" title="Kevin Babbitt">
|
|
<meta rel="author" title="Greg Whitworth">
|
|
<link rel="author" title="Microsoft Corporation" href="http://microsoft.com" />
|
|
<link rel="help" href="http://www.w3.org/TR/css-variables-1/#defining-variables">
|
|
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<style>
|
|
.testArea {
|
|
width: 100px;
|
|
height: 100px;
|
|
display: inline-block;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="log"></div>
|
|
<div class="testArea" id="box-shadow" style="--foo: rgb(0, 128, 0); box-shadow: 1px 1px 1px 1px var(--foo);">box-shadow</div>
|
|
<div class="testArea" id="box-shadow-with-comment" style="--foo: 1px /* hello */ rgb(0, 128, 0); box-shadow: 1px 1px 1px var(--foo);">box-shadow</div>
|
|
<div class="testArea" id="text-shadow" style="--foo: rgb(0, 128, 0); text-shadow: 1px 1px 1px var(--foo);">text-shadow</div>
|
|
<script type="text/javascript">
|
|
"use strict";
|
|
|
|
let templates = [
|
|
{
|
|
testName:"box-shadow",
|
|
property:"box-shadow",
|
|
expectedValue:"rgb(0, 128, 0) 1px 1px 1px 1px",
|
|
},
|
|
{
|
|
testName:"box-shadow-with-comment",
|
|
property:"box-shadow",
|
|
expectedValue:"rgb(0, 128, 0) 1px 1px 1px 1px",
|
|
},
|
|
{
|
|
testName:"text-shadow",
|
|
property:"text-shadow",
|
|
expectedValue:"rgb(0, 128, 0) 1px 1px 1px",
|
|
},
|
|
];
|
|
|
|
templates.forEach(function (template) {
|
|
test( function () {
|
|
let target = document.getElementById(template.testName);
|
|
let computedStyle = window.getComputedStyle(target);
|
|
let value = computedStyle.getPropertyValue(template.property);
|
|
assert_equals(value, template.expectedValue, "Expected Value should match actual value");
|
|
}, template.testName);
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|