diff options
author | Chase Qi <chase.qi@linaro.org> | 2016-10-19 11:07:56 +0800 |
---|---|---|
committer | Milosz Wasilewski <milosz.wasilewski@linaro.org> | 2016-10-20 09:53:07 +0000 |
commit | 22bacf9c45ba0981d8c9b717561910a10076f45c (patch) | |
tree | e52e67e0ecf2a0b0b72eba36d34fa67c1932626a /automated | |
parent | 50a5baa56961c2d98bbb3ee5b4cf1f0d2f230088 (diff) |
v2: linux: add optee xtest
Change-Id: Ifbaf77db448c07f6209269bc45718e7ad5747a50
Signed-off-by: Chase Qi <chase.qi@linaro.org>
Diffstat (limited to 'automated')
-rwxr-xr-x | automated/linux/optee/optee-xtest.sh | 69 | ||||
-rw-r--r-- | automated/linux/optee/optee-xtest.yaml | 27 |
2 files changed, 96 insertions, 0 deletions
diff --git a/automated/linux/optee/optee-xtest.sh b/automated/linux/optee/optee-xtest.sh new file mode 100755 index 0000000..67884dd --- /dev/null +++ b/automated/linux/optee/optee-xtest.sh @@ -0,0 +1,69 @@ +#!/bin/sh + +. ../../lib/sh-test-lib +OUTPUT="$(pwd)/output" +RESULT_FILE="${OUTPUT}/result.txt" +TEST_LEVEL="0" +TEST_SUITE="regression" + +usage() { + echo "Usage: $0 [-l <0-15> -t <regression|benchmark>]" 1>&2 + exit 1 +} + +while getopts "l:t:h:" o; do + case "$o" in + l) TEST_LEVEL="${OPTARG}" ;; + t) TEST_SUITE="${OPTARG}" ;; + h|*) usage ;; + esac +done + +parser() { + egrep "^XTEST_TEE_.* (OK|FAILED|SKIPPED)" "${LOG_FILE}" \ + > "${OUTPUT}/raw-result.txt" + + while read line; do + test_case=$(echo "${line}" | awk '{print $1}') + test_result=$(echo "${line}" | awk '{print $2}') + + case "${test_result}" in + OK) test_result="pass" ;; + SKIPPED) test_result="skip" ;; + *) test_result="fail" ;; + esac + + echo "${test_case} ${test_result}" >> "${RESULT_FILE}" + + if [ "${TEST_SUITE}" = "benchmark" ]; then + sed -n "/^\* ${test_case}/,/ ${test_case} [OK|FAILED|SKIPPED]/p" "${LOG_FILE}" \ + | grep "[0-9].*|" \ + | awk -v test_case="${test_case}" -v test_result="${test_result}"\ + '{data_size=$1; speed=$NF; print test_case"_"data_size" "test_result" "speed" KB/s"; }' \ + >> "${RESULT_FILE}" + fi + done < "${OUTPUT}/raw-result.txt" +} + +# Test run. +[ -d "${OUTPUT}" ] && mv "${OUTPUT}" "${OUTPUT}_$(date +%Y%m%d%H%M%S)" +mkdir -p "${OUTPUT}" + +command -v tee-supplicant && command -v xtest +exit_on_fail "xtest-existence-check" + +tee-supplicant & +tee_supplicant_pid="$!" +sleep 5 + +info_msg "Running xtest..." +LOG_FILE="${OUTPUT}/${TEST_SUITE}-output.txt" +test_cmd="xtest -l ${TEST_LEVEL} -t ${TEST_SUITE} 2>&1" +pipe0_status "${test_cmd}" "tee ${LOG_FILE}" +check_return "xtest-run" + +# Parse output. +parser + +# Cleanup. +kill "${tee_supplicant_pid}" diff --git a/automated/linux/optee/optee-xtest.yaml b/automated/linux/optee/optee-xtest.yaml new file mode 100644 index 0000000..06415b3 --- /dev/null +++ b/automated/linux/optee/optee-xtest.yaml @@ -0,0 +1,27 @@ +metadata: + name: optee-xtest + format: "Lava-Test-Shell Test Definition 1.0" + description: "OP-TEE sanity test suite" + maintainer: + - chase.qi@linaro.org + os: + - openembedded + - debian + scope: + - functional + - performance + devices: + - juno + - hi6220-hikey + +params: + # Test suite level: [0-15] + TEST_LEVEL: "0" + # Available test suite: regression, benchmark + TEST_SUITE: "regression" + +run: + steps: + - cd ./automated/linux/optee/ + - ./optee-xtest.sh -l "${TEST_LEVEL}" -t "${TEST_SUITE}" + - ../../utils/send-to-lava.sh ./output/result.txt |