Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /css/css-values/random-item-invalid.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
<script>
// random-item() is an arbitrary substitution function, so only its argument grammar is
// validated at parse time:
// <random-item-args> = random-item( <declaration-value>, [ <declaration-value>? ]# )
// The first argument (<random-key>) is required, and a comma-separated item list must follow.
test_invalid_value('font-family', 'random-item()');
test_invalid_value('font-family', 'random-item( )');
test_invalid_value('font-family', 'random-item(auto)');
test_invalid_value('font-family', 'random-item(, serif, sans-serif)');
// Forbidden tokens in <declaration-value>.
test_invalid_value('font-family', 'random-item(auto, !)');
test_invalid_value('font-family', 'random-item(auto, ;)');
test_invalid_value('font-family', 'random-item(auto, })');
test_invalid_value('font-family', 'random-item(auto, ])');
// Badly closed / unbalanced curly braces.
test_invalid_value('font-family', 'random-item(auto, {serif)');
test_invalid_value('font-family', 'random-item(auto, serif})');
test_invalid_value('font-family', 'random-item(auto, {Times, serif)');
test_invalid_value('font-family', 'random-item({auto, serif, sans-serif)');
// A non-{}-wrapped item may not be mixed with a {}-wrapped block.
test_invalid_value('font-family', 'random-item(auto, {Times, serif} extra)');
test_invalid_value('font-family', 'random-item(auto, extra {Times, serif})');
</script>