summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2016-06-16 23:24:24 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2016-06-19 15:26:01 +0300
commit7aa5142f82e87fa25fd3652ea74e416e02a185f5 (patch)
tree36007555eed207a2cf3f6236d0f4c87c573378e9 /scripts
parent282f432b16b1271257500e15b0f80c1a459045d8 (diff)
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 <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/vsp-lib.sh6
-rwxr-xr-xscripts/vsp-runner.sh22
2 files changed, 18 insertions, 10 deletions
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