// // SpanishLocalizationTests.swift // Tests iOS // // TC-137: Spanish localization displays correctly. // import XCTest final class SpanishLocalizationTests: BaseUITestCase { override var seedFixture: String? { "week_of_moods" } override var bypassSubscription: Bool { true } override var localeArguments: [String] { ["-AppleLanguages", "(es)", "-AppleLocale", "es_ES"] } /// TC-137: Key Spanish strings appear when launched in Spanish locale. func testSpanishLocale_DisplaysSpanishStrings() { // Day tab should load with data let tabBar = app.tabBars.firstMatch XCTAssertTrue(tabBar.waitForExistence(timeout: 5), "Tab bar should exist") captureScreenshot(name: "spanish_day_tab") // Tap the Settings tab by its Spanish label "Ajustes" let settingsTabButton = app.tabBars.buttons["Ajustes"] XCTAssertTrue( settingsTabButton.waitForExistence(timeout: 5), "Settings tab should show Spanish label 'Ajustes'" ) settingsTabButton.tap() // Verify Settings header is visible via accessibility ID let settingsHeader = app.element(UITestID.Settings.header) XCTAssertTrue( settingsHeader.waitForExistence(timeout: 5), "Settings header should be visible" ) // Verify Spanish text "Ajustes" appears as a static text on screen let ajustesText = app.staticTexts.matching( NSPredicate(format: "label == %@", "Ajustes") ).firstMatch XCTAssertTrue( ajustesText.waitForExistence(timeout: 5), "Settings should display 'Ajustes' in Spanish locale" ) captureScreenshot(name: "spanish_settings_tab") } }