openafs/tests
Jeff Blaine f0774acd73 Introduce TAP tests of man pages for command_subcommand
Introduces the first batch of man page testing as part of
the TAP tests.  We would like to fail, for example, when
someone has added a new command to vos but not AHEM documented
it.

For now, the tests consist of checking to ensure that for
every subcommand listed in the output of "command help"
(e.g. vos help), fail the test if there is not a man page
for those (e.g. vos_delentry.1 etc).

Copy any of the -man-t tests and edit to make a new one

All tests make use of a simple new Perl library stored
in tests-lib/perl5 (a new area, not just named 'lib'
because I didn't want it to be confused with a s test
for a 'lib' in the src).

Change-Id: I1e07adafe718c4549f1855c5e5b0d10dd9ab5f00
Reviewed-on: http://gerrit.openafs.org/4846
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
2011-06-28 12:52:28 -07:00
..
auth tests: Move code to add new DES keys to common 2011-06-07 07:50:30 -07:00
bozo Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
bucoord Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
cmd cmd: Add support for disabling specific abbrevs 2011-06-07 07:44:14 -07:00
common tests: Use a real IP address for the test cell 2011-06-07 07:51:15 -07:00
kauth Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
ptserver Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
rpctestlib Build system: Move install definitions to include 2011-06-05 06:50:52 -07:00
tap Resync test harness with C TAP Harness 1.7 2011-04-28 20:24:34 -07:00
tests-lib/perl5 Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
util opr: Add new queue implementation 2010-12-13 11:32:51 -08:00
venus Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
volser Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00
.gitignore Import C TAP Harness 1.2 as a testing harness 2010-05-29 21:48:19 -07:00
HOWTO Resync test harness with C TAP Harness 1.7 2011-04-28 20:24:34 -07:00
Makefile.in tests: Move common code to its own directory 2011-06-07 07:50:20 -07:00
README Add additional documentation for the new test suite 2010-06-09 23:18:09 -07:00
runtests.c Resync test harness with C TAP Harness 1.7 2011-04-28 20:24:34 -07:00
TESTS Introduce TAP tests of man pages for command_subcommand 2011-06-28 12:52:28 -07:00

This directory contains a test harness and the beginnings of what is
intended to become the primary OpenAFS test suite.  The tests in this
directory are run when "make check" is run at the top level of the OpenAFS
tree.

runtests.c is the test harness, and TESTS is the list of tests that it
will run.  If you add a new test, add it to TESTS as well.  All tests must
be executables (possibly shell scripts or Perl scripts) that end in either
".t" or "-t", but should be listed in TESTS without that suffix.

Tests should be organized into subdirectories, and where it makes sense to
do so, those subdirectories should match the subdirectory names under src
in the AFS source tree.  In other words, tests for src/util/* should go in
a directory named util, tests for the libkopenafs library should go in a
directory named kopenafs, and so forth.  To integrate with the build
system, each subdirectory will need to have its own Makefile.in and be
added to the list of generated Makefiles in configure.in at the top
level.   The Makefile.in in this directory will also need to be modified
to recurse into any new directories.  See util/Makefile.in for an example
of how to write a Makefile.in for a new test directory.

runtests.c, tap/basic.c, tap/basic.h, tap/libtap.sh, and HOWTO come from
the C TAP Harness distribution at:

    http://www.eyrie.org/~eagle/software/c-tap-harness/

but feel free to propose modifications directly through OpenAFS Gerrit.
Russ Allbery will take care of merging modifications upstream.  However,
OpenAFS-specific modifications should not be made to those files.  To add
additional OpenAFS-specific code to the TAP library, add additional *.c
and *.h (or *.sh) files to the tap directory rather than modifying
basic.c, basic.h, or libtap.sh.