diff options
author | Simon Glass <sjg@chromium.org> | 2015-11-08 23:47:50 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-11-19 20:27:51 -0700 |
commit | 9ce8b40206f4f96de6164c2a0c0a725c9323c4b9 (patch) | |
tree | 97b5a359149976a31ca4e5b273ea945dd62280b1 /test | |
parent | 61b4d3558e9236ee9554a0da65f8ce139cbd3560 (diff) | |
download | u-boot-imx-9ce8b40206f4f96de6164c2a0c0a725c9323c4b9.zip u-boot-imx-9ce8b40206f4f96de6164c2a0c0a725c9323c4b9.tar.gz u-boot-imx-9ce8b40206f4f96de6164c2a0c0a725c9323c4b9.tar.bz2 |
test: Record and silence console in tests
When running sandbox tests, silence the console to avoid unwanted output.
Also, record the console in case tests want to check it.
The -v option can be used to enable stdout during tests.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'test')
-rw-r--r-- | test/dm/test-main.c | 9 | ||||
-rw-r--r-- | test/ut.c | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/test/dm/test-main.c b/test/dm/test-main.c index 867b517..91bdda8 100644 --- a/test/dm/test-main.c +++ b/test/dm/test-main.c @@ -76,6 +76,7 @@ static int dm_test_main(const char *test_name) struct unit_test *tests = ll_entry_start(struct unit_test, dm_test); const int n_ents = ll_entry_count(struct unit_test, dm_test); struct unit_test_state *uts = &global_dm_test_state; + struct sandbox_state *state = state_get_current(); uts->priv = &_global_priv_dm_test_state; struct unit_test *test; int run_count; @@ -114,7 +115,15 @@ static int dm_test_main(const char *test_name) if (test->flags & DM_TESTF_SCAN_FDT) ut_assertok(dm_scan_fdt(gd->fdt_blob, false)); + /* + * Silence the console and rely on console reocrding to get + * our output. + */ + console_record_reset(); + if (!state->show_test_output) + gd->flags |= GD_FLG_SILENT; test->func(uts); + gd->flags &= ~GD_FLG_SILENT; state_set_skip_delays(false); ut_assertok(dm_test_destroy(uts)); @@ -10,9 +10,12 @@ #include <test/test.h> #include <test/ut.h> +DECLARE_GLOBAL_DATA_PTR; + void ut_fail(struct unit_test_state *uts, const char *fname, int line, const char *func, const char *cond) { + gd->flags &= ~(GD_FLG_SILENT | GD_FLG_RECORD); printf("%s:%d, %s(): %s\n", fname, line, func, cond); uts->fail_count++; } @@ -22,6 +25,7 @@ void ut_failf(struct unit_test_state *uts, const char *fname, int line, { va_list args; + gd->flags &= ~(GD_FLG_SILENT | GD_FLG_RECORD); printf("%s:%d, %s(): %s: ", fname, line, func, cond); va_start(args, fmt); vprintf(fmt, args); |