From c1a9beeab8ad51154ec37f99a25891faadd03c0b Mon Sep 17 00:00:00 2001 From: shihuade Date: Tue, 15 Jul 2014 06:42:42 -0400 Subject: [PATCH] update binary comparison test script --- .travis.yml | 13 ++- run_Test.sh | 96 ++++++++++++++++------- test/encoder_binary_comparison/.gitignore | 1 + 3 files changed, 74 insertions(+), 36 deletions(-) diff --git a/.travis.yml b/.travis.yml index e02d2312..f3b1cb42 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,19 +20,18 @@ before_script: env: - TASK=UnitTest; TestParameter="" - - TASK=BinaryCompare; TestParameter=BA_MW_D.264; - - TASK=BinaryCompare; TestParameter=LS_SVA_D.264; - - TASK=BinaryCompare; TestParameter=CVPCMNL1_SVA_C.264; + - TASK=BinaryCompare; TestParameter=BA_MW_D.264 + - TASK=BinaryCompare; TestParameter=LS_SVA_D.264 + - TASK=BinaryCompare; TestParameter=CVPCMNL1_SVA_C.264 matrix: exclude: - compiler: clang - env: TASK=BinaryCompare; TestParameter=BA_MW_D.264; + env: TASK=BinaryCompare; TestParameter=BA_MW_D.264 - compiler: clang - env: TASK=BinaryCompare; TestParameter=LS_SVA_D.264; + env: TASK=BinaryCompare; TestParameter=LS_SVA_D.264 - compiler: clang - env: TASK=BinaryCompare; TestParameter=CVPCMNL1_SVA_C.264; - + env: TASK=BinaryCompare; TestParameter=CVPCMNL1_SVA_C.264 script: - echo "currrent test is for ${TASK}" - echo "test parameter is ${TestParameter}" diff --git a/run_Test.sh b/run_Test.sh index e582f7e2..066517e3 100755 --- a/run_Test.sh +++ b/run_Test.sh @@ -1,9 +1,24 @@ - #!/bin/bash - - -#usage:runMain ${TestType} ${TestBitStream} -runMain() +#********************************************************************************** +# This script is for test on travis.Currently there are 5 jobs running on +# travis in parallel status which are listed as below: +# 1.Unit test with gcc compiler; +# 2.Unit test with clang compiler; +# 3.Binary comparison test for test bit stream A; +# 4.Binary comparison test for test bit stream B; +# 5.Binary comparison test for test bit stream C. +# For binary comparison test,before running all test cases, it need to prepare +# the test space.On travis,as those parallel jobs are running on different VMs, +# so each job need to prepare for its test space for itself. +# +# --usage: +# ./runTest.sh UnitTest +# or ./runTest.sh BinaryCompare ${TestBitStreamName} +# +# date: 10/06/2014 Created +#********************************************************************************** +#usage: runInputParamCheck ${TestType} ${TestBitStream} +runInputParamCheck() { local ParameterFlag="" if [ $# -eq 1 -a "$1" = "UnitTest" ] @@ -15,41 +30,64 @@ runMain() else let "ParameterFlag=1" fi - - if [ ! ${ParameterFlag} -eq 0 ] + return ${ParameterFlag} +} +#usage: runUnitTest +runUnitTest() +{ + make -B ENABLE64BIT=Yes BUILDTYPE=Release all plugin test + make -B ENABLE64BIT=Yes BUILDTYPE=Debug all plugin test + make -B ENABLE64BIT=No BUILDTYPE=Release all plugin test + make -B ENABLE64BIT=No BUILDTYPE=Debug all plugin test + return $? +} +#usage: runPrepareAndBinaryTest $TestBitStream +runPrepareAndBinaryTest() +{ + if [ ! $# -eq 1 ] then - echo "usage: runMain UnitTest " - echo " or runMain BinaryCompare \${TestBitStreamName} " + echo "usage: runPrepareAndBinaryTest \$TestBitStream" exit 1 fi - - + local TestBitStream=$1 + local WorkingDir=`pwd` + local BinaryTestDir="test/encoder_binary_comparison" + local TestSpacePrepareLog="AllTestSpacePrepare.log" + cd ${BinaryTestDir} + ./run_PrepareAllTestData.sh 64 2>${TestSpacePrepareLog} + cd ${WorkingDir} + echo "" + echo " binary compare test, test bit stream is ${TestBitStream}" + echo "" + ./test/encoder_binary_comparison/run_OneBitStream.sh ${TestBitStream} + return $? +} +#usage:runMain ${TestType} ${TestBitStream} +runMain() +{ local TestType=$1 local TestBitStream=$2 - + runInputParamCheck ${TestType} ${TestBitStream} + if [ ! $? -eq 0 ] + then + echo "usage: ./runTest.sh UnitTest \${PrepareFlag}" + echo " or ./runTest.sh BinaryCompare \${TestBitStreamName} \${PrepareFlag} " + exit 1 + fi if [ "${TestType}" = "UnitTest" ] then set -e - make -B ENABLE64BIT=Yes BUILDTYPE=Release all plugin test - make -B ENABLE64BIT=Yes BUILDTYPE=Debug all plugin test - make -B ENABLE64BIT=No BUILDTYPE=Release all plugin test - make -B ENABLE64BIT=No BUILDTYPE=Debug all plugin test - elif [ "${TestType}" = "BinaryCompare" ] - then - echo "" - echo " binary compare test, test bit stream is ${TestBitStream}" - echo "" - ./test/encoder_binary_comparison/run_OneBitStream.sh ${TestBitStream} + runUnitTest + return $? + fi + if [ "${TestType}" = "BinaryCompare" ] + then + set -e + runPrepareAndBinaryTest ${TestBitStream} + return $? fi - } - TestType=$1 TestBitStream=$2 - runMain ${TestType} ${TestBitStream} - - - - diff --git a/test/encoder_binary_comparison/.gitignore b/test/encoder_binary_comparison/.gitignore index da69a28b..db541a74 100644 --- a/test/encoder_binary_comparison/.gitignore +++ b/test/encoder_binary_comparison/.gitignore @@ -2,3 +2,4 @@ AllTestData Codec FinalResult build.log +AllTestSpacePrepare.log