From 7aa5142f82e87fa25fd3652ea74e416e02a185f5 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Thu, 16 Jun 2016 23:24:24 +0300 Subject: vsp-lib: Handle logging internally Remove the need to pipe individual commands to the logger from the test scripts by moving all logging code internally to vsp-lib and vsp-runner. As an interesting side effect the removal of shell pipes from the test scripts avoids running functions in subshells. This makes it possible for the pipeline configuration functions to set variables that can be used later. Signed-off-by: Laurent Pinchart --- scripts/vsp-lib.sh | 6 +++++- scripts/vsp-runner.sh | 22 +++++++++++++--------- 2 files changed, 18 insertions(+), 10 deletions(-) (limited to 'scripts') diff --git a/scripts/vsp-lib.sh b/scripts/vsp-lib.sh index 7e06738..e4040f4 100755 --- a/scripts/vsp-lib.sh +++ b/scripts/vsp-lib.sh @@ -500,7 +500,7 @@ format_configure() { # test_init() { - logfile=${1/sh/log} + export logfile=${1/sh/log} local features=$2 local optional_features=$3 @@ -569,3 +569,7 @@ test_complete() { rm -f frame-*.bin rm -f histo-*.bin } + +test_run() { + test_main | ./logger.sh error >> $logfile +} diff --git a/scripts/vsp-runner.sh b/scripts/vsp-runner.sh index d944e74..c4745c3 100755 --- a/scripts/vsp-runner.sh +++ b/scripts/vsp-runner.sh @@ -61,31 +61,26 @@ parse() { fi mdev=$1 - dev=`$mediactl -d $mdev -p | grep 'bus info' | sed 's/.*platform://'` - - if [ -z $dev ] ; then - echo "Error: Device $dev doesn't exist" - syntax - return 1 - fi - cmd=$2 case $cmd in hgo) options=$3 + log=hgo ;; input) index=$3 infmt=$4 options=$5 + log=input.$index ;; output) index=$3 outfmt=$4 options=$5 + log=output.$index ;; *) @@ -99,6 +94,14 @@ parse() { # execute() { + dev=`$mediactl -d $mdev -p | grep 'bus info' | sed 's/.*platform://'` + + if [ -z $dev ] ; then + echo "Error: Device $dev doesn't exist" + syntax + return 1 + fi + case $cmd in hgo) if [ "x$options" = xinfinite ] ; then @@ -142,4 +145,5 @@ execute() { esac } -parse $* && execute +parse $* || exit 1 +execute | ./logger.sh $log >> $logfile -- cgit v1.2.3