From ab4f5b1ddaffaf9a2c90ba94776a8e4797d8adda Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Wed, 7 Sep 2022 16:09:36 +0200 Subject: [PATCH] Dismiss SendRequest on success --- .../Sources/ContactFeature/ContactFeature.swift | 4 ++++ .../ContactFeatureTests.swift | 17 +++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/Examples/xx-messenger/Sources/ContactFeature/ContactFeature.swift b/Examples/xx-messenger/Sources/ContactFeature/ContactFeature.swift index 0bf0e29b..c75faa7b 100644 --- a/Examples/xx-messenger/Sources/ContactFeature/ContactFeature.swift +++ b/Examples/xx-messenger/Sources/ContactFeature/ContactFeature.swift @@ -115,6 +115,10 @@ public let contactReducer = Reducer<ContactState, ContactAction, ContactEnvironm state.sendRequest = nil return .none + case .sendRequest(.sendSucceeded): + state.sendRequest = nil + return .none + case .sendRequest(_): return .none } diff --git a/Examples/xx-messenger/Tests/ContactFeatureTests/ContactFeatureTests.swift b/Examples/xx-messenger/Tests/ContactFeatureTests/ContactFeatureTests.swift index e629b3f0..4d637ecf 100644 --- a/Examples/xx-messenger/Tests/ContactFeatureTests/ContactFeatureTests.swift +++ b/Examples/xx-messenger/Tests/ContactFeatureTests/ContactFeatureTests.swift @@ -146,4 +146,21 @@ final class ContactFeatureTests: XCTestCase { $0.sendRequest = nil } } + + func testSendRequestSucceeded() { + let store = TestStore( + initialState: ContactState( + id: "contact-id".data(using: .utf8)!, + sendRequest: SendRequestState( + contact: .unimplemented("contact-id".data(using: .utf8)!) + ) + ), + reducer: contactReducer, + environment: .unimplemented + ) + + store.send(.sendRequest(.sendSucceeded)) { + $0.sendRequest = nil + } + } } -- GitLab