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