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 StartBackgrounProcesses() { var settingOperations = _serviceProvider.GetService <ISettingOperations>(); SetupTelemetryDataSinkMetadataRegistry(settingOperations); var messagingServiceClient = _serviceProvider.GetService <IMessagingServiceClient>(); messagingServiceClient.Setup(settingOperations.Get(Setting.MessagingServiceEndpoint).Value, settingOperations.Get(Setting.MessagingServiceApiKey).Value); var batchParameters = _serviceProvider.GetService <IBatchParameters>(); MessagingWorkers.Start(batchParameters, messagingServiceClient); _persistentConnectionReceiveAndForgetWorker = _serviceProvider.GetService <PersistentConnectionReceiveAndForgetWorker>(); _persistentConnectionReceiveAndForgetWorker.Start(); _persistentConnectionPeekWorker = _serviceProvider.GetService <PersistentConnectionPeekWorker>(); _persistentConnectionPeekWorker.Start(); _connectionRegistry = _serviceProvider.GetService <ConnectionRegistry>(); _connectionRegistry.Start(); }