#!/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