- AppLaunchTests/StabilityTests: Increase assertTabSelected timeout to 8s for iOS 26 Liquid Glass delayed isSelected state updates - DeepLinkTests: Detect SubscriptionStoreView container instead of text labels, since Apple's native view shows "Subscription Unavailable" in test storefront - SettingsActionTests: Check for empty state after clearing data, bump Settings header timeout to 8s Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Tests iOS README
Purpose
Tests iOS/ contains XCTest-based UI tests for the iOS app.
Start Here Before Adding Tests
- Read
/Users/treyt/Desktop/code/Feels/docs/XCUITest-Authoring.md. - Reuse
BaseUITestCaseand helpers inHelpers/. - Reuse screen objects in
Screens/before writing inline query logic.
Required Pattern
- Test class inherits
BaseUITestCase. - Selectors use
UITestID/ accessibility identifiers first. - Waiting/tapping uses helper methods (
tapWhenReady,waitForDisappearance, etc). - New app interactions get IDs in
/Users/treyt/Desktop/code/Feels/Shared/AccessibilityIdentifiers.swift.
Anti-Patterns
sleep(...)- Selector logic based only on localized labels
- Duplicating navigation logic instead of using
Screens/*
Useful Paths
/Users/treyt/Desktop/code/Feels/Tests iOS/Helpers/BaseUITestCase.swift/Users/treyt/Desktop/code/Feels/Tests iOS/Helpers/WaitHelpers.swift/Users/treyt/Desktop/code/Feels/docs/templates/XCUITestSuiteTemplate.swift