diff options
author | Vic Yang <victoryang@chromium.org> | 2013-06-12 00:08:56 +0800 |
---|---|---|
committer | ChromeBot <chrome-bot@google.com> | 2013-06-16 20:14:01 -0700 |
commit | aaac3935d2e82b281979045a390f0b7d2c79b281 (patch) | |
tree | 8eafe931dd051f04ad85f7a270c6aafdd628deb0 /common/test_util.c | |
parent | 7402388c587e03181559f859f797f27c840c32ab (diff) | |
download | chrome-ec-aaac3935d2e82b281979045a390f0b7d2c79b281.tar.gz |
Make target for test coverage report generation
By 'make coverage', lcov is used to generate test coverage report in
HTML format stored in coverage_rpt folder.
BUG=chrome-os-partner:19235
TEST=Generate a report.
BRANCH=None
Change-Id: I44142eaaeb897cf09179764781120370920144cd
Signed-off-by: Vic Yang <victoryang@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/58203
Diffstat (limited to 'common/test_util.c')
-rw-r--r-- | common/test_util.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/common/test_util.c b/common/test_util.c index 7cd9850645..b9b6a7a13f 100644 --- a/common/test_util.c +++ b/common/test_util.c @@ -5,6 +5,9 @@ * Test utilities. */ +#include <signal.h> +#include <stdlib.h> + #include "console.h" #include "test_util.h" #include "util.h" @@ -14,11 +17,40 @@ int __test_error_count; /* Weak reference function as an entry point for unit test */ test_mockable void run_test(void) { } +#ifdef TEST_COVERAGE +extern void __gcov_flush(void); + +void test_end_hook(int sig) +{ + __gcov_flush(); + exit(0); +} + +void register_test_end_hook(void) +{ + signal(SIGTERM, test_end_hook); +} +#else +void register_test_end_hook(void) +{ +} +#endif + void test_reset(void) { __test_error_count = 0; } +void test_pass(void) +{ + ccprintf("Pass!\n"); +} + +void test_fail(void) +{ + ccprintf("Fail!\n"); +} + void test_print_result(void) { if (__test_error_count) |