diff --git a/regress/regress b/regress/regress index 548d551..13f8acb 100755 --- a/regress/regress +++ b/regress/regress @@ -20,6 +20,9 @@ fi run_test test_punycode run_test test_iri +# Run configuration dumping test. +run_test test_dump_config + if [ "${SKIP_RUNTIME_TESTS:-0}" -eq 1 ]; then echo echo "======================" diff --git a/regress/tests.sh b/regress/tests.sh index 72ad303..65c4903 100644 --- a/regress/tests.sh +++ b/regress/tests.sh @@ -8,6 +8,34 @@ test_iri() { ./iri_test } +test_dump_config() { + dont_check_server_alive=yes + gen_config '' '' + + exp="$(mktemp)" + got="$(mktemp)" + cat <$exp +prefork 3 + +server "localhost" { + cert "$PWD/localhost.pem" + key "$PWD/localhost.key" +} +EOF + + $gmid -nn -c reg.conf > $got 2>/dev/null + + ret=0 + if ! cmp -s "$exp" "$got"; then + echo "config differs!" >&2 + diff -u "$exp" "$got" >&2 + ret=1 + fi + + rm "$exp" "$got" + return $ret +} + test_gemexp() { dont_check_server_alive=yes