package de.dhbw.tinf12.mock; import static org.hamcrest.core.Is.is; import static org.junit.Assert.*; import org.easymock.EasyMock; import org.easymock.IAnswer; import org.hamcrest.EasyMock2Matchers; import org.hamcrest.core.Is; import org.junit.Test; public class GeigerCounterTest { @Test public void startsWithZero() throws Exception { final GeigerCounter target = new GeigerCounter(); assertThat(target.getCounts(), is(0)); } @Test public void observesRadioactivity() throws Exception { final GeigerCounter target = new GeigerCounter(); final RadioactiveElement testUran = EasyMock.createMock(RadioactiveElement.class); testUran.addDecayListener( (DecayListener) EasyMock.anyObject()); EasyMock.expectLastCall().once(); EasyMock.replay(testUran); target.observe(testUran); EasyMock.verify(testUran); } @Test public void countsEveryImpulse() { final GeigerCounter target = new GeigerCounter(); final RadioactiveElement testUran = new RadioactiveElement() { @Override public void startDecaying() { // do nothing } @Override public void addDecayListener(DecayListener l) { l.isDecayed(); } }; target.observe(testUran); assertThat(target.getCounts(), is(1)); } }