fix Xcode project testability

This commit is contained in:
2026-04-10 09:45:29 +02:00
parent 9e687d0cf2
commit efe2f9cfea
2 changed files with 27 additions and 26 deletions
+2 -2
View File
@@ -22,12 +22,12 @@ This is the canonical working plan and progress log for the project. Use this fi
- Backend bet coverage now includes invalid-session and invalid-market rejection regressions, plus settlement override coverage.
- Backend analytics coverage now includes a representative key user flow batch.
- iOS project scaffolding now exists as `mobile/ios-app/HermesApp.xcodeproj` with a shared scheme and XCTest target.
- iOS sources and tests typecheck against the iPhone simulator SDK, and a standalone localization/error-mapping harness passes.
- iOS sources and tests build and pass in Xcode on an iPhone simulator, and a standalone localization/error-mapping harness passes.
### Still Open
- Continue through the remaining plan phases and finish any leftover localization and polish work.
- Run Xcode build/test validation once the local Xcode license is accepted; `xcodebuild` is currently blocked by the license gate in this environment.
- Keep the iOS project in sync with the plan as the app grows.
- Keep expanding tests around session, odds, settlement, and analytics behavior.
## 1. Purpose
@@ -39,30 +39,30 @@
/* Begin PBXFileReference section */
AFDCE723CFA31DF2A91DA374 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = App/HermesApp.swift; sourceTree = "<group>"; };
3686935FA33F0278440C2137 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = App/HermesErrorMapper.swift; sourceTree = "<group>"; };
DA1E3F27959B70E2FA168E86 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = App/HermesRepository.swift; sourceTree = "<group>"; };
6DE0108803DE783A7D5D528C = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = App/RootView.swift; sourceTree = "<group>"; };
895DC0E4CCA3A72E5897D850 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Analytics/AnalyticsClient.swift; sourceTree = "<group>"; };
A24F440D4AC95A5E5A294BB5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/DesignSystem/Theme.swift; sourceTree = "<group>"; };
E727CD23C8DFCD3FFA972118 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Gestures/GestureHandlers.swift; sourceTree = "<group>"; };
09BEEF1EACD1683731EA8B13 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Haptics/HapticsController.swift; sourceTree = "<group>"; };
618EEBF90A2888756D2A0D3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Localization/LocalizationStore.swift; sourceTree = "<group>"; };
3C969AD72CFEAAFD87172BC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Media/HermesVideoPlayerView.swift; sourceTree = "<group>"; };
06986680EEC52DA119F3C422 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Media/PlayerCoordinator.swift; sourceTree = "<group>"; };
154F342749182EA88D7D3EA2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Networking/APIClient.swift; sourceTree = "<group>"; };
2927929745A862DD7DB483BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Core/Networking/APIModels.swift; sourceTree = "<group>"; };
738C6476A9F7A2BBCA018EC7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Feed/FeedView.swift; sourceTree = "<group>"; };
A6E7323ECDEAA449DD2925F0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Onboarding/OnboardingView.swift; sourceTree = "<group>"; };
29BBCB2FC555E6C905C380A7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Result/ResultView.swift; sourceTree = "<group>"; };
D34D3C5C813EAB2AD265F9CE = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Reveal/RevealView.swift; sourceTree = "<group>"; };
16E0F69DFE5FC784FB2BBECA = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Round/RoundView.swift; sourceTree = "<group>"; };
78ADAFCECDB66900EB275E3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Selection/SelectionView.swift; sourceTree = "<group>"; };
B9C59E00C07DD533A7DC8126 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Session/SessionView.swift; sourceTree = "<group>"; };
55B391E8147E161F76672032 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Features/Settings/SettingsView.swift; sourceTree = "<group>"; };
36A67B6FF0A52868D30E3AFF = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests/HermesAppTests/LocalizationStoreTests.swift; sourceTree = "<group>"; };
5E777846BC9ED35ED93034AA = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; path = Resources/Localization/en.lproj/Localizable.strings; sourceTree = "<group>"; };
9710CA4A388CBE265276E667 = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; path = Resources/Localization/sv.lproj/Localizable.strings; sourceTree = "<group>"; };
AFDCE723CFA31DF2A91DA374 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HermesApp.swift; sourceTree = "<group>"; };
3686935FA33F0278440C2137 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HermesErrorMapper.swift; sourceTree = "<group>"; };
DA1E3F27959B70E2FA168E86 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HermesRepository.swift; sourceTree = "<group>"; };
6DE0108803DE783A7D5D528C = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RootView.swift; sourceTree = "<group>"; };
895DC0E4CCA3A72E5897D850 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Analytics/AnalyticsClient.swift; sourceTree = "<group>"; };
A24F440D4AC95A5E5A294BB5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DesignSystem/Theme.swift; sourceTree = "<group>"; };
E727CD23C8DFCD3FFA972118 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Gestures/GestureHandlers.swift; sourceTree = "<group>"; };
09BEEF1EACD1683731EA8B13 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Haptics/HapticsController.swift; sourceTree = "<group>"; };
618EEBF90A2888756D2A0D3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Localization/LocalizationStore.swift; sourceTree = "<group>"; };
3C969AD72CFEAAFD87172BC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Media/HermesVideoPlayerView.swift; sourceTree = "<group>"; };
06986680EEC52DA119F3C422 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Media/PlayerCoordinator.swift; sourceTree = "<group>"; };
154F342749182EA88D7D3EA2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Networking/APIClient.swift; sourceTree = "<group>"; };
2927929745A862DD7DB483BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Networking/APIModels.swift; sourceTree = "<group>"; };
738C6476A9F7A2BBCA018EC7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Feed/FeedView.swift; sourceTree = "<group>"; };
A6E7323ECDEAA449DD2925F0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Onboarding/OnboardingView.swift; sourceTree = "<group>"; };
29BBCB2FC555E6C905C380A7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Result/ResultView.swift; sourceTree = "<group>"; };
D34D3C5C813EAB2AD265F9CE = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Reveal/RevealView.swift; sourceTree = "<group>"; };
16E0F69DFE5FC784FB2BBECA = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Round/RoundView.swift; sourceTree = "<group>"; };
78ADAFCECDB66900EB275E3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Selection/SelectionView.swift; sourceTree = "<group>"; };
B9C59E00C07DD533A7DC8126 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Session/SessionView.swift; sourceTree = "<group>"; };
55B391E8147E161F76672032 = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Settings/SettingsView.swift; sourceTree = "<group>"; };
36A67B6FF0A52868D30E3AFF = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HermesAppTests/LocalizationStoreTests.swift; sourceTree = "<group>"; };
5E777846BC9ED35ED93034AA = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; path = Localization/en.lproj/Localizable.strings; sourceTree = "<group>"; };
9710CA4A388CBE265276E667 = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; path = Localization/sv.lproj/Localizable.strings; sourceTree = "<group>"; };
3A8D22D1A79B415AD4892F84 = {isa = PBXFileReference; explicitFileType = wrapper.application; path = HermesApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
C1368E6B7C6BAAA50C8B38A8 = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; path = HermesAppTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@@ -213,6 +213,7 @@
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = "";
ENABLE_TESTABILITY = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
INFOPLIST_KEY_UILaunchScreen_Generation = YES;