Add F-100, F-101, F-106 UI tests and page objects for Progress feature

Adds 3 new UI tests covering stadium visit manual entry, required field
validation, and games history navigation. Includes accessibility IDs on
StadiumVisitSheet/ProgressTabView and new page objects (StadiumVisitSheetScreen,
GamesHistoryScreen) in the test framework.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-19 23:02:52 -06:00
parent f10bc4fe59
commit 8421b23f0c
4 changed files with 229 additions and 1 deletions

View File

@@ -413,6 +413,7 @@ struct ProgressTabView: View {
.font(.subheadline)
.foregroundStyle(Theme.warmOrange)
}
.accessibilityIdentifier("progress.seeAllGamesHistory")
}
ForEach(viewModel.recentVisits) { visitSummary in

View File

@@ -114,6 +114,7 @@ struct StadiumVisitSheet: View {
.foregroundStyle(Theme.textMuted(colorScheme))
}
}
.accessibilityIdentifier("visitSheet.stadiumButton")
.accessibilityLabel(selectedStadium != nil ? "Stadium: \(selectedStadium!.name)" : "Select stadium")
.accessibilityHint("Opens stadium picker")
} header: {
@@ -314,6 +315,7 @@ struct StadiumVisitSheet: View {
}
.disabled(!canSave || isSaving)
.fontWeight(.semibold)
.accessibilityIdentifier("visitSheet.saveButton")
}
}
.sheet(isPresented: $showStadiumPicker) {
@@ -488,6 +490,7 @@ struct StadiumPickerSheet: View {
}
}
}
.accessibilityIdentifier("stadiumPicker.stadiumRow")
.listRowBackground(Theme.cardBackground(colorScheme))
}
.scrollDismissesKeyboard(.interactively)