aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2023-12-15 15:35:24 +0100
committerThomas Huth <thuth@redhat.com>2023-12-20 10:29:23 +0100
commit71dc6ca2a8fa0eca8ab8e87e6a55cb0114fa4c85 (patch)
tree9b8d549b1a93faad9bb1e992b11acb76c0e27b7d
parentfd49b2153ed2448de6798fba31430a8dccea8ed8 (diff)
downloadqemu-71dc6ca2a8fa0eca8ab8e87e6a55cb0114fa4c85.zip
qemu-71dc6ca2a8fa0eca8ab8e87e6a55cb0114fa4c85.tar.gz
qemu-71dc6ca2a8fa0eca8ab8e87e6a55cb0114fa4c85.tar.bz2
tests/qtest/npcm7xx_pwm-test: Only do full testing in slow mode
The npcm7xx_pwm-test can take quite a while when running with --enable-debug on a loaded system. The tests here are quite repetitive - by default it should be fine if we only execute some of them and only execute all when running in slow testing mode. Message-ID: <20231215143524.49241-1-thuth@redhat.com> Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
-rw-r--r--tests/qtest/npcm7xx_pwm-test.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/tests/qtest/npcm7xx_pwm-test.c b/tests/qtest/npcm7xx_pwm-test.c
index ea4ca1d..b53a43c 100644
--- a/tests/qtest/npcm7xx_pwm-test.c
+++ b/tests/qtest/npcm7xx_pwm-test.c
@@ -606,6 +606,7 @@ static void test_toggle(gconstpointer test_data)
uint32_t ppr, csr, pcr, cnr, cmr;
int i, j, k, l;
uint64_t expected_freq, expected_duty;
+ int cnr_step = g_test_quick() ? 2 : 1;
mft_init(qts, td);
@@ -618,7 +619,7 @@ static void test_toggle(gconstpointer test_data)
csr = csr_list[j];
pwm_write_csr(qts, td, csr);
- for (k = 0; k < ARRAY_SIZE(cnr_list); ++k) {
+ for (k = 0; k < ARRAY_SIZE(cnr_list); k += cnr_step) {
cnr = cnr_list[k];
pwm_write_cnr(qts, td, cnr);
@@ -678,6 +679,7 @@ static void pwm_add_test(const char *name, const TestData* td,
int main(int argc, char **argv)
{
TestData test_data_list[ARRAY_SIZE(pwm_module_list) * ARRAY_SIZE(pwm_list)];
+ int pwm_module_list_cnt = 1, pwm_list_cnt = 1;
char *v_env = getenv("V");
@@ -687,8 +689,13 @@ int main(int argc, char **argv)
g_test_init(&argc, &argv, NULL);
- for (int i = 0; i < ARRAY_SIZE(pwm_module_list); ++i) {
- for (int j = 0; j < ARRAY_SIZE(pwm_list); ++j) {
+ if (!g_test_quick()) {
+ pwm_module_list_cnt = ARRAY_SIZE(pwm_module_list);
+ pwm_list_cnt = ARRAY_SIZE(pwm_list);
+ }
+
+ for (int i = 0; i < pwm_module_list_cnt; ++i) {
+ for (int j = 0; j < pwm_list_cnt; ++j) {
TestData *td = &test_data_list[i * ARRAY_SIZE(pwm_list) + j];
td->module = &pwm_module_list[i];