Merge pull request #1130 from LukasKorba/1129-Call-configureCrashReporter-only-when-didFinishLaunching

[#1129] Call configureCrashReporter only when didFinishLaunching
This commit is contained in:
Lukas Korba 2024-03-18 08:17:13 +01:00 committed by GitHub
commit 111e16fe31
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 17 additions and 17 deletions

View File

@ -42,11 +42,14 @@ extension RootReducer {
state.appStartState = .didFinishLaunching state.appStartState = .didFinishLaunching
// TODO: [#704], trigger the review request logic when approved by the team, // TODO: [#704], trigger the review request logic when approved by the team,
// https://github.com/Electric-Coin-Company/zashi-ios/issues/704 // https://github.com/Electric-Coin-Company/zashi-ios/issues/704
return .run { send in return .concatenate(
try await mainQueue.sleep(for: .seconds(0.5)) Effect.send(.initialization(.configureCrashReporter)),
await send(.initialization(.initialSetups)) .run { send in
} try await mainQueue.sleep(for: .seconds(0.5))
.cancellable(id: DidFinishLaunchingId.timer, cancelInFlight: true) await send(.initialization(.initialSetups))
}
.cancellable(id: DidFinishLaunchingId.timer, cancelInFlight: true)
)
case .initialization(.appDelegate(.willEnterForeground)): case .initialization(.appDelegate(.willEnterForeground)):
state.appStartState = .willEnterForeground state.appStartState = .willEnterForeground
@ -180,10 +183,7 @@ extension RootReducer {
// TODO: [#524] finish all the wallet events according to definition, https://github.com/Electric-Coin-Company/zashi-ios/issues/524 // TODO: [#524] finish all the wallet events according to definition, https://github.com/Electric-Coin-Company/zashi-ios/issues/524
LoggerProxy.event(".appDelegate(.didFinishLaunching)") LoggerProxy.event(".appDelegate(.didFinishLaunching)")
/// We need to fetch data from keychain, in order to be 100% sure the keychain can be read we delay the check a bit /// We need to fetch data from keychain, in order to be 100% sure the keychain can be read we delay the check a bit
return .concatenate( return Effect.send(.initialization(.checkWalletInitialization))
Effect.send(.initialization(.configureCrashReporter)),
Effect.send(.initialization(.checkWalletInitialization))
)
/// Evaluate the wallet's state based on keychain keys and database files presence /// Evaluate the wallet's state based on keychain keys and database files presence
case .initialization(.checkWalletInitialization): case .initialization(.checkWalletInitialization):

View File

@ -63,12 +63,12 @@ class AppInitializationTests: XCTestCase {
await testQueue.advance(by: 0.02) await testQueue.advance(by: 0.02)
await store.receive(.initialization(.configureCrashReporter))
await store.receive(.initialization(.initialSetups)) await store.receive(.initialization(.initialSetups))
await testQueue.advance(by: 0.02) await testQueue.advance(by: 0.02)
await store.receive(.initialization(.configureCrashReporter))
await store.receive(.initialization(.checkWalletInitialization)) await store.receive(.initialization(.checkWalletInitialization))
await store.receive(.initialization(.respondToWalletInitializationState(.initialized))) await store.receive(.initialization(.respondToWalletInitializationState(.initialized)))
@ -137,12 +137,12 @@ class AppInitializationTests: XCTestCase {
await testQueue.advance(by: 0.02) await testQueue.advance(by: 0.02)
await store.receive(.initialization(.configureCrashReporter))
await store.receive(.initialization(.initialSetups)) await store.receive(.initialization(.initialSetups))
await testQueue.advance(by: 0.02) await testQueue.advance(by: 0.02)
await store.receive(.initialization(.configureCrashReporter))
await store.receive(.initialization(.checkWalletInitialization)) await store.receive(.initialization(.checkWalletInitialization))
await store.receive(.initialization(.respondToWalletInitializationState(.initialized))) await store.receive(.initialization(.respondToWalletInitializationState(.initialized)))
@ -195,10 +195,10 @@ class AppInitializationTests: XCTestCase {
state.appStartState = .didFinishLaunching state.appStartState = .didFinishLaunching
} }
await store.receive(.initialization(.initialSetups))
await store.receive(.initialization(.configureCrashReporter)) await store.receive(.initialization(.configureCrashReporter))
await store.receive(.initialization(.initialSetups))
await store.receive(.initialization(.checkWalletInitialization)) await store.receive(.initialization(.checkWalletInitialization))
await store.receive(.initialization(.respondToWalletInitializationState(.keysMissing))) { state in await store.receive(.initialization(.respondToWalletInitializationState(.keysMissing))) { state in
@ -229,10 +229,10 @@ class AppInitializationTests: XCTestCase {
state.appStartState = .didFinishLaunching state.appStartState = .didFinishLaunching
} }
await store.receive(.initialization(.initialSetups))
await store.receive(.initialization(.configureCrashReporter)) await store.receive(.initialization(.configureCrashReporter))
await store.receive(.initialization(.initialSetups))
await store.receive(.initialization(.checkWalletInitialization)) await store.receive(.initialization(.checkWalletInitialization))
await store.receive(.initialization(.respondToWalletInitializationState(.uninitialized))) await store.receive(.initialization(.respondToWalletInitializationState(.uninitialized)))