summaryrefslogtreecommitdiff
path: root/tests/vboot_detach_menu_tests.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/vboot_detach_menu_tests.c')
-rw-r--r--tests/vboot_detach_menu_tests.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/vboot_detach_menu_tests.c b/tests/vboot_detach_menu_tests.c
index 3d30683a..f494dc91 100644
--- a/tests/vboot_detach_menu_tests.c
+++ b/tests/vboot_detach_menu_tests.c
@@ -1333,6 +1333,20 @@ static void VbBootRecTest(void)
TEST_EQ(screens_count, 2, " no extra screens");
TEST_EQ(beeps_count, 0, " no beep on shutdown");
+ /* go to INSERT if forced by GBB flag */
+ ResetMocks();
+ vbtlk_retval[0] = VBERROR_NO_DISK_FOUND - VB_DISK_FLAG_REMOVABLE;
+ sd->gbb_flags |= GBB_FLAG_FORCE_MANUAL_RECOVERY;
+ TEST_EQ(VbBootRecoveryMenu(&ctx), VBERROR_SHUTDOWN_REQUESTED,
+ "Shutdown requested in INSERT forced by GBB flag");
+ TEST_EQ(vb2_nv_get(&ctx, VB2_NV_RECOVERY_REQUEST), 0, " no recovery");
+ TEST_EQ(debug_info_displayed, 0, " no debug info");
+ TEST_EQ(screens_displayed[0], VB_SCREEN_RECOVERY_INSERT,
+ " insert screen");
+ TEST_EQ(screens_displayed[1], VB_SCREEN_BLANK, " final blank screen");
+ TEST_EQ(screens_count, 2, " no extra screens");
+ TEST_EQ(beeps_count, 0, " no beep on shutdown");
+
/* Stay at BROKEN if recovery button not physically pressed */
ResetMocksForManualRecovery();
vbtlk_retval[0] = VBERROR_NO_DISK_FOUND - VB_DISK_FLAG_REMOVABLE;