package com.tddinaction.appendix.easymock; import static org.easymock.EasyMock.*; import org.easymock.EasyMock; import org.junit.Test; public class TestInternetRelayChat { @Test public void messagesAreOnlyDeliveredToOtherClients() throws Exception { String msg = "Maisk Maisk!"; Client koskela = EasyMock.createMock(Client.class); Client freeman = EasyMock.createMock(Client.class); Client himberg = EasyMock.createMock(Client.class); expect(himberg.onMessage("lasse", msg)).andReturn(true); freeman.onMessage("lasse", msg); expectLastCall().andReturn(true); replay(freeman, koskela, himberg); InternetRelayChat irc = new InternetRelayChat(); irc.join("inhuman", freeman); irc.join("vilbert", himberg); Prompt prompt = irc.join("lasse", koskela); prompt.say(msg); verify(freeman, koskela, himberg); } }