X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=coverage%2Fscripts%2Frun-test.sh;h=7dfb3695942522958cbc7bfbcb2781fd7c3b34c2;hb=6f5915807393ba9276781bae961a5f4310335398;hp=bac4da5e7866eefc1324ee133cdc5ffb2f8e7e8f;hpb=e17ae412245ba9afb33ff6a0f1f665b4d66d4da4;p=src%2Fapp-framework-binder.git diff --git a/coverage/scripts/run-test.sh b/coverage/scripts/run-test.sh index bac4da5e..7dfb3695 100755 --- a/coverage/scripts/run-test.sh +++ b/coverage/scripts/run-test.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash export R=$(realpath $(dirname $0)/..) export PATH="$R/bin:$R/scripts:$PATH" @@ -7,26 +7,59 @@ cd $R/bin lcov -c -i -d $R/bin -o $R/lcov-out.info -mk() { +vg() { + if [[ -z "$NOVALGRIND" ]]; then + valgrind "$@" + else + while :; do + case "$1" in + --*) shift;; + *) break;; + esac + done + "$@" + fi +} + +mkbefore() { echo echo "*******************************************************************" echo "** $*" echo "*******************************************************************" lcov -c -i -d $R/bin -o $R/fake.info - "$@" +} + +mkafter() { lcov -c -d $R/bin -o $R/tmp.info mv $R/lcov-out.info $R/previous.info lcov -a $R/tmp.info -a $R/previous.info -o $R/lcov-out.info rm $R/previous.info $R/fake.info $R/tmp.info } +mk() { + mkbefore "$@" + "$@" + mkafter "$@" +} + +mkdbgwait() { + mkbefore "$@" + "$@" & + sleep 1 + kill -INT %% + sleep 1 + mkafter "$@" +} + mkdir /tmp/ldpaths export AFB_LDPATHS=/tmp/ldpaths export AFB_TRACEAPI=no +echo ' ########################################################## # test to check options ########################################################## +' mk $R/bin/afb-daemon-cov --help mk $R/bin/afb-daemon-cov --version @@ -45,24 +78,44 @@ mk $R/bin/afb-daemon-cov --no-ldpath --traceapi fake mk $R/bin/afb-daemon-cov --traceditf all --tracesvc all --log error,alarm -LISTEN_FDNAMES=toto,demat LISTEN_FDS=5 mk $R/bin/afb-daemon-cov --no-ldpath --binding $R/bin/demat.so --ws-server sd:demat --call "demat/exit:0" +mk $R/bin/afb-daemon-cov --call noapi/noverb:false + +mk $R/bin/afb-daemon-cov --call not-a-call + +LISTEN_FDNAMES=toto,demat LISTEN_FDS=5 +typeset -x LISTEN_FDNAMES LISTEN_FDS +mk $R/bin/afb-daemon-cov --no-ldpath --binding $R/bin/demat.so --ws-server sd:demat --call "demat/exit:0" +typeset +x LISTEN_FDNAMES LISTEN_FDS mk $R/bin/afb-daemon-cov --weak-ldpaths $R/ldpath/weak --binding $R/bin/demat.so --ws-server sd:demat --call "demat/exit:0" +AFB_DEBUG_BREAK=zero,one,two,main-start AFB_DEBUG_WAIT="here I am,main-args" +typeset -x AFB_DEBUG_BREAK AFB_DEBUG_WAIT +mkdbgwait $R/bin/afb-daemon-cov --rootdir $R/i-will-never-exist +typeset +x AFB_DEBUG_BREAK AFB_DEBUG_WAIT + +mk $R/bin/afb-daemon-cov --workdir=/etc/you/should/not/be/able/to/create/me + +mk $R/bin/afb-daemon-cov --exec $R/it-doesn-t-exist + +echo ' ########################################################## # test of the bench ########################################################## +' mk $R/bin/test-apiset mk $R/bin/test-session mk $R/bin/test-wrap-json +echo ' ########################################################## -# true life test +# true life test: run parts as direct client ########################################################## +' mk \ -valgrind \ +vg \ --log-file=$R/valgrind.out \ --trace-children=no \ --track-fds=yes \ @@ -85,7 +138,7 @@ $R/bin/afb-daemon-cov \ --name binder-cov \ --port 8888 \ --roothttp $R/www \ - --rootbase /opx \ + --rootbase /opa \ --rootapi /api \ --alias /icons:$R/www \ --apitimeout 90 \ @@ -104,11 +157,95 @@ $R/bin/afb-daemon-cov \ --traceapi all \ --traceses all \ --traceevt all \ + --traceglob none \ --monitoring \ + --set hello/key:a-kind-of-text \ --call demat/ping:true \ + --call hello/ping:false \ --ws-server unix:$R/apis/ws/hello \ --ws-server unix:$R/apis/ws/salut \ --exec $R/scripts/run-parts.sh @p @t +echo ' +########################################################## +# true life test: run parts as in-direct server +########################################################## +' +mk \ +vg \ + --log-file=$R/valgrind.out \ + --trace-children=no \ + --track-fds=yes \ + --leak-check=full \ + --show-leak-kinds=all \ + --num-callers=50 \ +$R/bin/afb-daemon-cov \ + --foreground \ + --verbose \ + --verbose \ + --roothttp $R/www \ + --alias /icons:$R/www \ + --workdir . \ + --uploaddir . \ + --rootdir . \ + --port 8888 \ + --ldpaths $R/ldpath/strong \ + --binding $R/bin/demat.so \ + --auto-api $R/apis/auto \ + --random-token \ + --ws-server unix:$R/apis/ws/hello \ + --ws-server unix:$R/apis/ws/salut \ + --ws-server localhost:9595/salut \ + --exec \ + $R/bin/afb-daemon-nocov \ + --quiet \ + --quiet \ + --port 9999 \ + --auto-api $R/apis/auto \ + --auto-api $R/apis/ws \ + --ws-client localhost:9595/salut2 \ + --exec $R/scripts/run-parts.sh @@p @@t + +echo ' +########################################################## +# true life test: run parts as in-direct client +########################################################## +' +mk \ +vg \ + --log-file=$R/valgrind.out \ + --trace-children=no \ + --track-fds=yes \ + --leak-check=full \ + --show-leak-kinds=all \ + --num-callers=50 \ +$R/bin/afb-daemon-nocov \ + --quiet \ + --quiet \ + --foreground \ + --roothttp $R/www \ + --alias /icons:$R/www \ + --workdir . \ + --uploaddir . \ + --rootdir . \ + --port 8888 \ + --ldpaths $R/ldpath/strong \ + --binding $R/bin/demat.so \ + --auto-api $R/apis/auto \ + --random-token \ + --ws-server unix:$R/apis/ws/hello \ + --ws-server unix:$R/apis/ws/salut \ + --ws-server localhost:9595/salut \ + --exec \ + $R/bin/afb-daemon-cov \ + --port 9999 \ + --verbose \ + --verbose \ + --auto-api $R/apis/auto \ + --auto-api $R/apis/ws \ + --ws-client localhost:9595/salut2 \ + --exec $R/scripts/run-parts.sh @@p @@t + exit 0 +