annotate tests/test-transforms-basic.sh @ 77:adce5f7e2917 qt5

Don't need to check for Dataquay, and in fact we can pick up the wrong version if we do. Just assume it is available (building in e.g. sv subdir configuration)
author Chris Cannam
date Tue, 07 May 2013 15:58:20 +0100
parents 43d788236ed1
children 34b0c85258d0
rev   line source
Chris@0 1 #!/bin/bash
Chris@0 2
Chris@0 3 mypath=`dirname $0`
Chris@42 4 r=$mypath/../sonic-annotator
Chris@0 5
Chris@0 6 infile=$mypath/audio/3clicks8.wav
Chris@0 7 testplug=vamp:vamp-example-plugins:percussiononsets
Chris@0 8 tmpfile1=$mypath/tmp_1_$$
Chris@0 9 tmpfile2=$mypath/tmp_2_$$
Chris@0 10
Chris@0 11 trap "rm -f $tmpfile1 $tmpfile2" 0
Chris@0 12
Chris@28 13 . test-include.sh
Chris@0 14
Chris@0 15 $r --skeleton $testplug > $tmpfile1 2>/dev/null || \
Chris@0 16 fail "Fails to run with --skeleton $testplug"
Chris@0 17
Chris@0 18 $r -t $tmpfile1 -w csv --csv-stdout $infile > $tmpfile2 2>/dev/null || \
Chris@0 19 fail "Fails to run with -t $tmpfile -w csv --csv-stdout $infile"
Chris@0 20
Chris@28 21 csvcompare $tmpfile2 $mypath/expected/transforms-basic-skeleton-1.csv || \
Chris@0 22 fail "Output mismatch for transforms-basic-skeleton-1.csv"
Chris@0 23
Chris@0 24 for suffix in \
Chris@0 25 -no-parameters-default-output \
Chris@0 26 -no-parameters \
Chris@0 27 "" \
Chris@0 28 -set-parameters \
Chris@0 29 -set-step-and-block-size \
Chris@0 30 -set-sample-rate \
Chris@51 31 -df-windowtype-default \
Chris@51 32 -df-windowtype-hanning \
Chris@51 33 -df-windowtype-hamming \
Chris@55 34 -multiple-outputs \
Chris@0 35 ; do
Chris@0 36
Chris@0 37 for type in xml n3 ; do
Chris@0 38
Chris@0 39 transform=$mypath/transforms/transforms-basic-percussiononsets$suffix.$type
Chris@0 40 expected=$mypath/expected/transforms-basic-percussiononsets$suffix.csv
Chris@0 41
Chris@55 42 if [ ! -f $transform ]; then
Chris@55 43 if [ $type = "xml" ]; then
Chris@55 44 continue # not everything can be expressed in the XML
Chris@55 45 # format, e.g. the multiple output test can't
Chris@55 46 fi
Chris@55 47 fi
Chris@55 48
Chris@0 49 test -f $transform || \
Chris@51 50 fail "Internal error: no transforms file for suffix $suffix (looking for $transform)"
Chris@0 51
Chris@0 52 test -f $expected || \
Chris@51 53 fail "Internal error: no expected output file for suffix $suffix (looking for $expected)"
Chris@0 54
Chris@0 55 $r -t $transform -w csv --csv-stdout $infile > $tmpfile2 2>/dev/null || \
Chris@0 56 fail "Fails to run transform $transform"
Chris@0 57
Chris@28 58 csvcompare $tmpfile2 $expected || \
Chris@0 59 fail "Output mismatch for transform $transform"
Chris@0 60 done
Chris@0 61 done
Chris@0 62
Chris@0 63 exit 0
Chris@0 64