| CSS tests require a specific naming convention. This is also a good, |
| but not mandatory, style to use for other tests. |
| |
| ## File Name |
| |
| The file name format is ```test-topic-###.ext``` where `test-topic` |
| somewhat describes the test, `###` is a zero-filled number used to |
| keep the file names unique, and `ext` is typically either |
| `html` or `xht`. |
| |
| Test filenames must also be globally unique. There cannot be multiple |
| tests with the same filename, even if they are in different parent |
| directories. For example, having both |
| `/css-values-3/foo-001.html` and `/css-variables-1/foo-001.html` |
| would not be allowed. This restriction is in place because some tools |
| that use the CSS tests dump all of the test files into a single |
| directory, which would cause all but one of the tests with the same |
| filename to be clobbered and accidentally skipped. |
| |
| ### test-topic |
| |
| `test-topic` is a short identifier that describes the test. The |
| `test-topic` should avoid conjunctions, articles, and prepositions. |
| It is a file name, not an English phrase: it should be as concise |
| as possible. |
| |
| Examples: |
| ``` |
| margin-collapsing-###.ext |
| border-solid-###.ext |
| float-clear-###.ext |
| ``` |
| |
| ### `###` |
| |
| `###` is a zero-filled number used to keep the file names unique when |
| files have the same test-topic name. |
| |
| Note: The number format is limited to 999 cases. If you go over this |
| number it is recommended that you reevaluate your test-topic name. |
| |
| For example, in the case of margin-collapsing there are multiple |
| cases so each case could have the same test-topic but different |
| numbers: |
| |
| ``` |
| margin-collapsing-001.xht |
| margin-collapsing-002.xht |
| margin-collapsing-003.xht |
| ``` |
| |
| There may also be a letter affixed after the number, which can be |
| used to indicate variants of a test. |
| |
| For example, ```float-wrap-001l.xht``` and ```float-wrap-001r.xht``` |
| might be left and right variants of a float test. |
| |
| If tests using both the unsuffixed number and the suffixed number |
| exist, the suffixed tests must be subsets of the unsuffixed test. |
| |
| For example, if ```bidi-004``` and ```bidi-004a``` both exist, |
| ```bidi-004a``` must be a subset of ```bidi-004```. |
| |
| If the unsuffixed test is strictly the union of the suffixed tests, |
| i.e. covers all aspects of the suffixed tests (such that a user agent |
| passing the unsuffixed test will, by design, pass all the suffixed |
| tests), then the unsuffixed test should be marked with the combo flag. |
| |
| If ```bidi-004a``` and ```bidi-004b``` cover all aspects of ```bidi- |
| 004``` (except their interaction), then bidi-004 should be given the |
| combo flag. |
| |
| ### ext |
| |
| `ext` is the file extension or format of the file. |
| For XHTML test files, it should be `xht`. |
| For HTML (non-XML) test files, it should be `html`. |