diff options
Diffstat (limited to 'zephyr/test/ec_app/src/main.c')
-rw-r--r-- | zephyr/test/ec_app/src/main.c | 109 |
1 files changed, 47 insertions, 62 deletions
diff --git a/zephyr/test/ec_app/src/main.c b/zephyr/test/ec_app/src/main.c index 47aecc7eca..b106754d47 100644 --- a/zephyr/test/ec_app/src/main.c +++ b/zephyr/test/ec_app/src/main.c @@ -1,74 +1,71 @@ -/* Copyright 2021 The Chromium OS Authors. All rights reserved. +/* Copyright 2021 The ChromiumOS Authors * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ -#include <ztest.h> +#include <zephyr/ztest_assert.h> +#include <zephyr/ztest_test_new.h> +#include <zephyr/shell/shell_dummy.h> + #include "ec_app_main.h" #include "hooks.h" +#include "task.h" -static void test_init_reset_log(void) -{ #ifdef CONFIG_CMD_AP_RESET_LOG +ZTEST(ec_app_tests, test_init_reset_log) +{ zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif } +#endif -static void test_lpc_init_mask(void) -{ #ifdef CONFIG_HOSTCMD_X86 +ZTEST(ec_app_tests, test_lpc_init_mask) +{ zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif } +#endif -static void test_keyboard_scan_init(void) -{ #ifdef HAS_TASK_KEYSCAN +ZTEST(ec_app_tests, test_keyboard_scan_init) +{ zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif } +#endif -static void test_button_init(void) -{ #if defined(CONFIG_DEDICATED_RECOVERY_BUTTON) || defined(CONFIG_VOLUME_BUTTONS) +ZTEST(ec_app_tests, test_button_init) +{ zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif } +#endif -static void test_setup_espi(void) -{ #ifdef CONFIG_PLATFORM_EC_HOST_INTERFACE_ESPI +ZTEST(ec_app_tests, test_setup_espi) +{ zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif } +#endif -static void test_watchdog_init(void) -{ #ifdef CONFIG_PLATFORM_EC_WATCHDOG +ZTEST(ec_app_tests, test_watchdog_init) +{ zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif } +#endif -static void test_vboot_main(void) -{ #ifdef CONFIG_PLATFORM_EC_VBOOT_EFS2 - zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); -#endif +ZTEST(ec_app_tests, test_vboot_main) +{ + const struct shell *shell_zephyr = get_ec_shell(); + const char *outbuffer; + size_t buffer_size; + + /* vboot_main logs the message "VB Verifying hash" */ + outbuffer = shell_backend_dummy_get_output(shell_zephyr, &buffer_size); + zassert_true(strstr(outbuffer, "VB Verifying hash") != NULL, + "'VB Verifying hash' not found in %s", outbuffer); } +#endif #ifdef CONFIG_PLATFORM_EC_HOOKS static int sample_init_hook_count; @@ -88,40 +85,28 @@ DECLARE_HOOK(HOOK_INIT, sample_init_hook, HOOK_PRIO_DEFAULT); * This test installs a hook, runs main and verifies that the hook ran. * */ -static void test_hook_notify_init(void) +ZTEST(ec_app_tests, test_hook_notify_init) { - sample_init_hook_count = 0; - ec_app_main(); zassert_equal(1, sample_init_hook_count, "Expected sample_init_hook to run once."); } -#else -static void test_hook_notify_init(void) +#endif + +#ifdef CONFIG_SHIMMED_TASKS +ZTEST(ec_app_tests, test_start_ec_tasks) { - ztest_test_skip(); + zassert_equal(task_start_called(), 1, "Tasks did not start."); } #endif -static void test_start_ec_tasks(void) +/* Does setup for all of the test cases. */ +void *ec_app_setup(void) { #ifdef CONFIG_SHIMMED_TASKS - zassert_unreachable("TODO: Implement this test."); -#else - ztest_test_skip(); + zassert_equal(task_start_called(), 0, "Tasks have already started."); #endif + ec_app_main(); + return NULL; } -void test_main(void) -{ - ztest_test_suite(ec_app_tests, ztest_unit_test(test_init_reset_log), - ztest_unit_test(test_lpc_init_mask), - ztest_unit_test(test_keyboard_scan_init), - ztest_unit_test(test_button_init), - ztest_unit_test(test_setup_espi), - ztest_unit_test(test_watchdog_init), - ztest_unit_test(test_vboot_main), - ztest_unit_test(test_hook_notify_init), - ztest_unit_test(test_start_ec_tasks)); - - ztest_run_test_suite(ec_app_tests); -} +ZTEST_SUITE(ec_app_tests, NULL, ec_app_setup, NULL, NULL, NULL); |