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

Update backup params in messenger example

parent d881c1d3
No related branches found
No related tags found
2 merge requests!136Update backup params handling in XXMessenger,!102Release 1.0.0
...@@ -11,10 +11,6 @@ public struct BackupComponent: ReducerProtocol { ...@@ -11,10 +11,6 @@ public struct BackupComponent: ReducerProtocol {
case passphrase case passphrase
} }
public enum Error: String, Swift.Error, Equatable {
case contactUsernameMissing
}
public init( public init(
isRunning: Bool = false, isRunning: Bool = false,
isStarting: Bool = false, isStarting: Bool = false,
...@@ -102,14 +98,7 @@ public struct BackupComponent: ReducerProtocol { ...@@ -102,14 +98,7 @@ public struct BackupComponent: ReducerProtocol {
state.focusedField = nil state.focusedField = nil
return Effect.run { [state] subscriber in return Effect.run { [state] subscriber in
do { do {
let contact = try messenger.myContact(includeFacts: .types([.username])) try messenger.startBackup(password: state.passphrase)
guard let username = try contact.getFact(.username)?.value else {
throw State.Error.contactUsernameMissing
}
try messenger.startBackup(
password: state.passphrase,
params: BackupParams(username: username)
)
subscriber.send(.didStart(failure: nil)) subscriber.send(.didStart(failure: nil))
} catch { } catch {
subscriber.send(.didStart(failure: error as NSError)) subscriber.send(.didStart(failure: error as NSError))
......
...@@ -72,12 +72,6 @@ final class BackupFeatureTests: XCTestCase { ...@@ -72,12 +72,6 @@ final class BackupFeatureTests: XCTestCase {
) )
store.dependencies.app.mainQueue = .immediate store.dependencies.app.mainQueue = .immediate
store.dependencies.app.bgQueue = .immediate store.dependencies.app.bgQueue = .immediate
store.dependencies.app.messenger.myContact.run = { includeFacts in
actions.append(.didGetMyContact(includingFacts: includeFacts))
var contact = Contact.unimplemented("contact-data".data(using: .utf8)!)
contact.getFactsFromContact.run = { _ in [Fact(type: .username, value: username)] }
return contact
}
store.dependencies.app.messenger.startBackup.run = { passphrase, params in store.dependencies.app.messenger.startBackup.run = { passphrase, params in
actions.append(.didStartBackup(passphrase: passphrase, params: params)) actions.append(.didStartBackup(passphrase: passphrase, params: params))
} }
...@@ -102,12 +96,9 @@ final class BackupFeatureTests: XCTestCase { ...@@ -102,12 +96,9 @@ final class BackupFeatureTests: XCTestCase {
} }
XCTAssertNoDifference(actions, [ XCTAssertNoDifference(actions, [
.didGetMyContact(
includingFacts: .types([.username])
),
.didStartBackup( .didStartBackup(
passphrase: passphrase, passphrase: passphrase,
params: .init(username: username) params: nil
) )
]) ])
...@@ -118,38 +109,6 @@ final class BackupFeatureTests: XCTestCase { ...@@ -118,38 +109,6 @@ final class BackupFeatureTests: XCTestCase {
} }
} }
func testStartBackupWithoutContactUsername() {
var isBackupRunning: [Bool] = [false]
let store = TestStore(
initialState: BackupComponent.State(
passphrase: "1234"
),
reducer: BackupComponent()
)
store.dependencies.app.mainQueue = .immediate
store.dependencies.app.bgQueue = .immediate
store.dependencies.app.messenger.myContact.run = { _ in
var contact = Contact.unimplemented("contact-data".data(using: .utf8)!)
contact.getFactsFromContact.run = { _ in [] }
return contact
}
store.dependencies.app.messenger.isBackupRunning.run = {
isBackupRunning.removeFirst()
}
store.send(.startTapped) {
$0.isStarting = true
}
let failure = BackupComponent.State.Error.contactUsernameMissing
store.receive(.didStart(failure: failure as NSError)) {
$0.isRunning = false
$0.isStarting = false
$0.alert = .error(failure)
}
}
func testStartBackupMyContactFailure() { func testStartBackupMyContactFailure() {
struct Failure: Error {} struct Failure: Error {}
let failure = Failure() let failure = Failure()
...@@ -163,7 +122,7 @@ final class BackupFeatureTests: XCTestCase { ...@@ -163,7 +122,7 @@ final class BackupFeatureTests: XCTestCase {
) )
store.dependencies.app.mainQueue = .immediate store.dependencies.app.mainQueue = .immediate
store.dependencies.app.bgQueue = .immediate store.dependencies.app.bgQueue = .immediate
store.dependencies.app.messenger.myContact.run = { _ in throw failure } store.dependencies.app.messenger.startBackup.run = { _, _ in throw failure }
store.dependencies.app.messenger.isBackupRunning.run = { store.dependencies.app.messenger.isBackupRunning.run = {
isBackupRunning.removeFirst() isBackupRunning.removeFirst()
} }
...@@ -192,11 +151,6 @@ final class BackupFeatureTests: XCTestCase { ...@@ -192,11 +151,6 @@ final class BackupFeatureTests: XCTestCase {
) )
store.dependencies.app.mainQueue = .immediate store.dependencies.app.mainQueue = .immediate
store.dependencies.app.bgQueue = .immediate store.dependencies.app.bgQueue = .immediate
store.dependencies.app.messenger.myContact.run = { _ in
var contact = Contact.unimplemented("data".data(using: .utf8)!)
contact.getFactsFromContact.run = { _ in [Fact(type: .username, value: "username")] }
return contact
}
store.dependencies.app.messenger.startBackup.run = { _, _ in store.dependencies.app.messenger.startBackup.run = { _, _ in
throw failure throw failure
} }
...@@ -397,9 +351,8 @@ final class BackupFeatureTests: XCTestCase { ...@@ -397,9 +351,8 @@ final class BackupFeatureTests: XCTestCase {
private enum Action: Equatable { private enum Action: Equatable {
case didRegisterObserver case didRegisterObserver
case didStartBackup(passphrase: String, params: BackupParams) case didStartBackup(passphrase: String, params: String?)
case didResumeBackup case didResumeBackup
case didStopBackup case didStopBackup
case didRemoveBackup case didRemoveBackup
case didGetMyContact(includingFacts: MessengerMyContact.IncludeFacts?)
} }
...@@ -82,7 +82,7 @@ final class RestoreComponentTests: XCTestCase { ...@@ -82,7 +82,7 @@ final class RestoreComponentTests: XCTestCase {
Fact(type: .phone, value: "restored-fact-phone"), Fact(type: .phone, value: "restored-fact-phone"),
] ]
let restoreResult = MessengerRestoreBackup.Result( let restoreResult = MessengerRestoreBackup.Result(
restoredParams: BackupParams(username: "restored-param-username"), restoredParams: "",
restoredContacts: [ restoredContacts: [
"contact-1-id".data(using: .utf8)!, "contact-1-id".data(using: .utf8)!,
"contact-2-id".data(using: .utf8)!, "contact-2-id".data(using: .utf8)!,
......
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