public void GetReceiveAndForgetConnectionNotYetSubscribedTest() { var dateTimeProvider = Substitute.For <IDateTimeProvider>(); dateTimeProvider.UtcNow.Returns(DateTime.UtcNow); var pusherRegistry = new PusherRegistry(dateTimeProvider); var connectionRegistry = new ConnectionRegistry(pusherRegistry, null); var persistentConnection = Substitute.For <IPersistentConnection>(); persistentConnection.ConnectionId.Returns(Guid.NewGuid()); connectionRegistry.RegisterInitiatedConnection(persistentConnection); connectionRegistry.PromoteToLoggedInConnection(persistentConnection, Identity.Next(), 1); connectionRegistry.PromoteToSubscribedConnection(persistentConnection.DeviceId, SubscriptionType.ReceiveAndForget); connectionRegistry.UnsubscribeConnection(persistentConnection.DeviceId); persistentConnection.LastHeartbeat.Returns(DateTime.UtcNow.AddMinutes(-10.1)); var nothing = pusherRegistry.GetReceiveAndForgetConnection(); Assert.IsNull(nothing); }
public void GetReceiveAndForgetConnectionHeartbeatOkTest() { var dateTimeProvider = Substitute.For <IDateTimeProvider>(); dateTimeProvider.UtcNow.Returns(DateTime.UtcNow); var pusherRegistry = new PusherRegistry(dateTimeProvider); var connectionRegistry = new ConnectionRegistry(pusherRegistry, null); var persistentConnection = Substitute.For <IPersistentConnection>(); persistentConnection.ConnectionId.Returns(Guid.NewGuid()); connectionRegistry.RegisterInitiatedConnection(persistentConnection); connectionRegistry.PromoteToLoggedInConnection(persistentConnection, Identity.Next(), 1); connectionRegistry.PromoteToSubscribedConnection(persistentConnection.DeviceId, SubscriptionType.ReceiveAndForget); persistentConnection.LastHeartbeat.Returns(DateTime.UtcNow.AddSeconds(-20.0)); persistentConnection.NextReceiveAndForgetTime.Returns(DateTime.UtcNow.AddSeconds(-0.1)); var conn = pusherRegistry.GetReceiveAndForgetConnection(); Assert.AreEqual(persistentConnection, conn); persistentConnection.ReceivedWithAnyArgs().NextReceiveAndForgetTime = new DateTime(); }
public void GetReceiveAndForgetConnectionEmptyTest() { var pusherRegistry = new PusherRegistry(new DateTimeProvider()); var nothing = pusherRegistry.GetReceiveAndForgetConnection(); Assert.IsNull(nothing); }