aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLisa Nguyen <lisa.nguyen@linaro.org>2014-08-04 12:30:43 -0700
committerSanjay Singh Rawat <sanjay.rawat@linaro.org>2014-08-06 11:51:29 +0530
commite2877d52916b3b8aca1e80fb27dde0c0b8c0bf28 (patch)
treea063fb1aa9139484f7016998b6d80ad00383e80f
parente5726c116cf7a3fdda5c1cbb85bd5547e535a0a7 (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-xcpufreq/cpufreq_07.sh2
-rw-r--r--include/functions.sh35
-rwxr-xr-xthermal/thermal_05.sh3
-rwxr-xr-xthermal/thermal_06.sh2
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