package de.is24.util.monitoring.sensor; import de.is24.util.monitoring.InApplicationMonitor; import org.junit.Before; import org.junit.Test; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.reset; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; public class CombinedSensorTest { private InApplicationMonitor monitorMock = mock(InApplicationMonitor.class); private Sensor sensor1 = mock(PlainSensor.class); private Sensor sensor2 = mock(HostSensor.class); private Sensor sensor = new CombinedSensor(monitorMock, sensor1, sensor2); @Before public void setup() { reset(sensor1, sensor2); } @Test public void testIncrementCounter() { sensor.incrementCounter("test"); verify(sensor1, times(1)).incrementCounter("test"); verify(sensor2, times(1)).incrementCounter("test"); } @Test public void testIncrementCounterWithIncrement() throws Exception { sensor.incrementCounter("test", 1); verify(sensor1, times(1)).incrementCounter("test", 1); verify(sensor2, times(1)).incrementCounter("test", 1); } @Test public void testAddTimerMeasurement() throws Exception { sensor.addTimerMeasurement("test", 1); verify(sensor1, times(1)).addTimerMeasurement("test", 1); verify(sensor2, times(1)).addTimerMeasurement("test", 1); } @Test public void testAddTimerMeasurementWithStartEnd() throws Exception { sensor.addTimerMeasurement("test", 1, 2); verify(sensor1, times(1)).addTimerMeasurement("test", 1, 2); verify(sensor2, times(1)).addTimerMeasurement("test", 1, 2); } }