This test suite is intended to perform tests on a higher level than the other regression test suites. It can run arbitrary executables which can perform any test, not limited to testing the nft syntax or netlink code (which is what the regression tests do). To run the test suite (as root): $ cd tests/shell # ./run-tests.sh Test files are executable files matching the pattern <>, where N is the expected return code of the executable. Since they are located with `find', test files can be put in any subdirectory. You can turn on a verbose execution by calling: # ./run-tests.sh -v And generate missing dump files with: # ./run-tests.sh -g Before each test file invocation, `nft flush ruleset' will be called. Also, test file process environment will include the variable $NFT which contains the nft command being tested. You can pass an arbitrary $NFT value as well: # NFT=/usr/local/sbin/nft ./run-tests.sh By default, the tests are run with the nft binary at '../../src/nft'