| <!DOCTYPE html> |
| <title>text-box parses valid values according to its grammar</title> |
| <link rel="help" href="https://drafts.csswg.org/css-inline-3/#propdef-text-box"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/css/support/parsing-testcommon.js"></script> |
| |
| <script> |
| // initial values |
| test_valid_value('text-box', 'normal'); |
| test_valid_value('text-box', 'none', 'normal'); |
| test_valid_value('text-box', 'none auto', 'normal'); |
| test_valid_value('text-box', 'auto none', 'normal'); |
| test_valid_value('text-box', 'auto', 'trim-both'); |
| |
| // `<text-box-trim>`: `none | trim-start | trim-end | trim-both` |
| test_valid_value('text-box', 'trim-start'); |
| test_valid_value('text-box', 'trim-end'); |
| test_valid_value('text-box', 'trim-both'); |
| |
| // `<text-edge>` |
| test_valid_value('text-box', 'text'); |
| test_valid_value('text-box', 'ideographic'); |
| test_valid_value('text-box', 'cap alphabetic'); |
| test_valid_value('text-box', 'text alphabetic'); |
| |
| // Mix initial and non-initial values |
| test_valid_value('text-box', 'trim-start auto', 'trim-start'); |
| test_valid_value('text-box', 'trim-both auto', 'trim-both'); |
| test_valid_value('text-box', 'auto trim-both', 'trim-both'); |
| test_valid_value('text-box', 'none text', 'none text'); |
| test_valid_value('text-box', 'text text none', 'none text'); |
| test_valid_value('text-box', 'none cap text'); |
| test_valid_value('text-box', 'cap alphabetic none', 'none cap alphabetic'); |
| test_valid_value('text-box', 'ideographic none', 'none ideographic'); |
| |
| // Both `<text-box-trim>` and `<text-box-edge>` |
| test_valid_value('text-box', 'trim-both text', 'text'); |
| test_valid_value('text-box', 'trim-start text'); |
| test_valid_value('text-box', 'text text trim-both', 'text'); |
| test_valid_value('text-box', 'text text trim-end', 'trim-end text'); |
| test_valid_value('text-box', 'cap alphabetic trim-start', 'trim-start cap alphabetic'); |
| test_valid_value('text-box', 'trim-start cap alphabetic'); |
| test_valid_value('text-box', 'trim-both cap alphabetic', 'cap alphabetic'); |
| test_valid_value('text-box', 'trim-start ideographic ideographic', 'trim-start ideographic'); |
| test_valid_value('text-box', 'trim-start ideographic-ink ideographic-ink', 'trim-start ideographic-ink'); |
| test_valid_value('text-box', 'trim-end cap text'); |
| test_valid_value('text-box', 'trim-end ex text'); |
| test_valid_value('text-box', 'cap text trim-end', 'trim-end cap text'); |
| test_valid_value('text-box', 'ex text trim-end', 'trim-end ex text'); |
| test_valid_value('text-box', 'cap text trim-both', 'cap text'); |
| test_valid_value('text-box', 'ex text trim-both', 'ex text'); |
| </script> |