summaryrefslogtreecommitdiff
path: root/external/bsd/tradcpp/dist/tests/tradcpp.sh
diff options
context:
space:
mode:
authordholland <dholland@NetBSD.org>2022-08-27 21:46:47 +0000
committerdholland <dholland@NetBSD.org>2022-08-27 21:46:47 +0000
commitd628d1522a44a60d090af5ec5b995fe69aeb213b (patch)
tree929e10b1e31cd3f1ba4145b4031f1d66b4c9b0f7 /external/bsd/tradcpp/dist/tests/tradcpp.sh
parent6dd4341bea48a28c4a031b2d3831fef5b44595e4 (diff)
Import tradcpp 0.5.3
Diffstat (limited to 'external/bsd/tradcpp/dist/tests/tradcpp.sh')
-rw-r--r--external/bsd/tradcpp/dist/tests/tradcpp.sh36
1 files changed, 36 insertions, 0 deletions
diff --git a/external/bsd/tradcpp/dist/tests/tradcpp.sh b/external/bsd/tradcpp/dist/tests/tradcpp.sh
new file mode 100644
index 00000000000..fb3d0dccf55
--- /dev/null
+++ b/external/bsd/tradcpp/dist/tests/tradcpp.sh
@@ -0,0 +1,36 @@
+test_case() {
+ local name="$1"
+ local source="$2"
+ local tradcpp="$3"
+ local descr="Test tradcpp behavior"
+ atf_test_case ${name}
+ if [ -e "$(atf_get_srcdir)/${name}.txt" ]; then
+ descr=$(cat "$(atf_get_srcdir)/${name}.txt")
+ fi
+ eval "${name}_head() { \
+ atf_set descr \"${descr}\"; \
+ atf_set require.progs \"/usr/bin/tradcpp\"; \
+ }"
+ local stdout="file:$(atf_get_srcdir)/${name}.good"
+ local options=""
+ local options_file="$(atf_get_srcdir)/${name}.cmdline"
+ if [ -e ${options_file} ]; then
+ options=$(cat ${options_file})
+ fi
+ eval "${name}_body() { \
+ atf_check -s eq:0 -o ${stdout} -x '${tradcpp} ${options} ${source} 2>&1 || echo FAILED'; \
+ }"
+}
+
+atf_init_test_cases() {
+ local tradcpp=$(make -V .OBJDIR -C $(atf_get_srcdir)/..)/tradcpp
+ if [ ! -x ${tradcpp} ]; then
+ tradcpp=/usr/bin/tradcpp
+ fi
+ cd $(atf_get_srcdir)
+ for testfile in t*.c; do
+ local name=${testfile%%.c}
+ test_case ${name} ${testfile} ${tradcpp}
+ atf_add_test_case ${name}
+ done
+}