From c08ebd4f2bdd381e4ee8c897b27cabcbab91f4da Mon Sep 17 00:00:00 2001 From: Sebastijan K <58827427+sebastijankuzner@users.noreply.github.com> Date: Wed, 7 Apr 2021 09:33:43 +0200 Subject: [PATCH] chore(core-p2p): schedule network status updates when networkStart flag is set (#4363) --- __tests__/unit/core-p2p/network-monitor.test.ts | 16 ++++++++++++---- packages/core-p2p/src/network-monitor.ts | 1 - 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/__tests__/unit/core-p2p/network-monitor.test.ts b/__tests__/unit/core-p2p/network-monitor.test.ts index 7f3d1d0360..9e1405bbf5 100644 --- a/__tests__/unit/core-p2p/network-monitor.test.ts +++ b/__tests__/unit/core-p2p/network-monitor.test.ts @@ -79,6 +79,10 @@ describe("NetworkMonitor", () => { jest.resetAllMocks(); }); + afterEach(() => { + jest.restoreAllMocks(); + }); + describe.each([[true], [false]])("boot", (dnsAndNtpFail) => { beforeEach(() => { if (dnsAndNtpFail) { @@ -228,7 +232,7 @@ describe("NetworkMonitor", () => { }); it("should not do anything", async () => { - const spyDiscoverPeers = jest.spyOn(networkMonitor, "discoverPeers"); + const spyDiscoverPeers = jest.spyOn(networkMonitor, "discoverPeers") await networkMonitor.updateNetworkStatus(); @@ -239,20 +243,24 @@ describe("NetworkMonitor", () => { describe("when in 'network start' mode", () => { beforeEach(() => { + delete process.env.NODE_ENV; config.networkStart = true; }); afterEach(() => { config.networkStart = undefined; }); - it("should set coldStart to true and not discover peers", async () => { - const spyDiscoverPeers = jest.spyOn(networkMonitor, "discoverPeers"); + it("should set coldStart to true and discover peers", async () => { + const spyDiscoverPeers = jest.spyOn(networkMonitor, "discoverPeers").mockResolvedValue(false); + // @ts-ignore + const spyHasMinimumPeers = jest.spyOn(networkMonitor, "hasMinimumPeers").mockReturnValue(true); expect(networkMonitor.isColdStart()).toBeFalse(); await networkMonitor.updateNetworkStatus(); expect(networkMonitor.isColdStart()).toBeTrue(); - expect(spyDiscoverPeers).toBeCalledTimes(0); + expect(spyDiscoverPeers).toBeCalledTimes(1); + expect(spyHasMinimumPeers).toBeCalledTimes(1); }); }); diff --git a/packages/core-p2p/src/network-monitor.ts b/packages/core-p2p/src/network-monitor.ts index 570a5036d2..81f652803d 100644 --- a/packages/core-p2p/src/network-monitor.ts +++ b/packages/core-p2p/src/network-monitor.ts @@ -90,7 +90,6 @@ export class NetworkMonitor implements Contracts.P2P.NetworkMonitor { if (this.config.networkStart) { this.coldStart = true; this.logger.warning("Entering cold start because the relay is in genesis-start mode."); - return; } if (this.config.disableDiscovery) {