package rocks.inspectit.shared.cs.ci.business.valuesource.impl; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.hasItemInArray; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.notNullValue; import static org.mockito.Mockito.doReturn; import org.mockito.InjectMocks; import org.mockito.Mock; import org.testng.annotations.Test; import rocks.inspectit.shared.all.communication.data.HttpInfo; import rocks.inspectit.shared.all.communication.data.HttpTimerData; import rocks.inspectit.shared.all.communication.data.InvocationSequenceData; import rocks.inspectit.shared.all.communication.data.TimerData; import rocks.inspectit.shared.all.testbase.TestBase; import rocks.inspectit.shared.cs.cmr.service.cache.CachedDataService; /** * @author Marius Oehler * */ @SuppressWarnings("PMD") public class HttpServerPortValueSourceTest extends TestBase { @InjectMocks HttpServerPortValueSource valueSource; @Mock CachedDataService cachedDataService; @Mock InvocationSequenceData invocationSequenceData; @Mock HttpTimerData httpTimerData; /** * Test * {@link HttpServerPortValueSource#getStringValues(InvocationSequenceData, rocks.inspectit.shared.all.cmr.service.ICachedDataService)} * . */ public static class GetStringValues extends HttpServerPortValueSourceTest { @Test public void retrieveServerPort() { HttpInfo httpInfo = new HttpInfo(); httpInfo.setServerPort(8080); doReturn(httpTimerData).when(invocationSequenceData).getTimerData(); doReturn(httpInfo).when(httpTimerData).getHttpInfo(); String[] values = valueSource.getStringValues(invocationSequenceData, cachedDataService); assertThat(values, hasItemInArray("8080")); } @Test public void noHttpData() { doReturn(new TimerData()).when(invocationSequenceData).getTimerData(); String[] values = valueSource.getStringValues(invocationSequenceData, cachedDataService); assertThat(values, is(notNullValue())); assertThat(values.length, is(equalTo(0))); } } }