forked from mirrors/gecko-dev
Automatic update from web-platform-tests Implement progress() function As introduced in https://drafts.csswg.org/css-values-5/#progress The progress() functional notation returns a <number> value representing the position of one calculation (the progress value) between two other calculations. This progress function naturally mixes with existing math expression node code, only requiring some special parsing. Note: now it's an editor's draft with a very strong chances to be accepted. Bug: 1503730 Change-Id: I531ffa7852d16555704b1790b0a05d6b6558fa77 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5045491 Reviewed-by: Dominik Röttsches <drott@chromium.org> Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org> Commit-Queue: Daniil Sakhapov <sakhapov@chromium.org> Cr-Commit-Position: refs/heads/main@{#1228380} -- wpt-commits: ef56b263783f156edf26f3f8c79753e53dfc07cd wpt-pr: 43261
56 lines
1.5 KiB
HTML
56 lines
1.5 KiB
HTML
<!DOCTYPE html>
|
|
<link rel="help" href="https://drafts.csswg.org/css-values-5/#progress">
|
|
<link rel="author" title="sakhapov@chromuim.org">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="../support/serialize-testcommon.js"></script>
|
|
<div id=target></div>
|
|
<script>
|
|
function test_serialization(t,s,c) {
|
|
test_specified_serialization('opacity', t, s);
|
|
test_specified_serialization('transform', `scale(${t})`, `scale(${s})`);
|
|
test_computed_serialization('opacity', t, c);
|
|
test_computed_serialization('transform', `scale(${t})`, `matrix(${c}, 0, 0, ${c}, 0, 0)`);
|
|
}
|
|
|
|
test_serialization(
|
|
'progress(100px from 0px to 100px)',
|
|
'calc(1)',
|
|
'1',
|
|
);
|
|
test_serialization(
|
|
'progress(10em from 0px to 10em)',
|
|
'calc(progress(10em from 0px to 10em))',
|
|
'1',
|
|
);
|
|
test_serialization(
|
|
'progress(10em from 0px to 10rem)',
|
|
'calc(progress(10em from 0px to 10rem))',
|
|
'1',
|
|
);
|
|
test_serialization(
|
|
'progress(100px from (10px - 10px) to 100px)',
|
|
'calc(1)',
|
|
'1',
|
|
);
|
|
test_serialization(
|
|
'progress(1% from (10% - 10%) to 100%)',
|
|
'calc(0.01)',
|
|
'0.01',
|
|
);
|
|
test_serialization(
|
|
'calc(0.5 * progress(100px from 0px to 100px))',
|
|
'calc(0.5)',
|
|
'0.5'
|
|
);
|
|
test_specified_serialization(
|
|
'width',
|
|
'calc(50px * progress(100px from 0px to 100px))',
|
|
'calc(50px)'
|
|
);
|
|
test_computed_serialization(
|
|
'width',
|
|
'calc(1px * progress(abs(10%) from (10% - 10%) to 100% / 10))',
|
|
'1px',
|
|
);
|
|
</script>
|