annotate test/regression/regression.sh @ 149:b83e6fbe22cc memory

Update regression tests
author Chris Cannam
date Wed, 17 May 2017 15:55:37 +0100
parents 7d7d16654ad7
children 4a97f7638ffd
rev   line source
Chris@135 1 #!/bin/bash
Chris@135 2
Chris@149 3 set -u
Chris@135 4
Chris@135 5 testdir=$(dirname "$0")
Chris@147 6 rootdir="$testdir/../.."
Chris@135 7
Chris@135 8 if ! sonic-annotator -v >/dev/null ; then
Chris@135 9 echo "No sonic-annotator available in PATH, skipping regression test"
Chris@135 10 exit 0
Chris@135 11 fi
Chris@135 12
Chris@135 13 echo "Running regression test..."
Chris@135 14
Chris@147 15 for output in smoothedpitchtrack notes ; do
Chris@149 16 for fixedlag in off on ; do
Chris@135 17
Chris@149 18 flsuffix=""
Chris@149 19 if [ "$fixedlag" = "on" ]; then
Chris@149 20 flsuffix="-fixedlag"
Chris@149 21 fi
Chris@135 22
Chris@149 23 echo
Chris@149 24 echo "Testing output $output with fixed-lag $fixedlag..."
Chris@149 25
Chris@149 26 ( time ( VAMP_PATH="$rootdir" sonic-annotator \
Chris@149 27 -t "$testdir/transform-$output$flsuffix.ttl" \
Chris@149 28 -w csv --csv-stdout --csv-omit-filename \
Chris@149 29 "$rootdir/testdata/bob_02.wav" \
Chris@149 30 > "$testdir/obtained-$output$flsuffix.csv" \
Chris@149 31 2> "$testdir/log-$output$flsuffix.txt" ) ) 2>&1 | \
Chris@149 32 grep -i real | \
Chris@149 33 sed 's/^real/Elapsed time/'
Chris@149 34
Chris@149 35 if ! cmp -s "$testdir/expected-$output$flsuffix.csv" "$testdir/obtained-$output$flsuffix.csv" ; then
Chris@149 36 echo "*** FAILED for output $output with fixed-lag $fixedlag, diff follows:"
Chris@149 37 echo " (expected on left, obtained on right)"
Chris@149 38 sdiff -w78 "$testdir/expected-$output$flsuffix.csv" "$testdir/obtained-$output$flsuffix.csv"
Chris@149 39 else
Chris@149 40 echo "Succeeded for output $output with fixed-lag $fixedlag"
Chris@149 41 fi
Chris@149 42 done
Chris@147 43 done
Chris@147 44
Chris@147 45