X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=test%2Ftest_grabbag.sh;h=bc7d776c177e81f32d5ae8416f4a7add1dc41cab;hb=2bce0d60fea330b527ba92af12dc232d41bac7ae;hp=b1dc7105593e760e316047b15fec94abf1ea2b73;hpb=9564390fb91319c539c91ca7e8054e86b31a2d6e;p=platform%2Fupstream%2Fflac.git diff --git a/test/test_grabbag.sh b/test/test_grabbag.sh index b1dc710..bc7d776 100755 --- a/test/test_grabbag.sh +++ b/test/test_grabbag.sh @@ -1,7 +1,8 @@ #!/bin/sh # FLAC - Free Lossless Audio Codec -# Copyright (C) 2001,2002,2003,2004 Josh Coalson +# Copyright (C) 2001-2009 Josh Coalson +# Copyright (C) 2011-2013 Xiph.Org Foundation # # This file is part the FLAC project. FLAC is comprised of several # components distributed under difference licenses. The codec libraries @@ -23,21 +24,75 @@ die () exit 1 } -LD_LIBRARY_PATH=../src/libFLAC/.libs:../src/share/grabbag/.libs:../obj/release/lib:../obj/debug/lib:$LD_LIBRARY_PATH +if [ x = x"$1" ] ; then + BUILD=debug +else + BUILD="$1" +fi + +LD_LIBRARY_PATH=../src/libFLAC/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=../src/share/grabbag/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=../src/share/replaygain_analysis/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=../objs/$BUILD/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH -PATH=../src/test_grabbag/cuesheet:../obj/release/bin:../obj/debug/bin:$PATH +export MALLOC_CHECK_=3 +export MALLOC_PERTURB_=$((1$(date +%N) % 255 + 1)) +PATH=../src/test_grabbag/cuesheet:$PATH +PATH=../src/test_grabbag/picture:$PATH +PATH=../objs/$BUILD/bin:$PATH test_cuesheet -h 1>/dev/null 2>/dev/null || die "ERROR can't find test_cuesheet executable" +test_picture -h 1>/dev/null 2>/dev/null || die "ERROR can't find test_picture executable" run_test_cuesheet () { - if [ x"$FLAC__VALGRIND" = xyes ] ; then - valgrind --leak-check=yes --show-reachable=yes --num-callers=100 --logfile-fd=4 test_cuesheet $* 4>>test_grabbag.valgrind.log + if [ x"$FLAC__TEST_WITH_VALGRIND" = xyes ] ; then + echo "valgrind --leak-check=yes --show-reachable=yes --num-callers=50 test_cuesheet $*" >>test_grabbag.valgrind.log + valgrind --leak-check=yes --show-reachable=yes --num-callers=50 --log-fd=4 test_cuesheet $* 4>>test_grabbag.valgrind.log else test_cuesheet $* fi } +run_test_picture () +{ + if [ x"$FLAC__TEST_WITH_VALGRIND" = xyes ] ; then + echo "valgrind --leak-check=yes --show-reachable=yes --num-callers=50 test_picture $*" >>test_grabbag.valgrind.log + valgrind --leak-check=yes --show-reachable=yes --num-callers=50 --log-fd=4 test_picture $* 4>>test_grabbag.valgrind.log + else + test_picture $* + fi +} + +if [ `env | grep -ic '^comspec='` != 0 ] ; then + is_win=yes +else + is_win=no +fi + +######################################################################## +# +# test_picture +# +######################################################################## + +log=picture.log +picture_dir=pictures + +echo "Running test_picture..." + +rm -f $log + +run_test_picture $picture_dir >> $log 2>&1 + +if [ $is_win = yes ] ; then + diff -w picture.ok $log > picture.diff || die "Error: .log file does not match .ok file, see picture.diff" +else + diff picture.ok $log > picture.diff || die "Error: .log file does not match .ok file, see picture.diff" +fi + +echo "PASSED (results are in $log)" + ######################################################################## # # test_cuesheet @@ -50,6 +105,8 @@ good_cuesheets=cuesheets/good.*.cue good_leadout=`expr 80 \* 60 \* 44100` bad_leadout=`expr $good_leadout + 1` +echo "Running test_cuesheet..." + rm -f $log # @@ -57,7 +114,7 @@ rm -f $log # for cuesheet in $bad_cuesheets ; do echo "NEGATIVE $cuesheet" >> $log 2>&1 - run_test_cuesheet $cuesheet $good_leadout cdda >> $log 2>&1 + run_test_cuesheet $cuesheet $good_leadout 44100 cdda >> $log 2>&1 exit_code=$? if [ "$exit_code" = 255 ] ; then die "Error: test script is broken" @@ -72,7 +129,7 @@ done # for cuesheet in $good_cuesheets ; do echo "POSITIVE $cuesheet" >> $log 2>&1 - run_test_cuesheet $cuesheet $good_leadout cdda >> $log 2>&1 + run_test_cuesheet $cuesheet $good_leadout 44100 cdda >> $log 2>&1 exit_code=$? if [ "$exit_code" = 255 ] ; then die "Error: test script is broken" @@ -85,6 +142,10 @@ for cuesheet in $good_cuesheets ; do rm -f $cuesheet_pass1 $cuesheet_pass2 done -diff cuesheet.ok $log > cuesheet.diff || die "Error: .log file does not match .ok file, see cuesheet.diff" +if [ $is_win = yes ] ; then + diff -w cuesheet.ok $log > cuesheet.diff || die "Error: .log file does not match .ok file, see cuesheet.diff" +else + diff cuesheet.ok $log > cuesheet.diff || die "Error: .log file does not match .ok file, see cuesheet.diff" +fi echo "PASSED (results are in $log)"