diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2018-10-20 02:12:18 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2018-10-22 19:03:19 +0200 |
commit | e7fd1dac52b20115922737637544919cb86164a7 (patch) | |
tree | 9c0524c4f04995fc14a51d8c7c470152d3af48ec | |
parent | cc7933fa68cd54f86997b11a5bf2fea5c6524b14 (diff) |
Select the test set to runsandbox/claneys/testset-Selection
The widget launcher script has been modified to use the environment
variable VERBSELECTED and VERBARGS. Then you are able to select a test set
defined by the testVerb configuration section in your JSON configuration file.
You can also use the special argument {'lavaOutput': true} to enable specials
Lava markers on the output.
Change-Id: If677cbbc8cb6cf6eb1bdf9f76b83f5e7976dd5a5
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
-rw-r--r-- | test-wgt/launcher.sh.in | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/test-wgt/launcher.sh.in b/test-wgt/launcher.sh.in index 7414a7b..1dac914 100644 --- a/test-wgt/launcher.sh.in +++ b/test-wgt/launcher.sh.in @@ -21,6 +21,8 @@ PORT=$1 TOKEN=$2 +[ ! "${VERBSELECTED}" ] && VERBSELECTED="*" + # Research the Api name used CFGFILE=$(find ${AFM_APP_INSTALL_DIR} -name "*json" -print | head -n1) API=$(grep '\"api\"' ${CFGFILE} | cut -d'"' -f4) @@ -32,19 +34,36 @@ mkfifo $AFBCLIENTOUT declare -a testVerb -if [[ $(jq '.testVerb|type' $CFGFILE) == "array" ]] +if [[ $(jq -r '.testVerb|type' $CFGFILE) == "array" ]] then - testVerbLength=$(jq '.testVerb | length') - for (( idx=0; idx<testVerbLength; idx++ )) do - testVerb[$idx]=$(jq -r ".testVerb[$idx].uid" ${CFGFILE}) - done + testVerbLength=$(jq '.testVerb|length' $CFGFILE) + if [ "$VERBSELECTED" = "*" ] + then + # Get all the verbs of the test api + for (( idx=0; idx<testVerbLength; idx++ )) do + testVerb[$idx]=$(jq -r ".testVerb[$idx].uid" ${CFGFILE}) + done + else + # You search for a exact matching verb so there should be only one match + for (( idx=0; idx<testVerbLength; idx++ )) do + [ "$(jq -r ".testVerb[$idx].uid" ${CFGFILE})" = "$VERBSELECTED" ] && \ + testVerb[0]=$(jq -r ".testVerb[$idx].uid" ${CFGFILE}) + done + fi else - testVerb[0]=$(jq -r ".testVerb.uid" ${CFGFILE}) + if [ "$VERBSELECTED" = "*" ] + then + testVerb[0]=$(jq -r ".testVerb.uid" ${CFGFILE}) + else + [ "$(jq -r ".testVerb[0].uid" ${CFGFILE})" = "$VERBSELECTED" ] && \ + testVerb[0]=$(jq -r ".testVerb[$idx].uid" ${CFGFILE}) + fi fi testVerbLength=${#testVerb[@]} for (( idx=0; idx<testVerbLength; idx++ )) do - afb-client-demo -s ws://localhost:${PORT}/api?token=${TOKEN} "$API" "${testVerb[$idx]}" + echo "Launching ${testVerb[$idx]}" + afb-client-demo -s ws://localhost:${PORT}/api?token=${TOKEN} "$API" "${testVerb[$idx]}" "${VERBARGS}" done afb-client-demo ws://localhost:${PORT}/api?token=${TOKEN} "$API" "exit" |