// // AccessibilityTests.swift // SportsTimeUITests // // Smoke test for Dynamic Type accessibility at XXXL text size. // QA Sheet: A-005 // import XCTest final class AccessibilityTests: BaseUITestCase { /// A-005: Wizard at large text — all steps reachable, buttons tappable. @MainActor func testA005_LargeDynamicTypeEntryFlow() { // Re-launch with large Dynamic Type app.terminate() app.launchArguments = [ "--ui-testing", "--disable-animations", "--reset-state", "-UIPreferredContentSizeCategoryName", "UICTContentSizeCategoryAccessibilityXXXL" ] app.launch() let home = HomeScreen(app: app) home.waitForLoad() // At XXXL text the button may be pushed below the fold; scroll into view home.startPlanningButton.scrollIntoView(in: app.scrollViews.firstMatch) XCTAssertTrue(home.startPlanningButton.isHittable, "Start Planning should remain hittable at large Dynamic Type") // Open wizard and verify planning mode options are reachable home.tapStartPlanning() let wizard = TripWizardScreen(app: app) wizard.waitForLoad() let dateRangeMode = wizard.planningModeButton("dateRange") dateRangeMode.scrollIntoView(in: app.scrollViews.firstMatch) XCTAssertTrue(dateRangeMode.isHittable, "Planning mode should be hittable at large Dynamic Type") captureScreenshot(named: "A005-Accessibility-LargeType") } }