Adds DI and SPI examples

This commit is contained in:
2020-03-15 18:59:33 +01:00
parent 9f120b6317
commit e407698e84
20 changed files with 302 additions and 3 deletions

View File

@ -0,0 +1,39 @@
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);
}
}