diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /testing/web-platform/tests/css/css-anchor-position/at-fallback-position-parse.html | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/css/css-anchor-position/at-fallback-position-parse.html')
-rw-r--r-- | testing/web-platform/tests/css/css-anchor-position/at-fallback-position-parse.html | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-anchor-position/at-fallback-position-parse.html b/testing/web-platform/tests/css/css-anchor-position/at-fallback-position-parse.html new file mode 100644 index 0000000000..942d9a2984 --- /dev/null +++ b/testing/web-platform/tests/css/css-anchor-position/at-fallback-position-parse.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<title>Tests parsing of @fallback-position rule</title> +<link rel="help" href="https://drafts.csswg.org/css-anchor-1/#fallback-rule"> +<link rel="author" href="mailto:xiaochengh@chromium.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/support/parsing-testcommon.js"></script> +<script> +test_valid_rule('@position-fallback --foo {\n}'); +test_valid_rule(`@position-fallback --foo { + @try { } +}`); + +// @position-fallback needs exactly one <dashed-ident> as its name +test_invalid_rule('@position-fallback {\n}'); +test_invalid_rule('@position-fallback foo {\n}'); +test_invalid_rule('@position-fallback --foo --bar {\n}'); +test_invalid_rule('@position-fallback --foo, --bar {\n}'); + +// @position-fallback accepts only @try blocks as its child rules. Other +// contents should be ignored. +test_valid_rule('@position-fallback --foo { top: 1px; }', + '@position-fallback --foo {\n}'); +test_valid_rule('@position-fallback --foo { --bar: 1px; }', + '@position-fallback --foo {\n}'); +test_valid_rule('@position-fallback --foo { @keyframes bar {} }', + '@position-fallback --foo {\n}'); +test_valid_rule('@position-fallback --foo { @font-face {} }', + '@position-fallback --foo {\n}'); +test_valid_rule('@position-fallback --foo { arbitrary garbage }', + '@position-fallback --foo {\n}'); + +// @try accepts only regular style declarations. Other contents should be +// ignored. +test_valid_rule('@position-fallback --foo { @try { @keyframes bar { } } }', + '@position-fallback --foo {\n @try { }\n}'); +test_valid_rule('@position-fallback --foo { @try { @font-face { } } }', + '@position-fallback --foo {\n @try { }\n}'); +</script> |