Batch Test Summary - Frontend (5 shards, merged)

Shard 1 of 5

Batch Test Summary - Frontend

Run: 2026-10-04 19:10:29  |  Marker: all tests  |  Overall result: FAILED

226
Total
221
Passed
4
Failed
0
Errors
1
Skipped

Suites

Suite Status Total Passed Failed Errors Skipped Duration Browser
about PASSED 17 17 0 0 0 22.30s chromium
dashboard FAILED 46 44 1 0 1 12m 36s chromium
logout PASSED 6 6 0 0 0 1m 16s chromium
unit FAILED 157 154 3 0 0 34.87s chromium

Test Detail

Suite: about

Class Test Status Duration
tests.about.test_RDTNMVPQ_656_about_page test_656_about_page_loads PASSED 5.82s
tests.about.test_RDTNMVPQ_656_about_page test_656_about_page_url_contains_about PASSED 1.00s
tests.about.test_RDTNMVPQ_656_about_page test_656_about_mission_section_visible PASSED 1.04s
tests.about.test_RDTNMVPQ_656_about_page test_656_about_journey_section_visible PASSED 1.00s
tests.about.test_RDTNMVPQ_656_about_page test_656_about_impact_stats_visible PASSED 1.04s
tests.about.test_RDTNMVPQ_656_about_page test_656_about_footer_privacy_link_visible PASSED 1.07s
tests.about.test_RDTNMVPQ_656_about_page test_656_about_footer_terms_link_visible PASSED 1.02s
tests.about.test_about test_about_page_loads PASSED 0.98s
tests.about.test_about test_about_page_heading_visible PASSED 1.06s
tests.about.test_about test_about_mission_section_visible PASSED 1.31s
tests.about.test_about test_about_values_section_visible PASSED 1.00s
tests.about.test_about test_about_journey_section_visible PASSED 0.95s
tests.about.test_about test_about_partner_schools_stat PASSED 0.96s
tests.about.test_about test_about_active_students_stat PASSED 1.00s
tests.about.test_about test_about_satisfaction_rate_stat PASSED 1.03s
tests.about.test_about test_about_mission_body_text PASSED 0.99s
tests.about.test_about test_about_foundation_year_in_timeline PASSED 1.01s

Suite: dashboard

Class Test Status Duration
tests.dashboard.test_EI_1196_zero_score_submission_counted_in_dashboard test_EI_1196_positive_zero_score_submission_counted_in_dashboard PASSED 45.77s
tests.dashboard.test_EI_1240_teacher_dashboard_classes_count test_EI_TC_4525_positive_dashboard_classes_count_matches_actual_and_updates_on_add PASSED 33.26s
tests.dashboard.test_EI_1240_teacher_dashboard_classes_count test_EI_1240_positive_dashboard_classes_count_updates_on_removal PASSED 32.83s
tests.dashboard.test_EI_1301_view_class_statistics_e2e test_EI_TC_2967_positive_teacher_views_class_statistics_with_valid_access PASSED 38.94s
tests.dashboard.test_EI_1301_view_class_statistics_e2e test_EI_TC_2968_negative_teacher_without_statistics_permission_is_handled PASSED 5.28s
tests.dashboard.test_EI_1307_view_teacher_dashboard test_EI_1307_view_teacher_dashboard PASSED 7.41s
tests.dashboard.test_EI_1307_view_teacher_dashboard test_EI_TC_3973_positive_view_teacher_dashboard_happy_path PASSED 3.37s
tests.dashboard.test_EI_1307_view_teacher_dashboard test_EI_TC_3975_negative_unauthenticated_user_cannot_view_teacher_dashboard PASSED 0.94s
tests.dashboard.test_EI_1322_student_view_profile test_EI_1322_student_view_profile PASSED 2.12s
tests.dashboard.test_EI_1327_student_progress_displayed test_EI_1327_positive_student_progress_displayed_on_dashboard PASSED 3.41s
tests.dashboard.test_EI_1340_student_view_current_grades test_EI_TC_1340_positive_student_views_accurate_current_grades_across_classes PASSED 42.05s
tests.dashboard.test_EI_1344_student_dashboard_stat_card_accuracy test_EI_1344_student_dashboard_stat_cards_show_valid_counts PASSED 3.85s
tests.dashboard.test_EI_1346_view_grade_history test_EI_1346_A_positive_dashboard_grade_overview_reflects_real_submission PASSED 28.29s
tests.dashboard.test_EI_1346_view_grade_history test_EI_1346_B_positive_classes_page_filters_by_term PASSED 43.83s
tests.dashboard.test_EI_2384_student_dashboard_classes_count test_EI_2384_student_dashboard_classes_count_matches_classes_page PASSED 3.86s
tests.dashboard.test_EI_2452_student_dashboard_fullscreen test_EI_2452_student_dashboard_fullscreen_mode PASSED 1.70s
tests.dashboard.test_EI_2619_teacher_dashboard_fullscreen test_EI_2619_teacher_dashboard_fullscreen_mode PASSED 1.79s
tests.dashboard.test_EI_2755_initial_teacher_dashboard test_EI_2755_positive_initial_teacher_dashboard_loads_and_functions PASSED 2.79s
tests.dashboard.test_EI_2819_teacher_dashboard_large_dataset test_EI_2819_positive_dashboard_handles_large_number_of_classes PASSED 11.07s
tests.dashboard.test_EI_2894_initial_student_dashboard test_EI_TC_3867_positive_dashboard_loads_with_components_and_statistics PASSED 26.11s
tests.dashboard.test_EI_2894_initial_student_dashboard test_EI_TC_3868_negative_invalid_login_attempt_is_rejected PASSED 47.82s
tests.dashboard.test_EI_2894_initial_student_dashboard test_EI_2894_positive_sidebar_navigation_from_dashboard_works PASSED 2.31s
tests.dashboard.test_EI_2966_student_dashboard test_EI_TC_2012_positive_student_dashboard_loads_with_complete_statistics_and_6_backfil… PASSED 1.93s
tests.dashboard.test_EI_2966_student_dashboard test_EI_TC_2013_positive_real_time_data_refresh_without_navigation PASSED 33.45s
tests.dashboard.test_EI_2966_student_dashboard test_EI_TC_2014_negative_missing_enrollment_data_handled_gracefully PASSED 1.90s
tests.dashboard.test_EI_3109_date_format test_EI_TC_4122_positive_dates_render_as_month_dd_yyyy PASSED 1.40s
tests.dashboard.test_EI_3109_date_format test_EI_TC_4123_negative_no_non_conforming_date_format_is_shown PASSED 1.39s
tests.dashboard.test_EI_3209_analytics_dashboard test_EI_TC_3243_dashboard_auto_refreshes
Teacher dashboard auto-refresh is unwired (useAutoRefresh is student-only) — app-side gap flagged for eruditiontx-client-mvp; see EI-3209.
SKIPPED 0.15s
tests.dashboard.test_EI_3209_analytics_dashboard test_EI_TC_3244_charts_expose_export_toolbar
playwright._impl._errors.TimeoutError: Locator.wait_for: Timeout 30000ms exceeded. Call log: - waiting for locator(".apexcharts-canvas").first to be visible
FAILED 1m 36s
tests.dashboard.test_EI_596_student_dashboard_initial_environment test_EI_TC_105_positive_dashboard_default_view_loads PASSED 1.74s
tests.dashboard.test_EI_596_student_dashboard_initial_environment test_EI_TC_105_positive_dashboard_default_view_widgets_render PASSED 1.69s
tests.dashboard.test_EI_596_student_dashboard_initial_environment test_EI_TC_107_positive_dashboard_tooltip_and_icon_accessibility PASSED 1.81s
tests.dashboard.test_EI_754_verify_teacher_semester_year test_EI_TC_237_positive_display_current_semester_and_year_on_teacher_dashboard PASSED 1m 01s
tests.dashboard.test_EI_754_verify_teacher_semester_year test_EI_TC_238_positive_display_semester_and_year_on_student_profiles PASSED 37.60s
tests.dashboard.test_EI_754_verify_teacher_semester_year test_EI_TC_239_positive_display_semester_and_year_in_class_roster PASSED 12.33s
tests.dashboard.test_EI_754_verify_teacher_semester_year test_EI_TC_240_negative_mismatch_semester_year_display PASSED 44.30s
tests.dashboard.test_EI_754_verify_teacher_semester_year test_EI_TC_243_edge_accessibility_readable_display PASSED 12.05s
tests.dashboard.test_EI_804_teacher_search_student_profile test_EI_TC_5301_positive_search_exact_student_name_shows_profile_in_results PASSED 2.94s
tests.dashboard.test_EI_804_teacher_search_student_profile test_EI_TC_5302_negative_search_nonexistent_student_shows_no_results_without_error PASSED 4.29s
tests.dashboard.test_EI_804_teacher_search_student_profile test_EI_TC_5303_edge_partial_middle_name_search_returns_matching_student PASSED 3.31s
tests.dashboard.test_EI_810_student_search_teacher_profile test_EI_810_teacher_search_widget_accessible_and_input_functional_on_student_dashboard PASSED 33.42s
tests.dashboard.test_EI_810_student_search_teacher_profile test_EI_TC_547_positive_search_teacher_profile_by_exact_first_and_last_name PASSED 3.98s
tests.dashboard.test_EI_810_student_search_teacher_profile test_EI_TC_549_negative_search_teacher_profile_with_nonexistent_last_name_returns_no_re… PASSED 4.29s
tests.dashboard.test_EI_830_teacher_search_teacher_profile test_EI_830_teacher_search_profile_widget_accessible_and_functional PASSED 1.77s
tests.dashboard.test_EI_830_teacher_search_teacher_profile test_EI_TC_528_positive_search_exact_teacher_name_shows_basic_profile_in_results PASSED 2.13s
tests.dashboard.test_EI_830_teacher_search_teacher_profile test_EI_TC_529_positive_partial_name_search_returns_matching_teachers PASSED 2.11s

Suite: logout

Class Test Status Duration
tests.logout.test_EI_1265_teacher_logout_verified test_EI_1265_positive_teacher_logout_successful PASSED 3.88s
tests.logout.test_EI_2723_teacher_logout_from_classes_page test_EI_2723_positive_teacher_logout_from_classes_page PASSED 3.50s
tests.logout.test_EI_664_teacher_logout test_EI_664_teacher_logout PASSED 3.02s
tests.logout.test_EI_664_teacher_logout test_EI_TC_132_successful_logout_redirect_and_protected_pages_blocked PASSED 4.10s
tests.logout.test_EI_664_teacher_logout test_EI_TC_133_logout_without_active_session_handled_gracefully PASSED 1.17s
tests.logout.test_EI_664_teacher_logout test_EI_TC_134_logout_network_failure_and_rapid_clicks_idempotent PASSED 1m 01s

Suite: unit

Class Test Status Duration
tests.unit.test_assignment_close test_happy_path_closes_and_verifies PASSED 0.14s
tests.unit.test_assignment_close test_429_is_retried_then_succeeds PASSED 0.14s
tests.unit.test_assignment_close test_persistent_429_raises_instead_of_returning_silently PASSED 0.15s
tests.unit.test_assignment_close test_non_retryable_4xx_fails_fast PASSED 0.14s
tests.unit.test_assignment_close test_accepted_put_but_assignment_still_open_is_reported PASSED 0.15s
tests.unit.test_assignment_close test_transport_error_is_retried_and_then_raises PASSED 0.14s
tests.unit.test_assignment_close test_unparseable_date_close_does_not_invent_a_failure PASSED 0.13s
tests.unit.test_assignment_close test_payload_nested_under_data_key PASSED 0.13s
tests.unit.test_assignment_close test_verify_false_skips_the_readback
AssertionError: verify=False must not re-read the assignment
FAILED 0.35s
tests.unit.test_assignment_close test_urls_are_built_from_the_api_base PASSED 0.13s
tests.unit.test_assignment_close test_date_close_found_in_the_nested_teacher_fetch_shape PASSED 0.14s
tests.unit.test_assignment_close test_nested_shape_still_detects_a_genuinely_open_assignment PASSED 0.15s
tests.unit.test_auth_login_budget test_window_count_ignores_logins_outside_the_window PASSED 0.15s
tests.unit.test_auth_login_budget test_budget_is_disabled_by_default PASSED 0.14s
tests.unit.test_auth_login_budget test_no_wait_while_under_budget PASSED 0.15s
tests.unit.test_auth_login_budget test_wait_glides_window_under_ceiling_when_over_budget PASSED 0.15s
tests.unit.test_auth_login_budget test_status_reports_over_budget PASSED 0.17s
tests.unit.test_auth_mock test_route_targets_the_login_endpoint PASSED 0.13s
tests.unit.test_auth_mock test_post_is_fulfilled_with_the_real_401_contract PASSED 0.14s
tests.unit.test_auth_mock test_non_post_requests_pass_through[chromium-GET] PASSED 0.14s
tests.unit.test_auth_mock test_non_post_requests_pass_through[chromium-OPTIONS] PASSED 0.12s
tests.unit.test_auth_mock test_non_post_requests_pass_through[chromium-HEAD] PASSED 0.14s
tests.unit.test_auth_mock test_non_post_requests_pass_through[chromium-PUT] PASSED 0.15s
tests.unit.test_auth_mock test_status_and_detail_are_overridable PASSED 0.14s
tests.unit.test_auth_mock test_rate_limited_mock_returns_429 PASSED 0.14s
tests.unit.test_auth_mock test_rate_limited_mock_can_carry_retry_after PASSED 0.14s
tests.unit.test_auth_mock test_rate_limited_mock_passes_through_non_post PASSED 0.13s
tests.unit.test_auth_state_expiry.TestAFreshSessionIsReused test_a_token_with_most_of_its_life_left_is_usable PASSED 0.14s
tests.unit.test_auth_state_expiry.TestAFreshSessionIsReused test_seconds_left_is_reported_from_the_token PASSED 0.13s
tests.unit.test_auth_state_expiry.TestASpentSessionIsRefused test_an_expired_token_is_refused PASSED 0.17s
tests.unit.test_auth_state_expiry.TestASpentSessionIsRefused test_a_token_inside_the_renew_margin_is_refused PASSED 0.13s
tests.unit.test_auth_state_expiry.TestASpentSessionIsRefused test_the_boundary_is_the_margin_not_zero PASSED 0.14s
tests.unit.test_auth_state_expiry.TestTheMarginCannotCauseAReLoginStampede test_a_short_lifetime_still_yields_a_usable_window PASSED 0.13s
tests.unit.test_auth_state_expiry.TestTheMarginCannotCauseAReLoginStampede test_a_short_lifetime_is_still_refused_near_its_end PASSED 0.14s
tests.unit.test_auth_state_expiry.TestTheMarginCannotCauseAReLoginStampede test_the_margin_is_configurable PASSED 0.14s
tests.unit.test_auth_state_expiry.TestTheMarginCannotCauseAReLoginStampede test_a_garbage_margin_falls_back_to_the_default PASSED 0.13s
tests.unit.test_auth_state_expiry.TestItStaysFailOpen test_a_state_with_no_cookies_is_usable PASSED 0.14s
tests.unit.test_auth_state_expiry.TestItStaysFailOpen test_a_state_without_an_access_token_cookie_is_usable PASSED 0.14s
tests.unit.test_auth_state_expiry.TestItStaysFailOpen test_an_undecodable_token_is_usable PASSED 0.14s
tests.unit.test_auth_state_expiry.TestItStaysFailOpen test_a_token_with_no_exp_claim_is_usable PASSED 0.13s
tests.unit.test_auth_state_expiry.TestItStaysFailOpen test_seconds_left_is_None_when_unreadable PASSED 0.14s
tests.unit.test_auth_state_expiry.TestTheDiskCacheRefusesASpentState test_a_fresh_state_round_trips PASSED 0.15s
tests.unit.test_auth_state_expiry.TestTheDiskCacheRefusesASpentState test_a_spent_state_is_not_returned_even_though_the_file_is_new PASSED 0.14s
tests.unit.test_auth_state_expiry.TestTheDiskCacheRefusesASpentState test_a_miss_returns_none PASSED 0.15s
tests.unit.test_batch_runner_status_label test_deselected_suite_is_not_failed_even_when_session_exit_code_is_nonzero PASSED 0.13s
tests.unit.test_batch_runner_status_label test_collection_error_is_still_failed PASSED 0.13s
tests.unit.test_batch_runner_status_label test_real_test_failure_is_still_failed PASSED 0.14s
tests.unit.test_batch_runner_status_label test_passing_suite_is_not_dragged_down_by_another_suites_failure PASSED 0.13s
tests.unit.test_batch_runner_status_label test_empty_suite_reports_no_duration PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestFakerSeedOrphansAreDrainable test_orphan_titles_are_recognised[chromium-three_as_created] PASSED 0.17s
tests.unit.test_class_cap_faker_orphans.TestFakerSeedOrphansAreDrainable test_orphan_titles_are_recognised[chromium-much_as_created] PASSED 0.16s
tests.unit.test_class_cap_faker_orphans.TestFakerSeedOrphansAreDrainable test_orphan_titles_are_recognised[chromium-lowercase] PASSED 0.17s
tests.unit.test_class_cap_faker_orphans.TestFakerSeedOrphansAreDrainable test_orphan_titles_are_recognised[chromium-uppercase] PASSED 0.15s
tests.unit.test_class_cap_faker_orphans.TestFakerSeedOrphansAreDrainable test_orphan_titles_are_recognised[chromium-surrounding_whitespace] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-starts_with_three] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-starts_with_much] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-contains_three] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-contains_much] PASSED 0.15s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-ordinary_class] PASSED 0.15s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-ordinary_class_2] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-empty] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestRealTitlesAreStillProtected test_realistic_titles_are_not_deletable[chromium-none] PASSED 0.15s
tests.unit.test_class_cap_faker_orphans.TestTheExistingMarkersStillWork test_canonical_markers_are_unaffected[chromium-canonical_e2e_marker] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestTheExistingMarkersStillWork test_canonical_markers_are_unaffected[chromium-e2e_with_space] PASSED 0.13s
tests.unit.test_class_cap_faker_orphans.TestTheExistingMarkersStillWork test_canonical_markers_are_unaffected[chromium-e2e_case_insensitive] PASSED 0.13s
tests.unit.test_class_cap_faker_orphans.TestTheExistingMarkersStillWork test_canonical_markers_are_unaffected[chromium-legacy_ticket_prefix] PASSED 0.14s
tests.unit.test_class_cap_faker_orphans.TestTheExistingMarkersStillWork test_canonical_markers_are_unaffected[chromium-legacy_ticket_no_hyphen] PASSED 0.13s
tests.unit.test_class_cap_faker_orphans.TestTheExistingMarkersStillWork test_canonical_markers_are_unaffected[chromium-ui_infix] PASSED 0.14s
tests.unit.test_class_marker_lint test_all_created_classes_carry_a_recognized_marker PASSED 2.10s
tests.unit.test_class_marker_lint test_the_lint_is_not_silently_checking_nothing
AssertionError: 14 class titles cannot be resolved to a literal, up from the 6 recorded on 2026-08-17. An unresolvable title cannot be checked for the drain marker, so if it leaks it is stuck on the account forever. Give the title a literal leading marker, e.g. f"E2E-{faker.word()}". Do NOT r
FAILED 5.97s
tests.unit.test_class_provision.TestCreateClass test_returns_id_and_code_on_success PASSED 0.16s
tests.unit.test_class_provision.TestCreateClass test_walks_slots_past_409_collisions PASSED 0.16s
tests.unit.test_class_provision.TestCreateClass test_gives_up_softly_when_every_slot_collides PASSED 0.14s
tests.unit.test_class_provision.TestCreateClass test_a_non_409_error_stops_immediately PASSED 0.14s
tests.unit.test_class_provision.TestCreateClass test_reads_the_code_from_alternate_response_shapes PASSED 0.15s
tests.unit.test_class_provision.TestCreateClass test_title_stays_within_the_field_limit PASSED 0.15s
tests.unit.test_class_provision.TestCreateClass test_each_call_uses_a_distinct_suffix PASSED 0.15s
tests.unit.test_class_provision.TestDeleteClass test_never_raises_so_it_is_safe_in_teardown PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheInMemoryLayerRespectsTheToken test_a_spent_entry_is_dropped_and_a_new_session_captured PASSED 0.16s
tests.unit.test_fixture_session_recapture.TestTheInMemoryLayerRespectsTheToken test_the_spent_entry_is_replaced_not_merely_skipped PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheInMemoryLayerRespectsTheToken test_a_fresh_entry_is_reused_without_logging_in PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheInMemoryLayerRespectsTheToken test_an_entry_just_past_the_margin_is_refused PASSED 0.16s
tests.unit.test_fixture_session_recapture.TestTheInMemoryLayerRespectsTheToken test_an_entry_just_inside_the_margin_is_kept PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheDiskLayerRespectsTheToken test_a_spent_state_is_refused_however_young_the_file_is PASSED 0.16s
tests.unit.test_fixture_session_recapture.TestTheDiskLayerRespectsTheToken test_a_fresh_state_is_returned PASSED 0.13s
tests.unit.test_fixture_session_recapture.TestTheDiskLayerRespectsTheToken test_a_spent_disk_state_leads_to_a_capture_not_a_logged_out_browser PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheDiskLayerRespectsTheToken test_a_captured_session_is_persisted_for_other_processes PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheDiskLayerRespectsTheToken test_invalidate_removes_the_shared_entry PASSED 0.16s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium--60] PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-0] PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-1] PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-120] PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-299] PASSED 0.13s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-300] PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-301] PASSED 0.13s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-600] PASSED 0.15s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_fixture_path_agrees_with_the_library_at_every_age[chromium-880] PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_conftest_holds_no_second_expiry_rule PASSED 0.13s
tests.unit.test_fixture_session_recapture.TestTheTwoCachesCannotDriftApart test_the_state_dir_is_the_librarys_own PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheWarmupScriptStillHasItsHelpers test_the_helper_exists[chromium-_STATE_DIR] PASSED 0.14s
tests.unit.test_fixture_session_recapture.TestTheWarmupScriptStillHasItsHelpers test_the_helper_exists[chromium-_capture_teacher_state] PASSED 0.13s
tests.unit.test_fixture_session_recapture.TestTheWarmupScriptStillHasItsHelpers test_the_helper_exists[chromium-_load_disk_state] PASSED 0.13s
tests.unit.test_fixture_session_recapture.TestTheWarmupScriptStillHasItsHelpers test_the_helper_exists[chromium-_save_disk_state] PASSED 0.14s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-Class create failed: 409 schedule ] PASSED 0.13s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-Class create failed: all schedule ] PASSED 0.12s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-ROPG token failed (aio.pool.studen] PASSED 0.14s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-ROPG token network error (aio.prem] PASSED 0.14s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-Student /me failed: 403] PASSED 0.18s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-Student /v1/auth/me network error:] PASSED 0.14s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-Assignments tab did not show row-a] PASSED 0.15s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-AUTH0_TEST_STAFF_EMAIL/PASSWORD no] PASSED 0.14s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-Could not close the seeded assignm] PASSED 0.14s
tests.unit.test_infrastructure_skips test_environment_failures_are_flagged[chromium-The API-seeded STAAR assignment ma] PASSED 0.14s
tests.unit.test_infrastructure_skips test_deliberate_skips_are_not_flagged[chromium-Password-mutating test: submit is ] PASSED 0.14s
tests.unit.test_infrastructure_skips test_deliberate_skips_are_not_flagged[chromium-Not applicable to the student role] PASSED 0.14s
tests.unit.test_infrastructure_skips test_deliberate_skips_are_not_flagged[chromium-Covered by the API suite; UI path ] PASSED 0.13s
tests.unit.test_infrastructure_skips test_deliberate_skips_are_not_flagged[chromium-Feature is behind a flag that is o] PASSED 0.14s
tests.unit.test_infrastructure_skips test_deliberate_skips_are_not_flagged[chromium-empty] PASSED 0.14s
tests.unit.test_infrastructure_skips test_matching_is_case_insensitive PASSED 0.14s
tests.unit.test_infrastructure_skips test_none_and_blank_are_safe PASSED 0.16s
tests.unit.test_infrastructure_skips test_stats_json_carries_the_split PASSED 0.14s
tests.unit.test_infrastructure_skips test_dashboard_renders_the_distinction PASSED 0.13s
tests.unit.test_login_budget_calibration test_budget_is_enabled_and_within_the_server_limit[chromium-.env] PASSED 0.13s
tests.unit.test_login_budget_calibration test_budget_is_enabled_and_within_the_server_limit[chromium-run-tests.yml] PASSED 0.16s
tests.unit.test_login_budget_calibration test_budget_is_enabled_and_within_the_server_limit[chromium-ux-lowpeak.yml] PASSED 0.17s
tests.unit.test_login_budget_calibration test_window_matches_the_server_window[chromium-.env] PASSED 0.14s
tests.unit.test_login_budget_calibration test_window_matches_the_server_window[chromium-run-tests.yml] PASSED 0.13s
tests.unit.test_login_budget_calibration test_window_matches_the_server_window[chromium-ux-lowpeak.yml] PASSED 0.15s
tests.unit.test_login_budget_calibration test_budget_layer_actually_throttles PASSED 0.15s
tests.unit.test_login_budget_calibration test_budget_layer_permits_when_under_budget PASSED 0.14s
tests.unit.test_login_cache test_off_by_default_does_not_touch_page PASSED 0.16s
tests.unit.test_login_cache test_miss_falls_through PASSED 0.13s
tests.unit.test_login_cache test_hit_injects_cookies_and_lands PASSED 0.14s
tests.unit.test_login_cache test_student_bounce_still_lands PASSED 0.14s
tests.unit.test_login_cache test_stale_session_invalidates_and_falls_through PASSED 0.14s
tests.unit.test_login_cache test_landed_authed_predicate PASSED 0.14s
tests.unit.test_no_networkidle_waits test_no_live_networkidle_waits PASSED 1.10s
tests.unit.test_no_networkidle_waits test_the_guard_can_actually_see_a_call PASSED 0.13s
tests.unit.test_no_networkidle_waits test_prose_warnings_are_not_flagged PASSED 0.14s
tests.unit.test_post_login_landing_wait test_returns_immediately_when_already_on_the_teacher_portal PASSED 0.13s
tests.unit.test_post_login_landing_wait test_tolerates_a_slow_redirect_then_succeeds PASSED 0.13s
tests.unit.test_post_login_landing_wait test_fails_fast_with_the_inline_error_on_a_rejected_credential PASSED 0.14s
tests.unit.test_post_login_landing_wait test_ignores_an_error_element_that_is_present_but_empty PASSED 0.14s
tests.unit.test_post_login_landing_wait test_survives_locator_churn_mid_navigation PASSED 0.12s
tests.unit.test_post_login_landing_wait test_timeout_message_blames_slowness_not_a_rejected_credential PASSED 1.14s
tests.unit.test_sources_compile test_repo_has_python_sources_to_check PASSED 0.15s
tests.unit.test_sources_compile test_every_source_file_compiles PASSED 0.96s
tests.unit.test_sources_compile test_third_party_imports_are_declared_in_requirements PASSED 1.17s
tests.unit.test_truncation_is_reported test_batch_runner_puts_truncation_in_stats_json PASSED 0.15s
tests.unit.test_truncation_is_reported test_run_batch_returns_the_flag_it_prints PASSED 0.15s
tests.unit.test_truncation_is_reported test_dashboard_reads_and_renders_truncation PASSED 0.15s
tests.unit.test_truncation_is_reported test_dashboard_defines_truncation_after_stats_are_loaded PASSED 0.16s
tests.unit.test_truncation_is_reported test_timeout_nest_stays_ordered PASSED 0.19s
tests.unit.test_truncation_is_reported test_budget_covers_the_observed_full_suite
AssertionError: batch budget is 30 min. 70 min truncated every nightly, and 90 min truncated again by NINE SECONDS (run 33239413649 finished its session in 5409.98s against 5400s) with graph/settings/student still unrun. Anything under ~100 min will truncate again. assert 30.0 >= 100
FAILED 0.55s
tests.unit.test_visibility_assertions_wait test_assert_visible_uses_an_auto_waiting_expectation PASSED 0.14s
tests.unit.test_visibility_assertions_wait test_is_visible_remains_the_non_waiting_primitive PASSED 0.15s
tests.unit.test_visibility_assertions_wait test_create_question_assertion_no_longer_races PASSED 0.39s

Shard 2 of 5

Batch Test Summary - Frontend

Run: 2026-10-04 19:17:09  |  Marker: all tests  |  Overall result: PASSED

124
Total
122
Passed
0
Failed
0
Errors
2
Skipped

Suites

Suite Status Total Passed Failed Errors Skipped Duration Browser
account PASSED 63 61 0 0 2 14m 15s chromium
graph PASSED 7 7 0 0 0 54.23s chromium
navigation PASSED 54 54 0 0 0 1m 48s chromium

Test Detail

Suite: account

Class Test Status Duration
tests.account.test_EI_1245_student_change_password_invalid_data test_EI_TC_4535_negative_invalid_data_blocks_submission PASSED 4m 06s
tests.account.test_EI_1292_student_password_recovery test_EI_TC_3554_positive_student_login_shows_forgot_password_link PASSED 1.04s
tests.account.test_EI_1292_student_password_recovery test_EI_TC_3554_positive_forgot_password_link_opens_recovery_form PASSED 1.04s
tests.account.test_EI_1292_student_password_recovery test_EI_TC_3554_positive_valid_email_submission_shows_recovery_success PASSED 1.38s
tests.account.test_EI_1292_student_password_recovery test_EI_TC_3554_positive_auth0_confirms_recovery_email_dispatched PASSED 0.34s
tests.account.test_EI_1296_teacher_name_field test_EI_TC_3997_positive_change_name_with_international_diacritics_succeeds PASSED 17.09s
tests.account.test_EI_1296_teacher_name_field test_EI_TC_3998_negative_change_name_with_whitespace_only_and_at_sign_rejected PASSED 7.43s
tests.account.test_EI_2372_teacher_password_max_length test_EI_TC_3967_negative_over_max_length_password_is_rejected PASSED 31.79s
tests.account.test_EI_2372_teacher_password_max_length test_EI_TC_3969_positive_in_range_password_change_and_login PASSED 7.06s
tests.account.test_EI_2403_teacher_password_special_characters test_EI_TC_2390_positive_complex_password_change_succeeds PASSED 46.58s
tests.account.test_EI_2403_teacher_password_special_characters test_EI_TC_2391_negative_only_special_characters_password_is_rejected PASSED 2.47s
tests.account.test_EI_2570_change_teacher_password test_EI_TC_4531_positive_change_password_modal_presents_three_fields PASSED 19.71s
tests.account.test_EI_2570_change_teacher_password test_EI_TC_4532_negative_non_compliant_password_blocks_submission PASSED 2.34s
tests.account.test_EI_2761_teacher_password_mismatch test_EI_TC_2462_negative_mismatched_confirmation_blocks_submission PASSED 37.89s
tests.account.test_EI_2763_teacher_change_password_current_mismatch test_EI_2763_teacher_change_password_current_mismatch_leaves_password_unchanged PASSED 20.95s
tests.account.test_EI_2766_teacher_password_below_min_length test_EI_TC_2465_negative_below_min_length_blocks_submission PASSED 33.98s
tests.account.test_EI_2768_teacher_password_min_length test_EI_TC_2470_positive_min_length_change_and_login PASSED 8.09s
tests.account.test_EI_2768_teacher_password_min_length test_EI_TC_2471_negative_wrong_current_password_blocks_change PASSED 2.90s
tests.account.test_EI_2882_teacher_password_change_security test_EI_TC_3951_positive_change_password_modal_presents_three_fields PASSED 17.67s
tests.account.test_EI_2882_teacher_password_change_security test_EI_TC_3952_negative_non_compliant_password_blocks_submission PASSED 2.46s
tests.account.test_EI_3045_student_password_complexity_validation test_EI_TC_4042_positive_strong_password_accepted_with_guidance_and_change_succeeds
EI-TC-4042 performs a real password change on the AIO student account and MUST be restored afterward. Set AUTH0_DOMAIN, AUTH0_MGMT_CLIENT_ID, AUTH0_MGMT_CLIENT_SECRET, and AUTH0_EI3045_STUDENT_USER_ID to run this test.
SKIPPED 0.14s
tests.account.test_EI_3045_student_password_complexity_validation test_EI_TC_4044_negative_common_weak_password_rejected_with_clear_error_feedback PASSED 31.73s
tests.account.test_EI_3045_student_password_complexity_validation test_EI_TC_4045_A_negative_password_missing_uppercase_is_rejected PASSED 1.97s
tests.account.test_EI_3045_student_password_complexity_validation test_EI_TC_4045_B_negative_password_missing_lowercase_is_rejected PASSED 1.95s
tests.account.test_EI_3045_student_password_complexity_validation test_EI_TC_4045_C_negative_password_missing_digit_is_rejected PASSED 1.83s
tests.account.test_EI_3045_student_password_complexity_validation test_EI_TC_4045_D_negative_password_missing_special_character_is_rejected PASSED 1.96s
tests.account.test_EI_470_bug_teacher_change_name_whitespace_results_in_empty_display test_EI_TC_470_1_whitespace_only_first_name_is_rejected PASSED 10.19s
tests.account.test_EI_470_bug_teacher_change_name_whitespace_results_in_empty_display test_EI_TC_470_3_whitespace_only_last_name_is_rejected PASSED 9.63s
tests.account.test_EI_470_bug_teacher_change_name_whitespace_results_in_empty_display test_EI_TC_470_4_all_fields_whitespace_only_are_rejected PASSED 10.08s
tests.account.test_EI_470_bug_teacher_change_name_whitespace_results_in_empty_display test_EI_TC_470_5_single_space_first_name_is_rejected PASSED 10.13s
tests.account.test_EI_470_bug_teacher_change_name_whitespace_results_in_empty_display test_EI_TC_904_positive_change_name_to_valid_non_empty_name PASSED 5.00s
tests.account.test_EI_470_bug_teacher_change_name_whitespace_results_in_empty_display test_EI_TC_905_negative_reject_whitespace_only_name_input PASSED 28.61s
tests.account.test_EI_514_student_password_change test_EI_TC_343_negative_new_equals_current_shows_differ_message PASSED 37.76s
tests.account.test_EI_514_student_password_change test_EI_TC_344_negative_below_min_length_shows_length_message PASSED 1.94s
tests.account.test_EI_523_teacher_change_name test_EI_TC_736_positive_change_name_with_valid_first_and_last_succeeds PASSED 22.77s
tests.account.test_EI_523_teacher_change_name test_EI_TC_737_negative_change_name_with_empty_first_or_last_shows_validation_error PASSED 5.84s
tests.account.test_EI_523_teacher_change_name test_EI_TC_738_negative_change_name_with_invalid_characters_shows_validation_error PASSED 5.80s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_575_TC_3_middle_name_with_numbers_shows_error PASSED 31.30s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_575_TC_4_middle_name_with_special_characters_shows_error PASSED 5.18s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_575_combined_all_fields_with_invalid_input_show_errors PASSED 5.19s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_TC_802_change_name_with_valid_alphabetic_characters_1_to_25 PASSED 5.40s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_TC_803_change_name_with_minimum_valid_length_1_character PASSED 5.02s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_TC_804_change_name_with_maximum_valid_length_25_characters PASSED 5.11s
tests.account.test_EI_575_teacher_change_name_with_invalid_characters test_EI_TC_combined_change_name_boundary_conditions PASSED 5.38s
tests.account.test_EI_697_student_change_password test_EI_TC_75_positive_change_password_modal_presents_three_fields PASSED 18.65s
tests.account.test_EI_697_student_change_password test_EI_TC_76_negative_cancel_closes_modal_leaves_settings_intact PASSED 2.48s
tests.account.test_EI_TC_802_803_804_teacher_change_name_valid_lengths test_EI_TC_802_change_name_with_valid_alphabetic_characters_1_to_25 PASSED 5.37s
tests.account.test_EI_TC_802_803_804_teacher_change_name_valid_lengths test_EI_TC_803_change_name_with_minimum_valid_length_1_character PASSED 5.34s
tests.account.test_EI_TC_802_803_804_teacher_change_name_valid_lengths test_EI_TC_804_change_name_with_maximum_valid_length_25_characters PASSED 4.96s
tests.account.test_EI_TC_802_803_804_teacher_change_name_valid_lengths test_EI_TC_combined_change_name_boundary_conditions PASSED 4.98s
tests.account.test_cdn_teacher_profile_photo_render test_cdn_teacher_profile_photo_renders_via_presigned_private_url
E2E teacher has no profile photo set — render path covered by storage-level live tests
SKIPPED 35.15s
tests.account.test_student_forgot_password_e2e test_login_page_has_forgot_password_link PASSED 1.34s
tests.account.test_student_forgot_password_e2e test_forgot_password_link_navigates_to_local_page PASSED 1.41s
tests.account.test_student_forgot_password_e2e test_forgot_password_with_email_shows_in_app_success PASSED 2.61s
tests.account.test_student_forgot_password_e2e test_forgot_password_without_email_shows_in_app_error PASSED 1.15s
tests.account.test_student_forgot_password_e2e test_auth0_confirms_reset_email_was_sent PASSED 0.34s
tests.account.test_student_forgot_password_e2e test_auth0_logs_confirm_password_reset_event PASSED 3.01s
tests.account.test_teacher_forgot_password_e2e test_ei_tc_4570_step_1_2_login_page_exposes_forgot_password_link PASSED 1.80s
tests.account.test_teacher_forgot_password_e2e test_ei_tc_4570_step_3_4_forgot_password_link_navigates_to_local_page PASSED 1.29s
tests.account.test_teacher_forgot_password_e2e test_ei_tc_4570_step_5_teacher_email_triggers_in_app_success PASSED 2.58s
tests.account.test_teacher_forgot_password_e2e test_ei_tc_4571_step_3_empty_email_blocked_client_side PASSED 1.14s
tests.account.test_teacher_forgot_password_e2e test_ei_tc_4570_step_5_auth0_confirms_reset_email_was_sent PASSED 0.31s
tests.account.test_teacher_forgot_password_e2e test_ei_tc_4570_step_5_auth0_logs_record_password_reset_event PASSED 3.04s

Suite: graph

Class Test Status Duration
tests.graph.test_EI_3116_graph_framework_integration test_EI_3116_positive_graph_framework_integrates_via_embedded_iframe PASSED 12.22s
tests.graph.test_EI_3129_graph_toolbar_implementation test_EI_TC_3129_positive_toolbar_switches_tool_opens_axes_and_clears_canvas PASSED 7.28s
tests.graph.test_EI_3130_interactive_graph_elements test_EI_TC_3130_A_positive_draggable_point_relocates_on_drag PASSED 5.25s
tests.graph.test_EI_3130_interactive_graph_elements test_EI_TC_3130_B_positive_dragging_line_endpoint_updates_render_in_realtime PASSED 5.54s
tests.graph.test_EI_3134_graph_core_engine test_EI_TC_2607_positive_render_line_from_2d_points PASSED 4.16s
tests.graph.test_EI_3134_graph_core_engine test_EI_TC_2611_positive_realtime_data_point_addition_updates_render PASSED 5.74s
tests.graph.test_EI_3167_graph_framework_agnostic_web_components test_EI_3167_positive_graph_component_postmessage_event_system PASSED 14.03s

Suite: navigation

Class Test Status Duration
tests.navigation.test_EI_1260_navigation_consistency_and_keyboard_accessibility test_EI_TC_1260_positive_sidebar_navigation_consistent_and_keyboard_reachable PASSED 4.82s
tests.navigation.test_EI_1264_cross_browser_ui_and_file_upload test_EI_TC_1264_A_positive_question_bank_create_dropdown_renders_cross_browser PASSED 2.21s
tests.navigation.test_EI_1264_cross_browser_ui_and_file_upload test_EI_TC_1264_B_positive_question_image_upload_works_cross_browser PASSED 4.30s
tests.navigation.test_EI_1264_cross_browser_ui_and_file_upload test_EI_TC_1264_C_edge_teacher_session_persists_after_reload_cross_browser PASSED 2.09s
tests.navigation.test_EI_1284_footer_home_link test_EI_TC_3946_positive_footer_home_navigates PASSED 1.16s
tests.navigation.test_EI_1284_footer_home_link test_EI_TC_3947_negative_footer_home_not_broken PASSED 1.14s
tests.navigation.test_EI_1293_cross_browser_compatibility test_EI_1293_A_positive_teacher_login_and_dashboard_render_cross_browser PASSED 2.12s
tests.navigation.test_EI_1293_cross_browser_compatibility test_EI_1293_B_positive_student_login_and_dashboard_render_cross_browser PASSED 1.56s
tests.navigation.test_EI_1293_cross_browser_compatibility test_EI_1293_C_positive_student_dashboard_responsive_with_touch_enabled PASSED 2.17s
tests.navigation.test_EI_1305_ui_elements_clickable_and_visible test_EI_1305_A_positive_teacher_dashboard_controls_visible_and_clickable PASSED 2.29s
tests.navigation.test_EI_1305_ui_elements_clickable_and_visible test_EI_1305_B_positive_student_dashboard_controls_visible_and_clickable PASSED 1.57s
tests.navigation.test_EI_1305_ui_elements_clickable_and_visible test_EI_1305_C_positive_login_form_reachable_and_submittable_via_keyboard_only PASSED 1.76s
tests.navigation.test_EI_1305_ui_elements_clickable_and_visible test_EI_1305_D_positive_focused_field_shows_a_visible_focus_indicator PASSED 1.15s
tests.navigation.test_EI_1305_ui_elements_clickable_and_visible test_EI_1305_E_positive_key_controls_meet_wcag_contrast_in_default_theme PASSED 1.97s
tests.navigation.test_EI_2737_enhanced_footer test_EI_TC_4234_positive_enhanced_footer_layout_and_accessibility PASSED 1.02s
tests.navigation.test_EI_2737_enhanced_footer test_EI_TC_4236_negative_footer_links_resilient_no_broken PASSED 1.11s
tests.navigation.test_EI_2745_about_us_page test_EI_TC_3948_positive_about_us_page_loads_and_displays_content_correctly PASSED 1.14s
tests.navigation.test_EI_2837_rebrand_logo_teacher_student_portals test_EI_2837_positive_logo_visible_across_teacher_and_student_portals PASSED 4.91s
tests.navigation.test_EI_2837_rebrand_logo_teacher_student_portals test_EI_2837_negative_no_mathmatters_branding_in_teacher_and_student_portals PASSED 5.01s
tests.navigation.test_EI_2837_rebrand_logo_teacher_student_portals test_EI_2837_edge_logo_accessible_and_not_hidden_from_assistive_technology PASSED 1.74s
tests.navigation.test_EI_2839_rebrand_erudition_solutions test_EI_TC_2667_positive_erudition_solutions_branding_across_all_pages PASSED 1.58s
tests.navigation.test_EI_2839_rebrand_erudition_solutions test_EI_TC_2668_positive_logo_assets_render_correctly_desktop_and_mobile PASSED 1.44s
tests.navigation.test_EI_2839_rebrand_erudition_solutions test_EI_TC_2673_positive_erudition_solutions_llc_in_authenticated_app_footer PASSED 1.84s
tests.navigation.test_EI_2839_rebrand_erudition_solutions test_EI_TC_2669_negative_no_mathmatters_branding_remaining PASSED 1.53s
tests.navigation.test_EI_2839_rebrand_erudition_solutions test_EI_TC_2670_negative_error_handling_when_branding_assets_fail_to_load PASSED 1.15s
tests.navigation.test_EI_2839_rebrand_erudition_solutions test_EI_TC_2672_edge_multipage_rebrand_consistency_content_cards_and_banners PASSED 1.64s
tests.navigation.test_EI_2893_teacher_copyright_footer test_EI_2893_positive_copyright_footer_displayed_across_teacher_pages PASSED 4.39s
tests.navigation.test_EI_2900_application_responsive_screen_sizes test_EI_2900_positive_application_responsive_across_screen_sizes_both_roles PASSED 12.29s
tests.navigation.test_EI_3115_verify_navigation_back_button test_EI_3115_positive_back_and_forward_navigate_across_teacher_pages PASSED 4.48s
tests.navigation.test_EI_3115_verify_navigation_back_button test_EI_3115_positive_back_button_with_open_form_and_modal PASSED 6.83s
tests.navigation.test_EI_3115_verify_navigation_back_button test_EI_3115_edge_repeated_back_forward_cycles_stay_consistent PASSED 2.56s
tests.navigation.test_EI_371_footer_home_link test_EI_TC_175_positive_footer_home_link_navigates_home PASSED 1.10s
tests.navigation.test_EI_371_footer_home_link test_EI_TC_186_positive_footer_home_link_click_loads_home PASSED 0.95s
tests.navigation.test_EI_483_footer_pages_home_link test_EI_TC_587_positive_footer_pages_home_link_navigates_to_home PASSED 1.00s
tests.navigation.test_EI_483_footer_pages_home_link test_EI_TC_588_negative_footer_pages_home_link_not_broken PASSED 0.94s
tests.navigation.test_EI_483_footer_pages_home_link test_EI_TC_589_edge_footer_pages_home_link_mobile_viewport_after_reload PASSED 1.18s
tests.navigation.test_RDTNMVPQ_659_footer_home_link test_659_footer_home_link_visible_on_homepage PASSED 0.95s
tests.navigation.test_RDTNMVPQ_659_footer_home_link test_659_footer_privacy_link_visible_on_homepage PASSED 0.93s
tests.navigation.test_RDTNMVPQ_659_footer_home_link test_659_footer_terms_link_visible_on_homepage PASSED 0.96s
tests.navigation.test_RDTNMVPQ_659_footer_home_link test_659_footer_privacy_link_navigates PASSED 0.98s
tests.navigation.test_RDTNMVPQ_659_footer_home_link test_659_footer_terms_link_navigates PASSED 0.94s
tests.navigation.test_RDTNMVPQ_660_footer_enhancement test_660_footer_contact_info_on_homepage PASSED 0.95s
tests.navigation.test_RDTNMVPQ_660_footer_enhancement test_660_footer_legal_links_on_homepage PASSED 0.94s
tests.navigation.test_RDTNMVPQ_660_footer_enhancement test_660_footer_present_on_about_page PASSED 0.94s
tests.navigation.test_RDTNMVPQ_660_footer_enhancement test_660_footer_present_on_contact_page PASSED 1.02s
tests.navigation.test_RDTNMVPQ_660_footer_enhancement test_660_footer_terms_on_about_page PASSED 0.91s
tests.navigation.test_navigation test_nav_about_link_navigates PASSED 1.17s
tests.navigation.test_navigation test_nav_contact_link_navigates PASSED 1.28s
tests.navigation.test_navigation test_nav_login_button_navigates PASSED 1.15s
tests.navigation.test_navigation test_login_back_to_home_goes_to_root PASSED 1.38s
tests.navigation.test_navigation test_login_forgot_password_link_navigates PASSED 0.96s
tests.navigation.test_navigation test_footer_links_present_on_homepage PASSED 0.99s
tests.navigation.test_navigation test_footer_links_present_on_about PASSED 0.94s
tests.navigation.test_navigation test_footer_links_present_on_contact PASSED 1.18s

Shard 3 of 5

Batch Test Summary - Frontend

Run: 2026-10-04 19:27:49  |  Marker: all tests  |  Overall result: PASSED

25
Total
25
Passed
0
Failed
0
Errors
0
Skipped

Suites

Suite Status Total Passed Failed Errors Skipped Duration Browser
assignments PASSED 25 25 0 0 0 29m 29s chromium
graph-editor NO TESTS 0 0 0 0 0 0.00s chromium
question-bank NO TESTS 0 0 0 0 0 0.00s chromium

Test Detail

Suite: assignments

Class Test Status Duration
tests.assignments.test_EI_1100_teacher_global_assignment_not_displayed_bug test_EI_1100_teacher_global_assignment_list_is_never_blank PASSED 1m 02s
tests.assignments.test_EI_1107_bug_item_analysis_raw_json_in_columns test_EI_TC_3773_negative_non_teacher_cannot_view_analytics PASSED 28.63s
tests.assignments.test_EI_1165_bug_item_analysis_json_formatted_choice_values test_EI_1165_positive_item_analysis_choice_values_not_json_formatted PASSED 1m 05s
tests.assignments.test_EI_1183_teacher_global_assignment_reuse_question_preview_overflow test_EI_1183_teacher_global_assignment_reuse_question_preview_ui_malfunction PASSED 1m 16s
tests.assignments.test_EI_1183_teacher_global_assignment_reuse_question_preview_overflow test_EI_TC_1289_positive_ui_handles_moderately_long_paragraph_in_reused_assignment_preview PASSED 1m 00s
tests.assignments.test_EI_1183_teacher_global_assignment_reuse_question_preview_overflow test_EI_TC_1290_negative_ui_does_not_overflow_container_with_long_paragraph_in_preview PASSED 40.35s
tests.assignments.test_EI_1210_late_submission_teacher_approval test_EI_TC_4412_negative_late_submission_auto_rejected_when_disabled PASSED 1m 46s
tests.assignments.test_EI_1210_late_submission_teacher_approval test_EI_TC_4414_positive_late_submission_teacher_approval_workflow PASSED 2m 15s
tests.assignments.test_EI_1304_teacher_review_student_submissions test_EI_TC_1304_positive_teacher_reviews_student_submission PASSED 3m 27s
tests.assignments.test_EI_187_staar_assignment_data_analytics test_EI_TC_896_positive_staar_assignment_analytics_page_loads_and_displays_correct_over… PASSED 2m 00s
tests.assignments.test_EI_187_staar_assignment_data_analytics test_EI_TC_897_positive_staar_analytics_renders_correctly_with_edge_case_numeric_values PASSED 1m 18s
tests.assignments.test_EI_187_staar_assignment_data_analytics test_EI_187_staar_category_analysis_section_renders_with_correct_column_structure PASSED 1m 01s
tests.assignments.test_EI_188_assignment_data_analytics test_EI_TC_893_positive_summary_renders_metrics_and_visuals PASSED 2m 00s
tests.assignments.test_EI_188_assignment_data_analytics test_EI_TC_894_summary_zero_state_when_no_submissions PASSED 2m 38s
tests.assignments.test_EI_190_teacher_act_assignment_data_analytics test_EI_TC_190_positive_act_assignment_data_analytics_displays_metrics PASSED 1m 51s
tests.assignments.test_EI_190_teacher_act_assignment_data_analytics test_EI_TC_190_B_positive_act_analytics_renders_correctly_with_edge_case_numeric_values PASSED 56.10s
tests.assignments.test_EI_190_teacher_act_assignment_data_analytics test_EI_TC_190_C_positive_act_topic_analysis_section_renders_with_correct_column_structure PASSED 59.45s
tests.assignments.test_EI_190_teacher_act_assignment_data_analytics test_EI_TC_190_D_edge_act_summary_zero_state_when_no_submissions PASSED 1m 08s
tests.assignments.test_EI_2386_student_submission_page_e2e test_EI_TC_2840_positive_correct_times_and_question_count PASSED 11.44s
tests.assignments.test_EI_2386_student_submission_page_e2e test_EI_TC_2841_negative_times_not_shown_as_raw_utc PASSED 9.21s
tests.assignments.test_EI_2386_student_submission_page_e2e test_EI_2386_date_close_not_shown_as_raw_utc PASSED 45.97s
tests.assignments.test_EI_2386_student_submission_page_e2e test_EI_2386_submission_page_shows_local_times_and_counts PASSED 7.40s
tests.assignments.test_EI_2407_teacher_view_global_assignment_page test_EI_2407_teacher_view_global_assignment_page PASSED 45.71s
tests.assignments.test_EI_2408_teacher_global_assignment_action_access test_EI_2408_teacher_global_assignment_action_access_and_pagination PASSED 13.05s
tests.assignments.test_EI_2533_student_assignment_before_open_date test_EI_TC_2533_negative_assignment_not_accessible_before_open_date PASSED 19.59s

Shard 4 of 5

Batch Test Summary - Frontend

Run: 2026-10-04 19:42:55  |  Marker: all tests  |  Overall result: FAILED

56
Total
54
Passed
1
Failed
0
Errors
1
Skipped

Suites

Suite Status Total Passed Failed Errors Skipped Duration Browser
classes FAILED 56 54 1 0 1 26m 20s chromium
home NO TESTS 0 0 0 0 0 0.00s chromium
settings NO TESTS 0 0 0 0 0 0.00s chromium

Test Detail

Suite: classes

Class Test Status Duration
tests.classes.test_EI_1078_teacher_validate_class_code_before_creation test_EI_TC_5309_positive_class_code_is_six_alphanumeric_characters PASSED 1m 08s
tests.classes.test_EI_1078_teacher_validate_class_code_before_creation test_EI_TC_5310_positive_class_code_one_to_one_with_its_class PASSED 43.41s
tests.classes.test_EI_1078_teacher_validate_class_code_before_creation test_EI_TC_5311_edge_deleted_class_code_is_not_reassigned PASSED 41.91s
tests.classes.test_EI_1088_student_improve_classes_card_ui_layout_design test_EI_1088_student_improve_classes_card_ui_layout_design PASSED 1m 55s
tests.classes.test_EI_1088_student_improve_classes_card_ui_layout_design test_EI_TC_4342_validate_full_UI_rendering_of_Classes_Card_with_all_design_elements PASSED 2m 07s
tests.classes.test_EI_1088_student_improve_classes_card_ui_layout_design test_EI_TC_4344_validate_error_handling_for_missing_resources_and_invalid_data PASSED 1m 55s
tests.classes.test_EI_1108_teacher_classes_model_business_logic test_EI_TC_4109_negative_create_class_with_empty_title PASSED 21.21s
tests.classes.test_EI_1108_teacher_classes_model_business_logic test_EI_TC_4110_A_positive_two_sequential_classes_produce_distinct_codes PASSED 17.73s
tests.classes.test_EI_1108_teacher_classes_model_business_logic test_EI_TC_4110_B_positive_three_classes_all_have_globally_unique_codes PASSED 20.84s
tests.classes.test_EI_1108_teacher_classes_model_business_logic test_EI_TC_4110_C_positive_class_code_format_is_consistent_and_alphanumeric PASSED 17.88s
tests.classes.test_EI_1157_teacher_classes_pagination_removed test_EI_1157_teacher_classes_page_has_no_pagination_controls PASSED 1.19s
tests.classes.test_EI_1162_bug_teacher_add_confirm_dialog_if_rejecting_or_removing_student_from_class_roster test_EI_1162_bug_teacher_add_confirm_dialog_if_rejecting_or_removing_student_from_class… PASSED 47.29s
tests.classes.test_EI_1162_bug_teacher_add_confirm_dialog_if_rejecting_or_removing_student_from_class_roster test_EI_TC_1173_confirm_dialog_appears_and_action_completes_after_confirming_removal_of… PASSED 45.80s
tests.classes.test_EI_1162_bug_teacher_add_confirm_dialog_if_rejecting_or_removing_student_from_class_roster test_EI_TC_1174_cancel_in_confirmation_dialog_prevents_removal_rejection_from_executing PASSED 45.50s
tests.classes.test_EI_1163_bug_teacher_undo_reject_remove_student test_EI_1163_A_bug_undo_option_after_removing_enrolled_student PASSED 1m 31s
tests.classes.test_EI_1163_bug_teacher_undo_reject_remove_student test_EI_1163_B_bug_undo_option_after_rejecting_pending_student PASSED 58.52s
tests.classes.test_EI_1178_student_rows_per_page_vertical_alignment test_EI_TC_1283_positive_rows_per_page_value_is_vertically_centered_on_initial_load PASSED 9.84s
tests.classes.test_EI_1178_student_rows_per_page_vertical_alignment test_EI_TC_1284_positive_alignment_survives_pagination_and_value_change PASSED 5.36s
tests.classes.test_EI_1178_student_rows_per_page_vertical_alignment test_EI_TC_1286_negative_keyboard_navigation_remains_usable_under_simulated_misalignment PASSED 3.47s
tests.classes.test_EI_1184_teacher_classes_page_bug test_EI_1184_positive_teacher_classes_page_functions_without_bugs PASSED 18.29s
tests.classes.test_EI_1185_teacher_search_class_bug test_EI_1185_positive_teacher_search_class_works_reliably PASSED 14.72s
tests.classes.test_EI_1187_classes_header_semester test_EI_TC_1945_positive_verify_classes_header_shows_correct_semester_after_creating_a_… PASSED 15.13s
tests.classes.test_EI_1187_classes_header_semester test_EI_TC_1946_positive_verify_header_consistency_for_multiple_classes_across_semesters PASSED 10.11s
tests.classes.test_EI_1187_classes_header_semester test_EI_TC_1947_negative_validate_error_when_creating_class_without_selecting_semester PASSED 11.57s
tests.classes.test_EI_1187_classes_page_header_semester test_EI_TC_1945_positive_class_detail_header_shows_correct_semester_after_class_creation PASSED 6.85s
tests.classes.test_EI_1187_classes_page_header_semester test_EI_TC_1946_positive_per_class_header_consistency_across_semesters PASSED 13.49s
tests.classes.test_EI_1187_classes_page_header_semester test_EI_TC_1946_positive_global_classes_list_appbar_reflects_semester_filter PASSED 8.27s
tests.classes.test_EI_1187_classes_page_header_semester test_EI_TC_1947_negative_create_class_without_semester_save_button_is_disabled PASSED 5.78s
tests.classes.test_EI_1187_header_reflects_filter test_EI_TC_1946_positive_header_reflects_selected_filter PASSED 3.79s
tests.classes.test_EI_1187_header_reflects_filter test_EI_TC_1946_parity_multiple_semesters_round_trip PASSED 4.01s
tests.classes.test_EI_1195_gradebook_student_score_match test_EI_TC_3710_positive_graded_score_matches_between_gradebook_and_student PASSED 25.64s
tests.classes.test_EI_1195_gradebook_student_score_match test_EI_TC_3711_negative_no_mismatch_across_graded_and_missed PASSED 25.40s
tests.classes.test_EI_1204_teacher_edit_class_prevents_exact_duplicate test_EI_1204_negative_editing_class_to_duplicate_another_is_rejected PASSED 8.11s
tests.classes.test_EI_1216_teacher_edit_class_whitespace_validation test_EI_TC_2867_positive_edit_class_with_valid_short_title_and_description_enables_save PASSED 12.53s
tests.classes.test_EI_1216_teacher_edit_class_whitespace_validation test_EI_TC_2868_positive_edit_class_with_yup_max_boundary_title_and_description_enables… PASSED 11.04s
tests.classes.test_EI_1216_teacher_edit_class_whitespace_validation test_EI_TC_2869_negative_whitespace_only_title_and_description_show_validation_errors_a…
EI-1216 TC-2869: the description whitespace `.required()` fix (#79) is not deployed on this frontend (title validation + Save-blocking verified; description shows no error). Re-run the description assertion after the #79 deploy. desc helpers: [].
SKIPPED 12.41s
tests.classes.test_EI_1216_teacher_edit_class_whitespace_validation test_EI_1216_negative_special_characters_only_title_blocks_save PASSED 11.96s
tests.classes.test_EI_1217_bug_teacher_create_assignment test_EI_1217_bug_teacher_create_assignment PASSED 30.57s
tests.classes.test_EI_1217_bug_teacher_create_assignment test_EI_TC_3007_create_a_valid_assignment_with_proper_title_and_description PASSED 44.48s
tests.classes.test_EI_1217_bug_teacher_create_assignment test_EI_TC_3008_block_whitespace_only_input_on_title_description_at_step_1 PASSED 30.31s
tests.classes.test_EI_1218_teacher_new_assignment_validation test_EI_TC_2916_positive_valid_title_and_description_render_with_no_helper_text PASSED 13.85s
tests.classes.test_EI_1218_teacher_new_assignment_validation test_EI_TC_2917_negative_whitespace_only_title_and_description_block_next_with_helper_text PASSED 14.01s
tests.classes.test_EI_1218_teacher_new_assignment_validation test_EI_1218_negative_special_characters_only_title_blocks_next PASSED 13.60s
tests.classes.test_EI_1221_bug_assignment_created_without_assigned_class test_EI_TC_1221_negative_assignment_not_created_without_assigned_class PASSED 47.20s
tests.classes.test_EI_1229_teacher_edit_class_description_not_required test_EI_1229_teacher_edit_class_description_not_required PASSED 10.93s
tests.classes.test_EI_1229_teacher_edit_class_description_not_required test_EI_TC_3994_positive_edit_class_with_empty_description_saves_successfully PASSED 10.75s
tests.classes.test_EI_1229_teacher_edit_class_description_not_required test_EI_TC_3996_negative_non_editable_code_field_is_unaffected_by_save PASSED 10.67s
tests.classes.test_EI_1231_teacher_classes_page_bug test_EI_1231_teacher_classes_page_bug PASSED 37.09s
tests.classes.test_EI_1231_teacher_classes_page_bug test_EI_TC_4003_positive_classes_page_loads_with_header_and_at_least_one_card PASSED 3.90s
tests.classes.test_EI_1231_teacher_classes_page_bug test_EI_TC_4005_negative_student_attempting_teacher_classes_route_is_redirected_away PASSED 4.08s
tests.classes.test_EI_1231_teacher_classes_page_bug test_EI_TC_4006_positive_create_class_with_edge_data_long_name_and_special_chars
playwright._impl._errors.TimeoutError: Locator.click: Timeout 30000ms exceeded. Call log: - waiting for locator("#teacher-classes-page-create-new-class-btn") - - locator resolved to <button disabled tabindex="-1" type="button" id="teacher-classes-page-create-new-class-btn" title="You've r
FAILED 1m 39s
tests.classes.test_EI_1246_student_leave_class test_EI_TC_4092_student_leaves_enrolled_class_successfully PASSED 1m 08s
tests.classes.test_EI_1261_teacher_verify_that_is_able_to_create_a_new_class test_EI_1261_teacher_verify_that_is_able_to_create_a_new_class PASSED 5.86s
tests.classes.test_EI_1261_teacher_verify_that_is_able_to_create_a_new_class test_EI_TC_590_teacher_creates_a_new_class_successfully_with_valid_data PASSED 6.09s
tests.classes.test_EI_1261_teacher_verify_that_is_able_to_create_a_new_class test_EI_TC_591_teacher_attempts_to_create_a_class_without_required_name PASSED 5.30s
tests.classes.test_EI_1268_student_class_search_by_semester test_EI_1268_student_class_search_by_semester PASSED 6.59s

Shard 5 of 5

Batch Test Summary - Frontend

Run: 2026-10-04 19:26:49  |  Marker: all tests  |  Overall result: PASSED

128
Total
128
Passed
0
Failed
0
Errors
0
Skipped

Suites

Suite Status Total Passed Failed Errors Skipped Duration Browser
contact PASSED 14 14 0 0 0 2m 50s chromium
login PASSED 107 107 0 0 0 19m 33s chromium
student PASSED 7 7 0 0 0 6m 46s chromium

Test Detail

Suite: contact

Class Test Status Duration
tests.contact.test_contact test_contact_page_loads PASSED 2m 35s
tests.contact.test_contact test_contact_page_heading_visible PASSED 0.99s
tests.contact.test_contact test_contact_support_email_displayed PASSED 1.00s
tests.contact.test_contact test_contact_phone_number_displayed PASSED 0.99s
tests.contact.test_contact test_contact_location_displayed PASSED 0.97s
tests.contact.test_contact test_contact_name_field_visible PASSED 0.96s
tests.contact.test_contact test_contact_email_field_visible PASSED 0.97s
tests.contact.test_contact test_contact_subject_field_visible PASSED 0.98s
tests.contact.test_contact test_contact_message_field_visible PASSED 0.94s
tests.contact.test_contact test_contact_send_button_visible_and_enabled PASSED 0.98s
tests.contact.test_contact test_contact_form_accepts_input PASSED 1.11s
tests.contact.test_contact test_EI_TC_4224_positive_contact_page_accessible_and_responsive PASSED 1.78s
tests.contact.test_contact test_EI_TC_4225_positive_contact_page_loads_with_correct_info PASSED 1.13s
tests.contact.test_contact test_EI_TC_4227_negative_contact_form_invalid_inputs_blocked PASSED 2.14s

Suite: login

Class Test Status Duration
tests.login.test_EI_1074_bug_incorrect_error_message_displayed_on_invalid_login test_EI_1074_bug_incorrect_error_message_displayed_on_invalid_login PASSED 1.00s
tests.login.test_EI_1074_bug_incorrect_error_message_displayed_on_invalid_login test_EI_3372_bug_teacher_auth0_login PASSED 18.08s
tests.login.test_EI_1074_bug_incorrect_error_message_displayed_on_invalid_login test_EI_TC_4297_verify_incorrect_login_shows_invalid_credentials_instead_of_password_po… PASSED 5.92s
tests.login.test_EI_1074_bug_incorrect_error_message_displayed_on_invalid_login test_EI_TC_4299_verify_successful_login_flow_for_Teacher PASSED 45.11s
tests.login.test_EI_1247_teacher_login_with_empty_email_only test_EI_1247_teacher_login_with_empty_email_only PASSED 2.76s
tests.login.test_EI_1247_teacher_login_with_empty_email_only test_EI_TC_4116_negative_login_with_empty_email PASSED 1.12s
tests.login.test_EI_1247_teacher_login_with_empty_email_only test_EI_TC_4118_positive_login_with_valid_email_and_password PASSED 21.55s
tests.login.test_EI_1297_student_session_management test_EI_TC_1297_A_positive_student_logs_in_and_navigates_portal_sections PASSED 38.19s
tests.login.test_EI_1297_student_session_management test_EI_TC_1297_B_positive_student_session_persists_across_browser_tabs PASSED 13.12s
tests.login.test_EI_1297_student_session_management test_EI_TC_1297_C_positive_secure_logout_and_refresh_does_not_leak_protected_content PASSED 47.56s
tests.login.test_EI_1297_student_session_management test_EI_TC_1297_D_positive_student_holds_two_concurrent_sessions PASSED 25.23s
tests.login.test_EI_1318_student_login_with_empty_email test_EI_1318_student_login_with_empty_email PASSED 2.72s
tests.login.test_EI_1318_student_login_with_empty_email test_EI_TC_3611_positive_successful_login_with_valid_email_and_password PASSED 27.52s
tests.login.test_EI_1318_student_login_with_empty_email test_EI_TC_3612_negative_empty_email_with_valid_password_shows_validation_and_prevents_… PASSED 1.14s
tests.login.test_EI_1326_student_login_with_invalid_email_format test_EI_1326_student_login_with_invalid_email_format PASSED 2.40s
tests.login.test_EI_1326_student_login_with_invalid_email_format test_EI_TC_3605_positive_valid_email_login_succeeds_on_student_portal PASSED 8.45s
tests.login.test_EI_1326_student_login_with_invalid_email_format test_EI_TC_3606_negative_invalid_email_missing_at_is_rejected PASSED 1.01s
tests.login.test_EI_1329_student_login_with_empty_password test_EI_1329_student_login_with_empty_password PASSED 2.41s
tests.login.test_EI_1329_student_login_with_empty_password test_EI_TC_4082_positive_valid_login_with_correct_email_and_password PASSED 41.60s
tests.login.test_EI_1329_student_login_with_empty_password test_EI_TC_4080_negative_empty_password_with_valid_email_shows_validation_and_prevents_… PASSED 1.12s
tests.login.test_EI_2499_teacher_login_mixed_case_email test_EI_TC_1846_positive_login_succeeds_with_lowercase_email PASSED 8.86s
tests.login.test_EI_2499_teacher_login_mixed_case_email test_EI_TC_1847_positive_login_succeeds_with_uppercase_email PASSED 8.47s
tests.login.test_EI_2499_teacher_login_mixed_case_email test_EI_2499_positive_login_succeeds_with_alternating_case_email PASSED 41.64s
tests.login.test_EI_2499_teacher_login_mixed_case_email test_EI_TC_1848_negative_login_fails_with_wrong_password_for_mixed_case_email PASSED 3.73s
tests.login.test_EI_2499_teacher_login_mixed_case_email test_EI_TC_1849_negative_login_fails_with_nonexistent_email PASSED 3.72s
tests.login.test_EI_2515_student_login_malformed_email_validation test_EI_2515_negative_email_missing_at_symbol_is_rejected PASSED 1.03s
tests.login.test_EI_2515_student_login_malformed_email_validation test_EI_2515_negative_email_missing_domain_extension_is_rejected PASSED 1.06s
tests.login.test_EI_2515_student_login_malformed_email_validation test_EI_2515_negative_various_malformed_email_combinations_are_rejected PASSED 2.25s
tests.login.test_EI_2522_teacher_login_sql_injection_payloads_rejected test_EI_2522_teacher_login_sql_injection_payloads_rejected PASSED 26.55s
tests.login.test_EI_2528_teacher_login_with_valid_credentials test_EI_2528_teacher_login_with_valid_credentials PASSED 1.06s
tests.login.test_EI_2528_teacher_login_with_valid_credentials test_EI_TC_4113_teacher_login_with_valid_teacher_credentials PASSED 33.69s
tests.login.test_EI_2528_teacher_login_with_valid_credentials test_EI_TC_4114_teacher_login_with_invalid_credentials PASSED 6.12s
tests.login.test_EI_2630_login_with_invalid_credentials test_EI_TC_1870_positive_valid_teacher_credentials_land_on_teacher_portal PASSED 40.78s
tests.login.test_EI_2630_login_with_invalid_credentials test_EI_TC_1871_negative_invalid_username_and_invalid_password_are_rejected PASSED 5.91s
tests.login.test_EI_2630_login_with_invalid_credentials test_EI_TC_1872_negative_valid_username_with_invalid_password_is_rejected PASSED 5.95s
tests.login.test_EI_2630_login_with_invalid_credentials test_EI_TC_1873_negative_empty_credentials_are_rejected PASSED 5.84s
tests.login.test_EI_2687_teacher_login_leading_trailing_spaces test_EI_2687_teacher_login_leading_trailing_spaces_handled_correctly PASSED 10.53s
tests.login.test_EI_2687_teacher_login_leading_trailing_spaces test_EI_TC_2009_positive_login_does_not_succeed_with_space_padded_password PASSED 3.70s
tests.login.test_EI_2687_teacher_login_leading_trailing_spaces test_EI_TC_2010_negative_invalid_credentials_with_spaces_are_rejected PASSED 3.63s
tests.login.test_EI_2738_teacher_login_unregistered_email test_EI_TC_2739_negative_login_with_unregistered_email_is_rejected PASSED 5.91s
tests.login.test_EI_2738_teacher_login_unregistered_email test_EI_TC_2740_negative_rejection_message_does_not_reveal_account_existence PASSED 11.35s
tests.login.test_EI_2741_login_with_incorrect_password test_EI_TC_3987_positive_correct_password_lands_on_teacher_dashboard PASSED 19.24s
tests.login.test_EI_2741_login_with_incorrect_password test_EI_TC_3985_negative_incorrect_password_is_rejected_with_generic_error PASSED 6.05s
tests.login.test_EI_2743_teacher_login_with_empty_password_only test_EI_2743_teacher_login_with_empty_password_only PASSED 6.05s
tests.login.test_EI_2743_teacher_login_with_empty_password_only test_EI_TC_2486_login_with_valid_email_and_password___successful_login PASSED 1.17s
tests.login.test_EI_2743_teacher_login_with_empty_password_only test_EI_2487_login_with_empty_password_should_be_rejected PASSED 5.93s
tests.login.test_EI_2744_teacher_login_email_validation test_EI_TC_2481_positive_valid_email_and_password_logs_in PASSED 1.66s
tests.login.test_EI_2744_teacher_login_email_validation test_EI_TC_2482_negative_email_missing_at_symbol_is_rejected PASSED 1.32s
tests.login.test_EI_2744_teacher_login_email_validation test_EI_TC_2483_negative_email_invalid_domain_is_rejected PASSED 1.18s
tests.login.test_EI_2760_student_successful_login test_EI_TC_5304_positive_student_successful_login_lands_on_dashboard PASSED 27.96s
tests.login.test_EI_2760_student_successful_login test_EI_TC_5305_positive_student_session_persists_across_reload PASSED 12.22s
tests.login.test_EI_2760_student_successful_login test_EI_TC_5306_positive_student_logout_ends_session_and_blocks_dashboard PASSED 15.07s
tests.login.test_EI_2821_teacher_login_account test_EI_2821_teacher_login_account PASSED 1.03s
tests.login.test_EI_2821_teacher_login_account test_EI_TC_3935_successful_login_for_teacher_with_valid_credentials_and_access_to_dashb… PASSED 32.28s
tests.login.test_EI_2821_teacher_login_account test_EI_TC_3936_login_with_invalid_password_should_fail_and_show_error PASSED 6.05s
tests.login.test_EI_2821_teacher_login_account test_EI_TC_3937_login_with_non_existent_email_should_fail_gracefully PASSED 6.03s
tests.login.test_EI_2861_teacher_login_max_password_length test_EI_TC_4000_positive_password_at_max_length_is_accepted PASSED 1.47s
tests.login.test_EI_2861_teacher_login_max_password_length test_EI_TC_4001_negative_password_over_max_length_is_blocked PASSED 3.53s
tests.login.test_EI_2934_login_case_sensitive_password test_EI_TC_4339_positive_login_succeeds_with_correct_case_password PASSED 38.96s
tests.login.test_EI_2934_login_case_sensitive_password test_EI_TC_4341_negative_login_fails_with_case_mismatched_password PASSED 5.92s
tests.login.test_EI_2938_teacher_multi_device_session test_EI_TC_2922_positive_same_teacher_logs_in_on_desktop_and_mobile_concurrently PASSED 1m 02s
tests.login.test_EI_2938_teacher_multi_device_session test_EI_TC_2923_negative_four_concurrent_sessions_all_succeed_documenting_no_session_cap PASSED 1m 06s
tests.login.test_EI_2962_login_character_length test_EI_TC_3960_positive_valid_length_credentials_login_succeeds PASSED 2.46s
tests.login.test_EI_2962_login_character_length test_EI_TC_3962_negative_email_over_max_length_blocks_login PASSED 2.55s
tests.login.test_EI_2962_login_character_length test_EI_TC_3963_negative_password_over_max_length_blocks_login PASSED 2.51s
tests.login.test_EI_2995_student_login_with_empty_email_and_password test_EI_2995_student_login_with_empty_email_and_password PASSED 1.08s
tests.login.test_EI_3307_forgot_password_link_login_pages test_EI_TC_2353_positive_forgot_password_link_visible_on_all_login_pages PASSED 1.44s
tests.login.test_EI_3307_forgot_password_link_login_pages test_EI_TC_2354_negative_invalid_email_is_rejected_not_silently_accepted PASSED 9.00s
tests.login.test_EI_3372_bug_teacher_auth0_login test_EI_3372_login_button_visible_on_home PASSED 1.11s
tests.login.test_EI_3372_bug_teacher_auth0_login test_EI_3372_bug_teacher_auth0_login PASSED 1.15s
tests.login.test_EI_3372_bug_teacher_auth0_login test_valid_credentials_redirect_back_to_app PASSED 24.69s
tests.login.test_EI_3372_bug_teacher_auth0_login test_authenticated_user_lands_on_teacher_page PASSED 2.78s
tests.login.test_EI_3372_bug_teacher_auth0_login test_authenticated_page_has_main_content PASSED 3.42s
tests.login.test_EI_3435_back_arrow_login_ui test_EI_TC_3435_landing_page_stops_session_so_login_button_shows_form PASSED 7.20s
tests.login.test_EI_515_bug_login_unexpected_application_error test_EI_TC_3529_positive_valid_credentials_land_on_teacher_dashboard PASSED 2.27s
tests.login.test_EI_515_bug_login_unexpected_application_error test_EI_TC_3530_negative_incorrect_password_does_not_crash_the_app PASSED 6.07s
tests.login.test_EI_626_user_authentication test_EI_626_teacher_authenticates_with_valid_credentials PASSED 4.75s
tests.login.test_EI_626_user_authentication test_EI_626_student_authenticates_with_valid_credentials PASSED 4.95s
tests.login.test_EI_626_user_authentication test_EI_626_invalid_credentials_are_rejected PASSED 6.14s
tests.login.test_EI_821_username_and_password_length_restrictions test_EI_TC_2018_positive_valid_credentials_with_min_chars_length PASSED 25.12s
tests.login.test_EI_821_username_and_password_length_restrictions test_EI_TC_2020_negative_username_with_max_chars_length PASSED 2.56s
tests.login.test_EI_821_username_and_password_length_restrictions test_EI_TC_2022_negative_password_with_max_chars_length PASSED 2.68s
tests.login.test_EI_821_username_and_password_length_restrictions test_EI_TC_2026_edge_email_at_exactly_max_length_is_accepted PASSED 1.48s
tests.login.test_auth0_login_flow test_valid_credentials_redirect_back_to_app PASSED 6.23s
tests.login.test_auth0_login_flow test_protected_route_redirects_to_login PASSED 0.86s
tests.login.test_auth0_login_flow test_home_page_shows_sign_in_button PASSED 1.06s
tests.login.test_auth0_login_flow test_sign_in_navigates_to_login_form PASSED 1.15s
tests.login.test_auth0_login_flow test_successful_login_lands_on_dashboard PASSED 9.89s
tests.login.test_auth0_login_flow test_logout_returns_to_home PASSED 2.01s
tests.login.test_new_users_login test_teacher_full_login_verification[chromium-aio.pool.teacher1@eruditiontx.com] PASSED 30.02s
tests.login.test_new_users_login test_teacher_full_login_verification[chromium-aio.pool.teacher2@eruditiontx.com] PASSED 3.92s
tests.login.test_new_users_login test_teacher_full_login_verification[chromium-aio.pool.teacher3@eruditiontx.com] PASSED 3.15s
tests.login.test_new_users_login test_teacher_full_login_verification[chromium-aio.pool.teacher4@eruditiontx.com] PASSED 5.77s
tests.login.test_new_users_login test_teacher_full_login_verification[chromium-aio.pool.teacher5@eruditiontx.com] PASSED 2.99s
tests.login.test_new_users_login test_student_full_login_verification[chromium-aio.pool.student1@eruditiontx.com] PASSED 10.74s
tests.login.test_new_users_login test_student_full_login_verification[chromium-aio.pool.student2@eruditiontx.com] PASSED 33.36s
tests.login.test_new_users_login test_student_full_login_verification[chromium-aio.pool.student3@eruditiontx.com] PASSED 11.92s
tests.login.test_new_users_login test_student_full_login_verification[chromium-aio.pool.student4@eruditiontx.com] PASSED 13.45s
tests.login.test_new_users_login test_student_full_login_verification[chromium-aio.pool.student5@eruditiontx.com] PASSED 6.00s
tests.login.test_session_survives_access_token_expiry test_in_app_navigation_recovers_without_a_full_page_load PASSED 31.01s
tests.login.test_session_survives_access_token_expiry test_a_full_page_load_recovers_instead_of_signing_the_student_out PASSED 2.43s
tests.login.test_session_survives_access_token_expiry test_the_session_still_works_after_the_silent_refresh PASSED 3.31s
tests.login.test_teacher_auth0_login test_login_page_loads_correctly PASSED 0.99s
tests.login.test_teacher_auth0_login test_sign_in_button_navigates_to_login_form PASSED 1.09s
tests.login.test_teacher_auth0_login test_valid_credentials_redirect_back_to_app PASSED 1.84s
tests.login.test_teacher_auth0_login test_authenticated_user_lands_on_teacher_page PASSED 2.97s
tests.login.test_teacher_auth0_login test_authenticated_page_has_main_content PASSED 10.37s

Suite: student

Class Test Status Duration
tests.student.test_EI_1101_student_multiple_attempts test_EI_TC_1101_A_positive_second_attempt_does_not_show_previous_answer PASSED 45.05s
tests.student.test_EI_1101_student_multiple_attempts test_EI_TC_1101_B_positive_latest_attempt_grade_is_reflected_not_first_or_highest PASSED 20.61s
tests.student.test_EI_1172_single_dnd_assignment_player test_EI_1172_single_dnd_assignment_player_renders_without_crash PASSED 35.52s
tests.student.test_EI_1172_single_dnd_assignment_player test_EI_1172_single_dnd_student_can_drag_choice_into_blank PASSED 4.55s
tests.student.test_EI_1205_bug_student_view_submission_after_attempts_used test_EI_1205_negative_view_submission_after_attempts_used_no_crash PASSED 1m 39s
tests.student.test_EI_1320_view_assignment_list test_EI_1320_positive_student_views_assignment_list PASSED 1m 24s
tests.student.test_EI_141_assignment_submission_page test_EI_TC_141_positive_student_views_assignment_submission_details PASSED 1m 56s