xref: /freebsd/contrib/one-true-awk/testdir/README.TESTS (revision d4eeb02986980bf33dd56c41ceb9fc5f180c0d47)
1The archive of test files contains
2
3- A shell file called REGRESS that controls the testing process.
4
5- Several shell files called Compare* that control sub-parts
6of the testing.
7
8- About 160 small tests called t.* that constitute a random
9sampling of awk constructions collected over the years.
10Not organized, but they touch almost everything.
11
12- About 60 small tests called p.* that come from the first
13two chapters of The AWK Programming Language.  This is
14basic stuff -- they have to work.
15
16These two sets are intended as regression tests, to be sure
17that a new version produces the same results as a previous one.
18There are a couple of standard data files used with them,
19test.data and test.countries, but others would work too.
20
21- About 20 files called T.* that are self-contained and
22more systematic tests of specific language features.
23For example, T.clv tests command-line variable handling.
24These tests are not regressions -- they compute the right
25answer by separate means, then compare the awk output.
26A specific test for each new bug found shows up in at least
27one of these, most often T.misc.  There are about 220 tests
28total in these files.
29
30- Two of these files, T.re and T.sub, are systematic tests
31of the regular expression and substitution code.  They express
32tests in a small language, then generate awk programs that
33verify behavior.
34
35- About 20 files called tt.* that are used as timing tests;
36they use the most common awk constructions in straightforward
37ways, against a large input file constructed by Compare.tt.
38
39
40There is undoubtedly more stuff in the archive;  it's been
41collecting for years and may need pruning.  Suggestions for
42improvement, additional tests (especially systematic ones),
43and the like are all welcome.
44
45