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
44 lines
1.8 KiB
HTML
44 lines
1.8 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/parsing-testcommon.js"></script>
|
|
<script>
|
|
function test_invalid_number(value) {
|
|
test_invalid_value('opacity', value);
|
|
}
|
|
function test_invalid_length(value) {
|
|
// 'letter-spacing' accepts <length> only, not <percentage> or any mixes.
|
|
test_invalid_value('letter-spacing', value);
|
|
}
|
|
|
|
// Syntax checking
|
|
test_invalid_number('progress()');
|
|
test_invalid_number('progress( )');
|
|
test_invalid_number('progress(,)');
|
|
test_invalid_number('progress(1 from )');
|
|
test_invalid_number('progress(1)');
|
|
test_invalid_number('progress(50% to 0)');
|
|
test_invalid_number('progress(0 from 1 to)');
|
|
test_invalid_number('progress(from to)');
|
|
test_invalid_number('progress(from 1 to 0)');
|
|
test_invalid_number('progress(from 1 to 0 1)');
|
|
test_invalid_number('progress(from 1 0)');
|
|
test_invalid_number('progress(0 from to 0)');
|
|
test_invalid_number('progress(to to to to to)');
|
|
test_invalid_number('progress(0, from, 10, to 200)');
|
|
test_invalid_number('progress(0, from, 10, to, 200)');
|
|
test_invalid_number('progress(0, from 10, to 200)');
|
|
test_invalid_number('progress(0, 10, 200)');
|
|
|
|
// General tests
|
|
test_invalid_number('progress(5% from 0 to 8');
|
|
test_invalid_number('progress(5% from 0deg to 8deg');
|
|
test_invalid_number('progress(5 from 0deg to 8deg');
|
|
test_invalid_number('progress(5 from 0% to 8deg');
|
|
test_invalid_number('progress(5 from 0% to sign(10px)');
|
|
test_invalid_number('progress(5% from 0px to 10px');
|
|
test_invalid_length('calc(1px * progress(10deg from 0 to 10))');
|
|
test_invalid_length('calc(1px * progress(10 from 0px to 10))');
|
|
</script>
|