diff options
author | Rajagopal Venkat <rajagopal.venkat@linaro.org> | 2012-07-02 19:38:40 +0530 |
---|---|---|
committer | hongbo.zhang <hongbo.zhang@linaro.com> | 2012-11-28 17:10:56 +0800 |
commit | a206193ee42984daa5b6badd2e39d8f49d8ba17b (patch) | |
tree | 6cdc25936bb74f726500920c99dbaff9e53195ad | |
parent | 120624474f0e6da80add1bb8a79f038e3532f545 (diff) |
pm-qa: run sanity check before running test cases
run sanity test for each functionality if present.
If functionality enabled, then run all respective
test cases. This patch also adds sanity checks for
cpuidle and sched_mc.
Signed-off-by: Rajagopal Venkat <rajagopal.venkat@linaro.org>
-rw-r--r-- | Test.mk | 17 | ||||
-rwxr-xr-x | cpuidle/cpuidle_sanity.sh | 35 | ||||
-rw-r--r-- | cpuidle/cpuidle_sanity.txt | 1 | ||||
-rwxr-xr-x | sched_mc/sched_sanity.sh | 35 | ||||
-rw-r--r-- | sched_mc/sched_sanity.txt | 1 |
5 files changed, 86 insertions, 3 deletions
@@ -21,15 +21,22 @@ # Daniel Lezcano <daniel.lezcano@linaro.org> (IBM Corporation) # - initial API and implementation # - -TST=$(wildcard *.sh) +SNT=$(wildcard *sanity.sh) +TST=$(wildcard *[^(sanity)].sh) LOG=$(TST:.sh=.log) CFLAGS?=-g -Wall -pthread CC?=gcc SRC=$(wildcard *.c) EXEC=$(SRC:%.c=%) -check: uncheck $(EXEC) $(LOG) +check: run_tests + +SANITY_STATUS:= $(shell if test $(SNT) && test -f $(SNT); then \ + ./$(SNT); if test "$$?" -eq 0; then echo 0; else \ + echo 1; fi; else echo 1; fi) + +ifeq "$(SANITY_STATUS)" "1" +run_tests: uncheck $(EXEC) $(LOG) %.log: %.sh @echo "###" @@ -38,6 +45,10 @@ check: uncheck $(EXEC) $(LOG) @echo -n "### "; grep "URL :" ./$< | awk '/http/{print $$NF}' @echo "###" @./$< 2> $@ +else +run_tests: $(SNT) + @cat $(<:.sh=.txt) +endif clean: rm -f *.o $(EXEC) diff --git a/cpuidle/cpuidle_sanity.sh b/cpuidle/cpuidle_sanity.sh new file mode 100755 index 0000000..a8336fa --- /dev/null +++ b/cpuidle/cpuidle_sanity.sh @@ -0,0 +1,35 @@ +#!/bin/bash +# +# PM-QA validation test suite for the power management on Linux +# +# Copyright (C) 2011, Linaro Limited. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Contributors: +# Rajagopal Venkat <rajagopal.venkat@linaro.org> +# - initial API and implementation +# + +source ../include/functions.sh + +check_cpuidle_sysfs_entry() { + + local dirpath=$CPU_PATH/cpuidle + + test -d $dirpath && return 1 || return 0 +} + +check_cpuidle_sysfs_entry diff --git a/cpuidle/cpuidle_sanity.txt b/cpuidle/cpuidle_sanity.txt new file mode 100644 index 0000000..03d3f7c --- /dev/null +++ b/cpuidle/cpuidle_sanity.txt @@ -0,0 +1 @@ +cpuidle is not enabled. Skipping all cpudile tests... diff --git a/sched_mc/sched_sanity.sh b/sched_mc/sched_sanity.sh new file mode 100755 index 0000000..1b1b58b --- /dev/null +++ b/sched_mc/sched_sanity.sh @@ -0,0 +1,35 @@ +#!/bin/bash +# +# PM-QA validation test suite for the power management on Linux +# +# Copyright (C) 2011, Linaro Limited. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Contributors: +# Daniel Lezcano <daniel.lezcano@linaro.org> (IBM Corporation) +# - initial API and implementation +# + +source ../include/functions.sh + +check_sched_mc_sysfs_entry() { + + local filepath=$CPU_PATH/sched_mc_power_savings + + test -f $filepath && return 1 || return 0 +} + +check_sched_mc_sysfs_entry diff --git a/sched_mc/sched_sanity.txt b/sched_mc/sched_sanity.txt new file mode 100644 index 0000000..c79c23e --- /dev/null +++ b/sched_mc/sched_sanity.txt @@ -0,0 +1 @@ +sched_mc is not enabled. Skipping all sched_mc tests... |