summaryrefslogtreecommitdiff
path: root/graphics/axodraw2/axohelp-big.test
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/axodraw2/axohelp-big.test')
-rwxr-xr-xgraphics/axodraw2/axohelp-big.test48
1 files changed, 48 insertions, 0 deletions
diff --git a/graphics/axodraw2/axohelp-big.test b/graphics/axodraw2/axohelp-big.test
new file mode 100755
index 0000000000..e44438022d
--- /dev/null
+++ b/graphics/axodraw2/axohelp-big.test
@@ -0,0 +1,48 @@
+#!/bin/sh -vx
+
+# Copyright (C) 2018 John Collins (jcc8 at psu dot edu)
+# You may freely use, modify and/or distribute this file.
+
+# Prevent errors from sed if it encounters non-UTF-8 strings in utf-8 locale
+LC_ALL=C; export LC_ALL; LANGUAGE=C; export LANGUAGE
+
+# Notes about interpretation of tests:
+# The test file was generated in the compilation of axodraw2's manual,
+# and this test script therefore verifies much functionality of
+# axohelp. However, if the test fails, it may not actually indicate
+# an error. There are two possibilities for spurious failure:
+# a. There is a mismatch of line endings (\n v. \r\n, etc) between the
+# generated test file test-big.ax2 and the reference file
+# test-big.ax2-std. Correct the problem by adjusting
+# test-big.ax2-std accordingly.
+# b. Some of the numbers in the output file are generated by complex
+# floating point computations. Rounding errors can generate small
+# differences between the generated file and the reference file.
+# This results, for example, from a 32-bit executable compared with
+# a 64-bit executable, or from a compilation with different
+# compilers and the associated libraries (e.g., VisualStudio
+# compared with gcc).
+# Interpret the results of the test accordingly.
+
+if test -z "$test_srcdir"; then
+ # If not set, then we are not running from `make check'.
+ test_srcdir=`echo "$0" | sed -e 's,/[^\\/]*$,,'` # == dirname $0
+ test "$test_srcdir" = "$0" && test_srcdir=. # in case subst failed
+fi
+
+test "$test_srcdir" = . \
+ || cp "$test_srcdir"/test-big.ax1 "$test_srcdir"/test-big.ax2-std . \
+ || exit 1
+
+echo Running axohelp on test document ...
+./axohelp test-big \
+ || { echo axohelp failed to run correctly ; exit 1; }
+
+echo Checking result file test.ax2, after converting line-endings ...
+tr -d '\r' < test-big.ax2 > tmp.ax2
+tr -d '\r' < test-big.ax2-std > tmp.ax2-std
+diff tmp.ax2-std tmp.ax2 \
+ || { echo The .ax2 file created by axohelp was incorrect; exit 1; }
+
+echo Success, so I will remove generated file test.ax2
+rm test-big.ax2 tmp.ax2 tmp.ax2-std