39 lines
1.1 KiB
Java
39 lines
1.1 KiB
Java
package messagebroker.handlers;
|
|
|
|
import messagebroker.MessageHandlerContext;
|
|
import messagebroker.UnknownMessageFormatException;
|
|
import org.junit.Before;
|
|
import org.junit.Test;
|
|
|
|
import java.io.IOException;
|
|
import java.io.OutputStream;
|
|
|
|
import static org.mockito.Mockito.*;
|
|
|
|
public class EchoMessageHandlerTest {
|
|
|
|
private final MessageHandlerContext context = mock(MessageHandlerContext.class);
|
|
private EchoMessageHandler messageHandler;
|
|
|
|
public EchoMessageHandlerTest() {
|
|
when(context.getOutputStream()).thenReturn(mock(OutputStream.class));
|
|
}
|
|
|
|
@Before()
|
|
public void setUp() {
|
|
messageHandler = new EchoMessageHandler(context);
|
|
}
|
|
|
|
@Test
|
|
public void shouldHandleEchoMessage() throws UnknownMessageFormatException, IOException {
|
|
var message = "ECHO Some message";
|
|
messageHandler.handleMessage(message);
|
|
verify(context.getOutputStream()).flush();
|
|
}
|
|
|
|
@Test(expected = UnknownMessageFormatException.class)
|
|
public void shouldThrowWhenMessageIsUnknown() throws UnknownMessageFormatException {
|
|
var message = "Bad message";
|
|
messageHandler.handleMessage(message);
|
|
}
|
|
} |