From e92cb5216e4b391894baccab05a2b49aa62ad817 Mon Sep 17 00:00:00 2001
From: Dariusz Rybicki <dariusz@elixxir.io>
Date: Wed, 21 Sep 2022 22:07:12 +0200
Subject: [PATCH] Start network follower when restoring backup

---
 .../Messenger/Functions/MessengerRestoreBackup.swift     | 1 +
 .../Functions/MessengerRestoreBackupTests.swift          | 9 +++++++++
 2 files changed, 10 insertions(+)

diff --git a/Sources/XXMessengerClient/Messenger/Functions/MessengerRestoreBackup.swift b/Sources/XXMessengerClient/Messenger/Functions/MessengerRestoreBackup.swift
index 48a86f3e..8b05e7d4 100644
--- a/Sources/XXMessengerClient/Messenger/Functions/MessengerRestoreBackup.swift
+++ b/Sources/XXMessengerClient/Messenger/Functions/MessengerRestoreBackup.swift
@@ -48,6 +48,7 @@ extension MessengerRestoreBackup {
           password: password,
           cMixParamsJSON: env.getCMixParams()
         )
+        try cMix.startNetworkFollower(timeoutMS: 30_000)
         let e2e = try env.login(
           cMixId: cMix.getId(),
           authCallbacks: env.authCallbacks.registered(),
diff --git a/Tests/XXMessengerClientTests/Messenger/Functions/MessengerRestoreBackupTests.swift b/Tests/XXMessengerClientTests/Messenger/Functions/MessengerRestoreBackupTests.swift
index 05b4b26e..21194303 100644
--- a/Tests/XXMessengerClientTests/Messenger/Functions/MessengerRestoreBackupTests.swift
+++ b/Tests/XXMessengerClientTests/Messenger/Functions/MessengerRestoreBackupTests.swift
@@ -71,6 +71,9 @@ final class MessengerRestoreBackupTests: XCTestCase {
         caughtActions.append(.cMixDidMakeReceptionIdentity(legacy: legacy))
         return receptionIdentity
       }
+      cMix.startNetworkFollower.run = { timeoutMS in
+        caughtActions.append(.cMixDidStartNetworkFollower(timeoutMS: timeoutMS))
+      }
       return cMix
     }
     env.login.run = { ephemeral, cMixId, _, identity, e2eParams in
@@ -130,6 +133,9 @@ final class MessengerRestoreBackupTests: XCTestCase {
         password: password,
         cMixParams: cMixParams
       ),
+      .cMixDidStartNetworkFollower(
+        timeoutMS: 30_000
+      ),
       .cMixDidMakeReceptionIdentity(
         legacy: true
       ),
@@ -213,6 +219,9 @@ private enum CaughtAction: Equatable {
   case cMixDidMakeReceptionIdentity(
     legacy: Bool
   )
+  case cMixDidStartNetworkFollower(
+    timeoutMS: Int
+  )
   case didNewUdManagerFromBackup(
     params: NewUdManagerFromBackup.Params
   )
-- 
GitLab