public void SendNewMessagesWhenThereAreNoNewMessagesShouldDoNothing() { MockSocketCommunication mockSocket = new MockSocketCommunication(); ChatServerSide server = new ChatServerSide(mockSocket); mockSocket.SentMessages.Add("Initial message"); string trimmedReceivedData = "userName<sep>sentMessage<sep>server: userName joined the chat.<eof>"; mockSocket.TextToReceive = trimmedReceivedData; server.CheckMessage(mockSocket); Assert.False(server.IsNewUser("userName")); Assert.Equal(3, trimmedReceivedData.Split("<sep>").Length); Assert.True(trimmedReceivedData.IndexOf("<eof>") > -1); Assert.Equal("sentMessage", server.CheckMessage(mockSocket)); Assert.False(server.IsNewUser("userName")); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("Initial message", item), item => Assert.Equal("server: userName joined the chat.<eof>", item), item => Assert.Equal("userName: sentMessage<eof>", item)); server.SendNewMessages(mockSocket, 2); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("Initial message", item), item => Assert.Equal("server: userName joined the chat.<eof>", item), item => Assert.Equal("userName: sentMessage<eof>", item)); }
public void CheckMessageWhenNewUserAndUserNameAlreadyExistShouldRequestForNewUserName() { MockSocketCommunication mockSocket = new MockSocketCommunication(); ChatServerSide server = new ChatServerSide(mockSocket); string trimmedReceivedData = "userName<sep>sentMessage<sep>NotExistingText<eof>"; mockSocket.TextToReceive = trimmedReceivedData; Assert.True(server.IsNewUser("userName")); Assert.Equal(3, trimmedReceivedData.Split("<sep>").Length); Assert.True(trimmedReceivedData.IndexOf("<eof>") > -1); Assert.Equal("sentMessage", server.CheckMessage(mockSocket)); Assert.False(server.IsNewUser("userName")); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("server: userName joined the chat.<eof>", item)); Assert.Equal("sentMessage", server.CheckMessage(mockSocket)); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("server: userName joined the chat.<eof>", item), item => Assert.Equal("server: userName already exist, choose a different user name.<eof>", item)); }
public void AddUserWhenNewUserShouldAddUserToHashTable() { ChatServerSide server = new ChatServerSide(); Assert.True(server.IsNewUser("newUser")); server.AddUser("newUser"); Assert.False(server.IsNewUser("newUser")); }
public void CheckMessageWhenNewUserShouldAddUser() { MockSocketCommunication mockSocket = new MockSocketCommunication(); ChatServerSide server = new ChatServerSide(mockSocket); string trimmedReceivedData = "userName<sep>sentMessage<sep>lastMessageReceived<eof>"; mockSocket.TextToReceive = trimmedReceivedData; Assert.True(server.IsNewUser("userName")); Assert.Equal(3, trimmedReceivedData.Split("<sep>").Length); Assert.True(trimmedReceivedData.IndexOf("<eof>") > -1); Assert.Equal("sentMessage", server.CheckMessage(mockSocket)); Assert.False(server.IsNewUser("userName")); }
public void IsNewUserWhenUserExistShouldReturnFalse() { ChatServerSide server = new ChatServerSide(); server.AddUser("newUser"); Assert.False(server.IsNewUser("newUser")); }
public void CheckMessageWhenNewUserShouldSendOnlyGreetingMessage() { MockSocketCommunication mockSocket = new MockSocketCommunication(); ChatServerSide server = new ChatServerSide(mockSocket); string initialTestMessage = "someUser<sep>Initial message<sep>testLastMessageReceived<eof>"; mockSocket.TextToReceive = initialTestMessage; server.CheckMessage(mockSocket); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("server: someUser joined the chat.<eof>", item)); string testMessage = "someUser<sep>Initial message<sep>server: someUser joined the chat.<eof>"; mockSocket.TextToReceive = testMessage; Assert.False(server.IsNewUser("someUser")); Assert.Equal(3, testMessage.Split("<sep>").Length); Assert.True(testMessage.IndexOf("<eof>") > -1); Assert.Equal("Initial message", server.CheckMessage(mockSocket)); Assert.False(server.IsNewUser("someUser")); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("server: someUser joined the chat.<eof>", item), item => Assert.Equal("someUser: Initial message<eof>", item)); string trimmedReceivedData = "newUser<sep>sentMessage<sep>lastMessageReceived<eof>"; mockSocket.TextToReceive = trimmedReceivedData; Assert.True(server.IsNewUser("newUser")); Assert.Equal(3, trimmedReceivedData.Split("<sep>").Length); Assert.True(trimmedReceivedData.IndexOf("<eof>") > -1); Assert.Equal("sentMessage", server.CheckMessage(mockSocket)); Assert.False(server.IsNewUser("newUser")); Assert.Collection(mockSocket.SentMessages, item => Assert.Equal("server: someUser joined the chat.<eof>", item), item => Assert.Equal("someUser: Initial message<eof>", item), item => Assert.Equal("server: newUser joined the chat.<eof>", item)); }
public void IsNewUserWhenUserNoExistShouldReturnTrue() { ChatServerSide server = new ChatServerSide(); Assert.True(server.IsNewUser("newUser")); }