6 command -v "$@" > /dev/null 2>&1
9 progname=$(basename "${BASH_SOURCE[0]}")
12 nnpkg_run=${nnpkg_run:-"nnpackage_run"}
13 difftool=${difftool:-"h5diff"}
14 delete_dumped_on_failure=0
17 echo "Usage: $0 $progname [options] nnpackage_test"
18 echo "Run an nnpackage testcase"
22 echo " non-zero failure"
25 echo " -h show this help"
26 echo " -i set input directory (default=$indir)"
27 echo " -o set output directory (default=$outdir)"
28 echo " -d delete dumped file on failure."
29 echo " (dumped file are always deleted on success) (default=$delete_dumped_on_failure)"
31 echo "Environment variables:"
32 echo " nnpackage_run path to nnpackage_run (default=nnpackage_run)"
33 echo " difftool path to i5diff or h5diff (default=h5diff)"
36 echo " $0 $progname Add_000 => run $indir/Add_000 and check output"
37 echo " $0 $progname -i nnpkg-tcs Add_000 => run nnpkg-tcs/Add_000 and check output"
42 echo "For help, type $progname -h"
46 while getopts "hdi:o:" OPTION; do
49 d) delete_dumped_on_failure=1;;
59 echo "error: wrong argument (no argument or too many arguments)."
60 echo "For help, type $progname -h"
64 tcname=$(basename "$1")
65 nnpkg="$indir/$tcname"
69 if [ ! -e $nnpkg ]; then
70 echo "error: nnpackage "$nnpkg" does not exist."
74 if ! command_exists $nnpkg_run; then
75 echo "error: runner "$nnpkg_run" does not exist."
76 echo " if $nnpkg_run exists, please set PATH to $nnpkg_run"
80 dumped="$outdir/$tcname".out.h5
82 echo -n "[ Run ] $nnpkg "
85 --nnpackage "$nnpkg" \
86 --load "$nnpkg/metadata/tc/input.h5" \
87 --dump "$dumped" >& /dev/null > "$dumped.log" 2>&1 ; then
101 if ! command_exists $difftool; then
102 echo "error: difftool "$difftool" does not exist."
106 expected="$nnpkg/metadata/tc/expected.h5"
108 echo -n "[Compare] $nnpkg "
113 [ $delete_dumped_on_failure ] && rm "$dumped"
123 rm "$dumped" "$dumped.log"
126 if ! $difftool -d 0.001 -v "$dumped" "$expected" /value >& "$dumped.log"; then
128 elif grep "not comparable" "$dumped.log" > /dev/null; then