public void ReceivedMessagesAreIgnoredAfterSourceClientDisconnects() { var chatListener = new FakeServerChatListener(); var sut = new ChatServerApplication(chatListener); sut.Start(); var messageSource = new FakeCommunicationChannel(); var messageRecipient = new FakeCommunicationChannel(); chatListener.SimulateConnectToServer(messageRecipient); chatListener.SimulateConnectToServer(messageSource); chatListener.SimulateDisconnectFromServer(messageSource); messageSource.SimulateMessageReceived("foo"); Assert.Null(messageRecipient.LastMessageSent); }
public void TheNumberOfConnectionsAfterOneDisconnect(int initialNumberOfConnections, int expected) { var serverChannel = new FakeServerChatListener(); var sut = new ChatServerApplication(serverChannel); sut.Start(); var connectedClients = new List<FakeCommunicationChannel>(); for (int i = 0; i < initialNumberOfConnections; ++i) { connectedClients.Add(new FakeCommunicationChannel()); } foreach(var client in connectedClients) { serverChannel.SimulateConnectToServer(client); } serverChannel.SimulateDisconnectFromServer(connectedClients[0]); Assert.Equal(expected, sut.NumberOfUsers); }