1CSS tests require a specific naming convention. This is also a good, 2but not mandatory, style to use for other tests. 3 4## File Name 5 6The file name format is ```test-topic-###.ext``` where `test-topic` 7somewhat describes the test, `###` is a zero-filled number used to 8keep the file names unique, and `ext` is typically either 9`html` or `xht`. 10 11Test filenames must also be globally unique. There cannot be multiple 12tests with the same filename, even if they are in different parent 13directories. For example, having both 14`/css-values-3/foo-001.html` and `/css-variables-1/foo-001.html` 15would not be allowed. This restriction is in place because some tools 16that use the CSS tests dump all of the test files into a single 17directory, which would cause all but one of the tests with the same 18filename to be clobbered and accidentally skipped. 19 20### test-topic 21 22`test-topic` is a short identifier that describes the test. The 23`test-topic` should avoid conjunctions, articles, and prepositions. 24It is a file name, not an English phrase: it should be as concise 25as possible. 26 27Examples: 28``` 29 margin-collapsing-###.ext 30 border-solid-###.ext 31 float-clear-###.ext 32``` 33 34### `###` 35 36`###` is a zero-filled number used to keep the file names unique when 37files have the same test-topic name. 38 39Note: The number format is limited to 999 cases. If you go over this 40number it is recommended that you reevaluate your test-topic name. 41 42For example, in the case of margin-collapsing there are multiple 43cases so each case could have the same test-topic but different 44numbers: 45 46``` 47 margin-collapsing-001.xht 48 margin-collapsing-002.xht 49 margin-collapsing-003.xht 50``` 51 52There may also be a letter affixed after the number, which can be 53used to indicate variants of a test. 54 55For example, ```float-wrap-001l.xht``` and ```float-wrap-001r.xht``` 56might be left and right variants of a float test. 57 58If tests using both the unsuffixed number and the suffixed number 59exist, the suffixed tests must be subsets of the unsuffixed test. 60 61For example, if ```bidi-004``` and ```bidi-004a``` both exist, 62```bidi-004a``` must be a subset of ```bidi-004```. 63 64If the unsuffixed test is strictly the union of the suffixed tests, 65i.e. covers all aspects of the suffixed tests (such that a user agent 66passing the unsuffixed test will, by design, pass all the suffixed 67tests), then the unsuffixed test should be marked with the combo flag. 68 69If ```bidi-004a``` and ```bidi-004b``` cover all aspects of ```bidi- 70004``` (except their interaction), then bidi-004 should be given the 71combo flag. 72 73### ext 74 75`ext` is the file extension or format of the file. 76For XHTML test files, it should be `xht`. 77For HTML (non-XML) test files, it should be `html`. 78