public void CollectDeadLoggedinConnectionTest() { var connectionRegistry = new ConnectionRegistry(new PusherRegistry(new DateTimeProvider()), new DateTimeProvider()); var persistentConnection = Substitute.For <IPersistentConnection>(); persistentConnection.ConnectionId.Returns(Guid.NewGuid()); persistentConnection.LastHeartbeat.Returns(new DateTime(2014, 1, 1)); connectionRegistry.RegisterInitiatedConnection(persistentConnection); connectionRegistry.PromoteToLoggedInConnection(persistentConnection, "1234", 1); connectionRegistry.Start(); int rounds = 0; while (persistentConnection.ConnectionState != ConnectionState.None && rounds < 100) { Thread.Sleep(10); rounds++; } connectionRegistry.Stop(); persistentConnection.Received().Close(); Assert.AreEqual(ConnectionState.None, persistentConnection.ConnectionState); }
public void StartStopWorkerTest() { var connectionRegistry = new ConnectionRegistry(new PusherRegistry(new DateTimeProvider()), new DateTimeProvider()); connectionRegistry.Start(); connectionRegistry.Stop(); }
private void StopBackgroundProcesses() { MessagingWorkers.Stop(); _persistentConnectionReceiveAndForgetWorker.Stop(); _persistentConnectionPeekWorker.Stop(); _connectionRegistry.Stop(); }