diff options
author | Naresh Kamboju <naresh.kamboju@linaro.org> | 2017-05-30 15:02:23 +0530 |
---|---|---|
committer | Milosz Wasilewski <milosz.wasilewski@linaro.org> | 2017-05-31 06:24:59 +0000 |
commit | 687ede45a260573b92e16ecfb11df276893f1351 (patch) | |
tree | 4d0660839d337c28c91fe18e4cd4b05904d8d2b5 /automated/linux/kselftest/kselftest.sh | |
parent | d9d7b6588b7e74078581c173432de0dbc3333d0a (diff) |
automated: linux: kselftest: Adding SKIPLIST and SKIPFILE parameters
Known unsupported test cases list can be provided by using,
SKIPLIST or SKIPFILE parameters which will be skipped from the run.
Change-Id: I844dd6a9cded5a18bd1a21bc63320f4a3a3e7d83
Signed-off-by: Naresh Kamboju <naresh.kamboju@linaro.org>
Diffstat (limited to 'automated/linux/kselftest/kselftest.sh')
-rwxr-xr-x | automated/linux/kselftest/kselftest.sh | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/automated/linux/kselftest/kselftest.sh b/automated/linux/kselftest/kselftest.sh index 3369c46..d0c2596 100755 --- a/automated/linux/kselftest/kselftest.sh +++ b/automated/linux/kselftest/kselftest.sh @@ -8,20 +8,44 @@ RESULT_FILE="${OUTPUT}/result.txt" LOGFILE="${OUTPUT}/kselftest.txt" TESTPROG="kselftest_armhf.tar.gz" KSELFTEST_PATH="/usr/bin/kselftests" + +SCRIPT="$(readlink -f "${0}")" +SCRIPTPATH="$(dirname "${SCRIPT}")" +# List of known unsupported test cases to be skipped +SKIPFILE="" +SKIPLIST="" + if [ "$(uname -m)" = "aarch64" ] then TESTPROG="kselftest_aarch64.tar.gz" fi usage() { - echo "Usage: $0 [-t kselftest_aarch64.tar.gz | kselftest_armhf.tar.gz] [-s true|false]" 1>&2 + echo "Usage: $0 [-t kselftest_aarch64.tar.gz | kselftest_armhf.tar.gz] + [-s True|False] + [-L List of skip test cases] + [-S kselftest-skipfile]" 1>&2 exit 1 } -while getopts "t:s:h" opt; do +while getopts "t:s:L:S:h" opt; do case "${opt}" in t) TESTPROG="${OPTARG}" ;; s) SKIP_INSTALL="${OPTARG}" ;; + # List of known unsupported test cases to be skipped + L) SKIPLIST="${OPTARG}" ;; + S) + OPT=$(echo "${OPTARG}" | grep "http") + if [ -z "${OPT}" ] ; then + # kselftest skipfile + SKIPFILE="${SCRIPTPATH}/${OPTARG}" + else + # Download kselftest skipfile from speficied URL + wget "${OPTARG}" -O "skipfile" + SKIPFILE="skipfile" + SKIPFILE="${SCRIPTPATH}/${SKIPFILE}" + fi + ;; h|*) usage ;; esac done @@ -63,6 +87,22 @@ else cd "kselftest" fi +if [ -n "${SKIPLIST}" ]; then + # shellcheck disable=SC2086 + for test_name in ${SKIPLIST}; do + # shellcheck disable=SC2086 + sed -i "/.\/${test_name}/c\echo \"selftests: ${test_name} [SKIP]\"" run_kselftest.sh + done +fi + +# Ignore SKIPFILE when SKIPLIST provided +if [ -f "${SKIPFILE}" ] && [ -z "${SKIPLIST}" ]; then + while read -r test_name; do + # shellcheck disable=SC2086 + sed -i "/.\/${test_name}/c\echo \"selftests: ${test_name} [SKIP]\"" run_kselftest.sh + done < "${SKIPFILE}" +fi + # run_kselftest.sh file generated by kselftest Makefile and included in tarball ./run_kselftest.sh 2>&1 | tee "${LOGFILE}" parse_output |