Skip to content

Commit

Permalink
t/README: Document the predefined test prerequisites
Browse files Browse the repository at this point in the history
The README for the test library suggested that you grep the
test-lib.sh for test_set_prereq to see what the preset prerequisites
were.

Remove that bit, and write a section explaining all the preset
prerequisites. Most of the text was lifted from from Junio C Hamano
and Johannes Sixt, See the "Tests in Cygwin" thread in May 2009 for
the originals:

    http://thread.gmane.org/gmane.comp.version-control.git/116729/focus=118385
    http://thread.gmane.org/gmane.comp.version-control.git/116729/focus=118434

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Ævar Arnfjörð Bjarmason authored and Junio C Hamano committed Aug 18, 2010
1 parent 71ce42c commit be53dee
Showing 1 changed file with 40 additions and 5 deletions.
45 changes: 40 additions & 5 deletions t/README
Original file line number Diff line number Diff line change
Expand Up @@ -410,11 +410,12 @@ library for your script to use.
- test_set_prereq SOME_PREREQ

Set a test prerequisite to be used later with test_have_prereq. The
test-lib will set some prerequisites for you, e.g. PERL and PYTHON
which are derived from ./GIT-BUILD-OPTIONS (grep test_set_prereq
test-lib.sh for more). Others you can set yourself and use later
with either test_have_prereq directly, or the three argument
invocation of test_expect_success and test_expect_failure.
test-lib will set some prerequisites for you, see the
"Prerequisites" section below for a full list of these.

Others you can set yourself and use later with either
test_have_prereq directly, or the three argument invocation of
test_expect_success and test_expect_failure.

- test_have_prereq SOME PREREQ

Expand Down Expand Up @@ -487,6 +488,40 @@ library for your script to use.
...
'

Prerequisites
-------------

These are the prerequisites that the test library predefines with
test_have_prereq.

See the prereq argument to the test_* functions in the "Test harness
library" section above and the "test_have_prereq" function for how to
use these, and "test_set_prereq" for how to define your own.

- PERL & PYTHON

Git wasn't compiled with NO_PERL=YesPlease or
NO_PYTHON=YesPlease. Wrap any tests that need Perl or Python in
these.

- POSIXPERM

The filesystem supports POSIX style permission bits.

- BSLASHPSPEC

Backslashes in pathspec are not directory separators. This is not
set on Windows. See 6fd1106a for details.

- EXECKEEPSPID

The process retains the same pid across exec(2). See fb9a2bea for
details.

- SYMLINKS

The filesystem we're on supports symbolic links. E.g. a FAT
filesystem doesn't support these. See 704a3143 for details.

Tips for Writing Tests
----------------------
Expand Down

0 comments on commit be53dee

Please sign in to comment.