diff options
author | Nick Mathewson <nickm@torproject.org> | 2019-09-05 12:54:09 -0400 |
---|---|---|
committer | David Goulet <dgoulet@torproject.org> | 2019-09-11 09:42:19 -0400 |
commit | 7a8ea0d3c35d73e149e4f804e517cefa10e7afc7 (patch) | |
tree | 8d88c2b80093bacd759e697b8bcb619576bd8024 | |
parent | 5ffe6ec0e34fdddbc56d7699ce21c3a763f22198 (diff) | |
download | tor-7a8ea0d3c35d73e149e4f804e517cefa10e7afc7.tar.gz tor-7a8ea0d3c35d73e149e4f804e517cefa10e7afc7.zip |
integration test for --list-torrc-options
(This option tests our existing behavior, not necessarily the most
sensible behavior.)
-rw-r--r-- | src/test/include.am | 3 | ||||
-rwxr-xr-x | src/test/test_cmdline.sh | 48 |
2 files changed, 50 insertions, 1 deletions
diff --git a/src/test/include.am b/src/test/include.am index 1ec54a286f..77193d4a75 100644 --- a/src/test/include.am +++ b/src/test/include.am @@ -23,7 +23,8 @@ TESTSCRIPTS = \ src/test/test_workqueue_pipe.sh \ src/test/test_workqueue_pipe2.sh \ src/test/test_workqueue_socketpair.sh \ - src/test/test_switch_id.sh + src/test/test_switch_id.sh \ + src/test/test_cmdline.sh if USE_RUST TESTSCRIPTS += \ diff --git a/src/test/test_cmdline.sh b/src/test/test_cmdline.sh new file mode 100755 index 0000000000..cf758c3851 --- /dev/null +++ b/src/test/test_cmdline.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +umask 077 +set -e + +if [ $# -ge 1 ]; then + TOR_BINARY="${1}" + shift +else + TOR_BINARY="${TESTING_TOR_BINARY:-./src/app/tor}" +fi + +echo "TOR BINARY IS ${TOR_BINARY}" + +die() { echo "$1" >&2 ; exit 5; } + +echo "A" + +DATA_DIR=$(mktemp -d -t tor_cmdline_tests.XXXXXX) +trap 'rm -rf "$DATA_DIR"' 0 + +# 1. Test list-torrc-options. +OUT="${DATA_DIR}/output" + +echo "B" +"${TOR_BINARY}" --list-torrc-options > "$OUT" + +echo "C" + +# regular options are given. +grep -i "SocksPort" "$OUT" >/dev/null || die "Did not find SocksPort" + + +echo "D" + +# unlisted options are given, since they do not have the NOSET flag. +grep -i "__SocksPort" "$OUT" > /dev/null || die "Did not find __SocksPort" + +echo "E" + +# unsettable options are not given. +if grep -i "DisableIOCP" "$OUT" /dev/null; then + die "Found DisableIOCP" +fi +if grep -i "HiddenServiceOptions" "$OUT" /dev/null ; then + die "Found HiddenServiceOptions" +fi +echo "OK" |