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

Remove password in MessengerDestroy

parent 21105773
No related branches found
No related tags found
2 merge requests!102Release 1.0.0,!59Update MessengerDestory
......@@ -23,6 +23,7 @@ extension MessengerDestroy {
env.e2e.set(nil)
env.cMix.set(nil)
try env.fileManager.removeDirectory(env.storageDir)
try env.passwordStorage.remove()
}
}
}
......
......@@ -13,6 +13,7 @@ final class MessengerDestroyTests: XCTestCase {
var didSetUD: [UserDiscovery?] = []
var didSetE2E: [E2E?] = []
var didSetCMix: [CMix?] = []
var didRemovePassword = 0
var env: MessengerEnvironment = .unimplemented
env.cMix.get = {
......@@ -28,6 +29,7 @@ final class MessengerDestroyTests: XCTestCase {
env.e2e.set = { didSetE2E.append($0) }
env.cMix.set = { didSetCMix.append($0) }
env.fileManager.removeDirectory = { didRemoveDirectory.append($0) }
env.passwordStorage.remove = { didRemovePassword += 1 }
let destroy: MessengerDestroy = .live(env)
try destroy()
......@@ -38,11 +40,13 @@ final class MessengerDestroyTests: XCTestCase {
XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
XCTAssertNoDifference(didRemoveDirectory, [storageDir])
XCTAssertNoDifference(didRemovePassword, 1)
}
func testStopNetworkFollowerFailure() {
struct Error: Swift.Error, Equatable {}
let error = Error()
var env: MessengerEnvironment = .unimplemented
env.cMix.get = {
var cMix: CMix = .unimplemented
......@@ -79,4 +83,32 @@ final class MessengerDestroyTests: XCTestCase {
XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
}
func testRemovePasswordFailure() {
struct Error: Swift.Error, Equatable {}
let error = Error()
let storageDir = "test-storage-dir"
var didRemoveDirectory: [String] = []
var didSetUD: [UserDiscovery?] = []
var didSetE2E: [E2E?] = []
var didSetCMix: [CMix?] = []
var env: MessengerEnvironment = .unimplemented
env.cMix.get = { nil }
env.ud.set = { didSetUD.append($0) }
env.e2e.set = { didSetE2E.append($0) }
env.cMix.set = { didSetCMix.append($0) }
env.storageDir = storageDir
env.fileManager.removeDirectory = { didRemoveDirectory.append($0) }
env.passwordStorage.remove = { throw error }
let destroy: MessengerDestroy = .live(env)
XCTAssertThrowsError(try destroy()) { err in
XCTAssertEqual(err as? Error, error)
}
XCTAssertNoDifference(didSetUD.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
XCTAssertNoDifference(didRemoveDirectory, [storageDir])
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment