Files
Reflect/Tests iOS
Trey t 16c5c34942 Fix 4 flaky UI tests for iOS 26 compatibility
- 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>
2026-02-26 18:59:22 -06:00
..

Tests iOS README

Purpose

Tests iOS/ contains XCTest-based UI tests for the iOS app.

Start Here Before Adding Tests

  1. Read /Users/treyt/Desktop/code/Feels/docs/XCUITest-Authoring.md.
  2. Reuse BaseUITestCase and helpers in Helpers/.
  3. 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