diff options
Diffstat (limited to 'tests/vb2_ui_tests.c')
-rw-r--r-- | tests/vb2_ui_tests.c | 53 |
1 files changed, 18 insertions, 35 deletions
diff --git a/tests/vb2_ui_tests.c b/tests/vb2_ui_tests.c index a56e0a4a..47c70466 100644 --- a/tests/vb2_ui_tests.c +++ b/tests/vb2_ui_tests.c @@ -42,7 +42,7 @@ static struct vb2_shared_data *sd; static struct vb2_gbb_header gbb; static struct vb2_ui_context mock_ui_context; -static struct vb2_screen_state *mock_state; +static struct vb2_screen_state mock_state; static struct display_call mock_displayed[64]; static int mock_displayed_count; @@ -248,7 +248,7 @@ static void reset_common_data(enum reset_type t) /* Mock ui_context based on real screens */ memset(&mock_ui_context, 0, sizeof(mock_ui_context)); mock_ui_context.ctx = ctx; - mock_state = &mock_ui_context.state; + mock_ui_context.state = &mock_state; /* For vb2ex_display_ui */ memset(mock_displayed, 0, sizeof(mock_displayed)); @@ -653,6 +653,9 @@ static void developer_tests(void) "if dev mode is disabled, goes to to_norm screen repeatedly"); DISPLAYED_EQ("to_norm", VB2_SCREEN_DEVELOPER_TO_NORM, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); + DISPLAYED_PASS(); + DISPLAYED_EQ("to_norm", VB2_SCREEN_DEVELOPER_TO_NORM, + MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); DISPLAYED_NO_EXTRA(); /* Select to_norm in dev menu and confirm */ @@ -1040,10 +1043,11 @@ static void developer_screen_tests(void) add_mock_keypress(VB_KEY_ENTER); /* #1: Return to secure mode */ add_mock_keypress(VB_KEY_ESC); - add_mock_keypress(VB_KEY_UP); + add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); /* #2: Boot internal */ add_mock_keypress(VB_KEY_ESC); + add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); TEST_EQ(vb2_developer_menu(ctx), VB2_SUCCESS, "dev mode screen"); @@ -1061,6 +1065,7 @@ static void developer_screen_tests(void) DISPLAYED_EQ("#1: return to secure mode", VB2_SCREEN_DEVELOPER_TO_NORM, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* #2: Boot internal */ + DISPLAYED_PASS(); DISPLAYED_EQ("dev mode", VB2_SCREEN_DEVELOPER_MODE, MOCK_IGNORE, 2, MOCK_IGNORE); VB2_DEBUG("#2: boot internal (no extra screen)\n"); @@ -1088,7 +1093,7 @@ static void developer_screen_tests(void) /* End of menu */ add_mock_keypress(VB_KEY_ESC); add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); + add_mock_keypress(VB_KEY_DOWN); /* Blocked */ TEST_EQ(vb2_developer_menu(ctx), VB2_REQUEST_SHUTDOWN, "dev mode screen"); /* #4: Advanced options */ @@ -1100,9 +1105,8 @@ static void developer_screen_tests(void) MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* End of menu */ DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("end of menu", VB2_SCREEN_DEVELOPER_MODE, - MOCK_IGNORE, 4, MOCK_IGNORE); + MOCK_IGNORE, 5, MOCK_IGNORE); DISPLAYED_NO_EXTRA(); /* Advanced options screen */ @@ -1117,12 +1121,8 @@ static void developer_screen_tests(void) /* #2: Back */ add_mock_keypress(VB_KEY_ESC); add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_ENTER); add_mock_keypress(VB_KEY_ENTER); /* End of menu */ - add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); extend_calls_until_shutdown(); TEST_EQ(vb2_developer_menu(ctx), VB2_REQUEST_SHUTDOWN, @@ -1130,8 +1130,8 @@ static void developer_screen_tests(void) DISPLAYED_PASS(); DISPLAYED_PASS(); DISPLAYED_PASS(); - /* #0: Language menu */ DISPLAYED_PASS(); + /* #0: Language menu */ DISPLAYED_EQ("advanced options", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, 0, 0x2); DISPLAYED_EQ("#0: language menu", VB2_SCREEN_LANGUAGE_SELECT, @@ -1139,15 +1139,11 @@ static void developer_screen_tests(void) /* #1: (Disabled) */ /* #2: Back */ DISPLAYED_PASS(); - DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("advanced options", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, 2, 0x2); DISPLAYED_EQ("#2: back", VB2_SCREEN_DEVELOPER_MODE, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* End of menu */ - DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("end of menu", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, 2, MOCK_IGNORE); DISPLAYED_NO_EXTRA(); @@ -1164,6 +1160,7 @@ static void broken_recovery_screen_tests(void) add_mock_keypress(VB_KEY_ENTER); /* #1: Advanced options */ add_mock_keypress(VB_KEY_ESC); + add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); /* End of menu */ add_mock_keypress(VB_KEY_ESC); @@ -1177,6 +1174,7 @@ static void broken_recovery_screen_tests(void) DISPLAYED_EQ("#0: language menu", VB2_SCREEN_LANGUAGE_SELECT, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* #1: Advanced options */ + DISPLAYED_PASS(); DISPLAYED_EQ("broken screen", VB2_SCREEN_RECOVERY_BROKEN, MOCK_IGNORE, 1, 0x0); DISPLAYED_EQ("#1: advanced options", VB2_SCREEN_ADVANCED_OPTIONS, @@ -1195,7 +1193,7 @@ static void broken_recovery_screen_tests(void) /* #1: (Disabled) */ /* #2: Back */ add_mock_keypress(VB_KEY_ESC); - add_mock_keypress(VB_KEY_ENTER); + add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); /* End of menu */ add_mock_keypress(VB_KEY_ENTER); @@ -1233,6 +1231,7 @@ static void manual_recovery_screen_tests(void) add_mock_keypress(VB_KEY_ENTER); /* #1: Phone recovery */ add_mock_keypress(VB_KEY_ESC); + add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); /* #2: External disk recovery */ add_mock_keypress(VB_KEY_ESC); @@ -1241,12 +1240,11 @@ static void manual_recovery_screen_tests(void) /* #3: Advanced options */ add_mock_keypress(VB_KEY_ESC); add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); /* End of menu */ add_mock_keypress(VB_KEY_ESC); add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); + add_mock_keypress(VB_KEY_DOWN); /* Blocked */ extend_calls_until_shutdown(); TEST_EQ(vb2_manual_recovery_menu(ctx), VB2_REQUEST_SHUTDOWN, "recovery select screen"); @@ -1257,6 +1255,7 @@ static void manual_recovery_screen_tests(void) DISPLAYED_EQ("#0: language menu", VB2_SCREEN_LANGUAGE_SELECT, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* #1: Phone recovery */ + DISPLAYED_PASS(); DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT, MOCK_IGNORE, 1, 0x0); DISPLAYED_EQ("#1: phone recovery", VB2_SCREEN_RECOVERY_PHONE_STEP1, @@ -1269,16 +1268,14 @@ static void manual_recovery_screen_tests(void) MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* #3: Advanced options */ DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT, MOCK_IGNORE, 3, 0x0); DISPLAYED_EQ("#3: advanced options", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* End of menu */ DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("end of menu", VB2_SCREEN_RECOVERY_SELECT, - MOCK_IGNORE, 3, MOCK_IGNORE); + MOCK_IGNORE, 4, MOCK_IGNORE); DISPLAYED_NO_EXTRA(); /* Advanced options screen */ @@ -1292,19 +1289,12 @@ static void manual_recovery_screen_tests(void) /* #1: Enable dev mode */ add_mock_keypress(VB_KEY_ESC); add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_ENTER); add_mock_keypress(VB_KEY_ENTER); /* #2: Back */ add_mock_keypress(VB_KEY_ESC); add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_ENTER); - add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); /* End of menu */ - add_mock_keypress(VB_KEY_DOWN); - add_mock_keypress(VB_KEY_DOWN); add_mock_keypress(VB_KEY_ENTER); add_mock_keypress(VB_KEY_DOWN); extend_calls_until_shutdown(); @@ -1321,25 +1311,18 @@ static void manual_recovery_screen_tests(void) MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* #1: Enable dev mode */ DISPLAYED_PASS(); - DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("advanced options", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, 1, 0x0); DISPLAYED_EQ("#1: enable dev mode", VB2_SCREEN_RECOVERY_TO_DEV, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* #2: Back */ DISPLAYED_PASS(); - DISPLAYED_PASS(); - DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("advanced options", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, 2, 0x0); DISPLAYED_EQ("#2: back", VB2_SCREEN_RECOVERY_SELECT, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE); /* End of menu */ DISPLAYED_PASS(); - DISPLAYED_PASS(); - DISPLAYED_PASS(); DISPLAYED_EQ("end of menu", VB2_SCREEN_ADVANCED_OPTIONS, MOCK_IGNORE, 2, 0x0); DISPLAYED_NO_EXTRA(); |