test: add support for external executable dependencies
authorDmitry Kurochkin <dmitry.kurochkin@gmail.com>
Sun, 27 Nov 2011 18:36:13 +0000 (22:36 +0400)
committerDavid Bremner <bremner@debian.org>
Sun, 27 Nov 2011 19:31:17 +0000 (11:31 -0800)
commit66158d5e409a6a162088f5100675d5c3d7ed9948
treee9b5eda6181f12b4a9c6b83d917efdde76a57751
parent5aeca8182f02ca3800894ed39a6677c438ab131c
test: add support for external executable dependencies

There is existing support for general prerequisites in the test suite.
But it is not very convenient to use: every test case has to keep
track for it's dependencies and they have to be explicitly listed.

The patch aims to add better support for a particular type of external
dependencies: external executables.  The main idea is to replace
missing external binaries with shell functions that have the same
name.  These functions always fail and keep track of missing
dependencies for a subtest.  The result reporting functions later can
check that an external binaries are missing and correctly report SKIP
result instead of FAIL.  The primary benefit is that the test cases do
not need to declare their dependencies or be changed in any way.
test/test-lib.sh