Skip to content
Snippets Groups Projects
Commit be76a5ce authored by Dariusz Rybicki's avatar Dariusz Rybicki
Browse files

Update MessengerDestroy

Reset stored services list on destroy
parent c3813315
Branches
Tags
2 merge requests!138Notifications,!102Release 1.0.0
This commit is part of merge request !138. Comments created here will be created in the context of that merge request.
...@@ -25,6 +25,7 @@ extension MessengerDestroy { ...@@ -25,6 +25,7 @@ extension MessengerDestroy {
env.e2e.set(nil) env.e2e.set(nil)
env.cMix.set(nil) env.cMix.set(nil)
env.isListeningForMessages.set(false) env.isListeningForMessages.set(false)
env.serviceList.set(nil)
try env.fileManager.removeItem(env.storageDir) try env.fileManager.removeItem(env.storageDir)
try env.passwordStorage.remove() try env.passwordStorage.remove()
} }
......
...@@ -17,6 +17,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -17,6 +17,7 @@ final class MessengerDestroyTests: XCTestCase {
var didSetCMix: [CMix?] = [] var didSetCMix: [CMix?] = []
var didRemovePassword = 0 var didRemovePassword = 0
var didSetIsListeningForMessages: [Bool] = [] var didSetIsListeningForMessages: [Bool] = []
var didSetServiceList: [MessageServiceList?] = []
var env: MessengerEnvironment = .unimplemented var env: MessengerEnvironment = .unimplemented
env.cMix.get = { env.cMix.get = {
...@@ -34,6 +35,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -34,6 +35,7 @@ final class MessengerDestroyTests: XCTestCase {
env.e2e.set = { didSetE2E.append($0) } env.e2e.set = { didSetE2E.append($0) }
env.cMix.set = { didSetCMix.append($0) } env.cMix.set = { didSetCMix.append($0) }
env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) } env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) }
env.serviceList.set = { didSetServiceList.append($0) }
env.fileManager.removeItem = { didRemoveItem.append($0) } env.fileManager.removeItem = { didRemoveItem.append($0) }
env.passwordStorage.remove = { didRemovePassword += 1 } env.passwordStorage.remove = { didRemovePassword += 1 }
let destroy: MessengerDestroy = .live(env) let destroy: MessengerDestroy = .live(env)
...@@ -48,6 +50,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -48,6 +50,7 @@ final class MessengerDestroyTests: XCTestCase {
XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true]) XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true]) XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetIsListeningForMessages, [false]) XCTAssertNoDifference(didSetIsListeningForMessages, [false])
XCTAssertNoDifference(didSetServiceList.map { $0 == nil }, [true])
XCTAssertNoDifference(didRemoveItem, [storageDir]) XCTAssertNoDifference(didRemoveItem, [storageDir])
XCTAssertNoDifference(didRemovePassword, 1) XCTAssertNoDifference(didRemovePassword, 1)
} }
...@@ -79,6 +82,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -79,6 +82,7 @@ final class MessengerDestroyTests: XCTestCase {
var didSetE2E: [E2E?] = [] var didSetE2E: [E2E?] = []
var didSetCMix: [CMix?] = [] var didSetCMix: [CMix?] = []
var didSetIsListeningForMessages: [Bool] = [] var didSetIsListeningForMessages: [Bool] = []
var didSetServiceList: [MessageServiceList?] = []
var env: MessengerEnvironment = .unimplemented var env: MessengerEnvironment = .unimplemented
env.cMix.get = { nil } env.cMix.get = { nil }
...@@ -88,6 +92,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -88,6 +92,7 @@ final class MessengerDestroyTests: XCTestCase {
env.e2e.set = { didSetE2E.append($0) } env.e2e.set = { didSetE2E.append($0) }
env.cMix.set = { didSetCMix.append($0) } env.cMix.set = { didSetCMix.append($0) }
env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) } env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) }
env.serviceList.set = { didSetServiceList.append($0) }
env.fileManager.removeItem = { _ in throw error } env.fileManager.removeItem = { _ in throw error }
let destroy: MessengerDestroy = .live(env) let destroy: MessengerDestroy = .live(env)
...@@ -100,6 +105,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -100,6 +105,7 @@ final class MessengerDestroyTests: XCTestCase {
XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true]) XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true]) XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetIsListeningForMessages, [false]) XCTAssertNoDifference(didSetIsListeningForMessages, [false])
XCTAssertNoDifference(didSetServiceList.map { $0 == nil }, [true])
} }
func testRemovePasswordFailure() { func testRemovePasswordFailure() {
...@@ -113,6 +119,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -113,6 +119,7 @@ final class MessengerDestroyTests: XCTestCase {
var didSetE2E: [E2E?] = [] var didSetE2E: [E2E?] = []
var didSetCMix: [CMix?] = [] var didSetCMix: [CMix?] = []
var didSetIsListeningForMessages: [Bool] = [] var didSetIsListeningForMessages: [Bool] = []
var didSetServiceList: [MessageServiceList?] = []
var env: MessengerEnvironment = .unimplemented var env: MessengerEnvironment = .unimplemented
env.cMix.get = { nil } env.cMix.get = { nil }
...@@ -122,6 +129,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -122,6 +129,7 @@ final class MessengerDestroyTests: XCTestCase {
env.e2e.set = { didSetE2E.append($0) } env.e2e.set = { didSetE2E.append($0) }
env.cMix.set = { didSetCMix.append($0) } env.cMix.set = { didSetCMix.append($0) }
env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) } env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) }
env.serviceList.set = { didSetServiceList.append($0) }
env.storageDir = storageDir env.storageDir = storageDir
env.fileManager.removeItem = { didRemoveItem.append($0) } env.fileManager.removeItem = { didRemoveItem.append($0) }
env.passwordStorage.remove = { throw error } env.passwordStorage.remove = { throw error }
...@@ -136,6 +144,7 @@ final class MessengerDestroyTests: XCTestCase { ...@@ -136,6 +144,7 @@ final class MessengerDestroyTests: XCTestCase {
XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true]) XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true]) XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetIsListeningForMessages, [false]) XCTAssertNoDifference(didSetIsListeningForMessages, [false])
XCTAssertNoDifference(didSetServiceList.map { $0 == nil }, [true])
XCTAssertNoDifference(didRemoveItem, [storageDir]) XCTAssertNoDifference(didRemoveItem, [storageDir])
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment