blob: 96726584cd4dad6c2ed9beb27140ca3cb93bb023 [file] [log] [blame] [edit]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>angle custom properties interpolation with progress-*() functions</title>
<link rel="author" title="Daniil Sakhapov" href="mailto:sakhapov@chromium.org">
<link rel="help" href="https://drafts.csswg.org/css-values-5/#progress">
<meta name="assert" content="angle custom properties support interpolation with progress-*() functions.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/interpolation-testcommon.js"></script>
</head>
<style>
:root {
font-size: 10px;
}
@property --my-angle {
syntax: "<angle>";
initial-value: 0deg;
inherits: false;
}
@property --my-number {
syntax: "<number>";
initial-value: 0;
inherits: false;
}
@property --my-percentage {
syntax: "<percentage>";
initial-value: 0%;
inherits: false;
}
</style>
<body>
<script>
test_interpolation({
property: '--my-number',
from: '100',
to: 'calc(sign(20rem - 20px) * 180)',
}, [
{at: -1, expect: '20'},
{at: 0, expect: '100'},
{at: 0.125, expect: '110'},
{at: 0.875, expect: '170'},
{at: 1, expect: '180'},
{at: 2, expect: '260'}
]);
test_interpolation({
property: '--my-number',
from: 'calc(sign(20rem - 20px) * 100)',
to: 'calc(progress(10rem from 20px to 100px) * 180)',
}, [
{at: -1, expect: '20'},
{at: 0, expect: '100'},
{at: 0.125, expect: '110'},
{at: 0.875, expect: '170'},
{at: 1, expect: '180'},
{at: 2, expect: '260'}
]);
</script>
</body>
</html>