diff options
author | Lisa Nguyen <lisa.nguyen@linaro.org> | 2014-08-04 12:30:43 -0700 |
---|---|---|
committer | Sanjay Singh Rawat <sanjay.rawat@linaro.org> | 2014-08-06 11:51:29 +0530 |
commit | e2877d52916b3b8aca1e80fb27dde0c0b8c0bf28 (patch) | |
tree | a063fb1aa9139484f7016998b6d80ad00383e80f | |
parent | e5726c116cf7a3fdda5c1cbb85bd5547e535a0a7 (diff) |
Refactor pass/fail/skip code in PM-QA
Focus on returning the results of each test script rather
than the results of each subtest. This will help to keep the
number of PM-QA test results consistent across multiple boards
regardless of number of frequencies, cores, etc.
Examples before the refactoring:
https://validation.linaro.org/dashboard/streams
/anonymous/lisatn/bundles/331786fb33a49b060adccf51bb509d5f286422e7/
Examples after the refactoring:
https://validation.linaro.org/dashboard/streams/anonymous
/lisatn/bundles/076a3f890e58727f01a23e30d6eb438172b69c7d/
Once this patch is accepted and merged, then there will be a
follow up patch to update the pwrmgmt test definition, so LAVA
can record PM-QA results accurately.
bug : https://bugs.linaro.org/show_bug.cgi?id=155
Acked-by: Sanjay Singh Rawat<sanjay.rawat@linaro.org>
Signed-off-by: Lisa Nguyen <lisa.nguyen@linaro.org>
-rwxr-xr-x | cpufreq/cpufreq_07.sh | 2 | ||||
-rw-r--r-- | include/functions.sh | 35 | ||||
-rwxr-xr-x | thermal/thermal_05.sh | 3 | ||||
-rwxr-xr-x | thermal/thermal_06.sh | 2 |
4 files changed, 34 insertions, 8 deletions
diff --git a/cpufreq/cpufreq_07.sh b/cpufreq/cpufreq_07.sh index f8f9e8e..b65d212 100755 --- a/cpufreq/cpufreq_07.sh +++ b/cpufreq/cpufreq_07.sh @@ -74,7 +74,7 @@ check_ondemand() { supported=$(cat $CPU_PATH/cpu0/cpufreq/scaling_available_governors | grep "ondemand") if [ -z "$supported" ]; then log_skip "ondemand not supported" - exit 0 + return 0 fi save_governors diff --git a/include/functions.sh b/include/functions.sh index 5823a81..82d8139 100644 --- a/include/functions.sh +++ b/include/functions.sh @@ -32,14 +32,31 @@ INC=0 CPU= pass_count=0 fail_count=0 +skip_count=0 +test_script_status="pass" test_status_show() { - echo "-------- total = $(($pass_count + $fail_count))" - echo "-------- pass = $pass_count" - # report failure only if it is there - if [ $fail_count -ne 0 ] ; then - echo "-------- fail = $fail_count" + if [ $fail_count -ne 0 ]; then + test_script_status="fail" + else + if [ $skip_count -ne 0 ]; then + if [ $pass_count -ne 0 ]; then + test_script_status="pass" + else + test_script_status="skip" + fi + fi + fi + + echo " " + if [[ "$test_script_status" == "fail" ]]; then + echo "$TEST_NAME: fail" + elif [[ "$test_script_status" == "skip" ]]; then + echo "$TEST_NAME: skip" + else + echo "$TEST_NAME: pass" fi + echo " " } log_begin() { @@ -49,6 +66,14 @@ log_begin() { log_end() { printf "$*\n" + + if [[ "$*" == "Err" ]]; then + fail_count=$((fail_count + 1)) + elif [[ "$*" == "skip" ]]; then + skip_count=$((skip_count + 1)) + else + pass_count=$((pass_count + 1)) + fi } log_skip() { diff --git a/thermal/thermal_05.sh b/thermal/thermal_05.sh index 05f83d1..52a0ac2 100755 --- a/thermal/thermal_05.sh +++ b/thermal/thermal_05.sh @@ -36,7 +36,8 @@ verify_cpufreq_cooling_device_action() { local cpufreq_cdev=$(cat $dirpath/type) cat $dirpath/type | grep cpufreq if [ $? -ne 0 ] ; then - return 0 + log_skip "Cannot find cpufreq in $cdev_name..." + return 0 fi local max_state=$(cat $dirpath/max_state) diff --git a/thermal/thermal_06.sh b/thermal/thermal_06.sh index 92c987a..d8877f0 100755 --- a/thermal/thermal_06.sh +++ b/thermal/thermal_06.sh @@ -30,7 +30,7 @@ source ../include/thermal_functions.sh if [ "$thermal_try_max" -eq 0 ]; then log_skip "test of trip points being crossed" - exit 0 + return 0 fi TEST_LOOP=100 |