// // InsightsPullToRefreshTests.swift // Tests iOS // // TC-047: Pull to refresh on Insights tab. // import XCTest final class InsightsPullToRefreshTests: BaseUITestCase { override var seedFixture: String? { "week_of_moods" } override var bypassSubscription: Bool { true } /// TC-047: Pull-to-refresh gesture on Insights tab does not crash. func testInsights_PullToRefresh_NoLayoutCrash() { let tabBar = TabBarScreen(app: app) tabBar.tapInsights() let header = app.element(UITestID.Insights.header) header.waitForExistenceOrFail( timeout: navigationTimeout, message: "Insights header should be visible" ) captureScreenshot(name: "insights_before_refresh") // Perform pull-to-refresh gesture app.swipeDown() // Verify UI is still functional after refresh header.waitForExistenceOrFail( timeout: navigationTimeout, message: "Insights header should still be visible after pull-to-refresh" ) captureScreenshot(name: "insights_after_refresh") } }