package com.jaspersoft.jasperserver.jaxrs.client.apiadapters.domain;//package com.jaspersoft.jasperserver.jaxrs.client.apiadapters.domain; import com.jaspersoft.jasperserver.dto.domain.DomainMetaData; import com.jaspersoft.jasperserver.jaxrs.client.core.JerseyRequest; import com.jaspersoft.jasperserver.jaxrs.client.core.SessionStorage; import com.jaspersoft.jasperserver.jaxrs.client.core.exceptions.handling.ErrorHandler; import com.jaspersoft.jasperserver.jaxrs.client.core.operationresult.OperationResult; import org.mockito.Mock; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.testng.PowerMockTestCase; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import static org.mockito.Matchers.any; import static org.mockito.Mockito.reset; import static org.mockito.MockitoAnnotations.initMocks; import static org.powermock.api.mockito.PowerMockito.doReturn; import static org.powermock.api.mockito.PowerMockito.mockStatic; import static org.powermock.api.mockito.PowerMockito.when; import static org.testng.Assert.assertEquals; /** * Unit tests for {@link com.jaspersoft.jasperserver.jaxrs.client.apiadapters.domain.DomainMetadataAdapter} */ @PrepareForTest(JerseyRequest.class) public class DomainMetadataAdapterTest extends PowerMockTestCase { @Mock private SessionStorage sessionStorageMock; @Mock private JerseyRequest<DomainMetaData> jerseyRequestMock; @Mock private OperationResult<DomainMetaData> operationResultMock; private final String VALID_URI_FAKE = "very/valid/path/to/domain"; private DomainMetadataAdapter domainMetadataAdapter; @BeforeMethod public void setUp() throws Exception { initMocks(this); domainMetadataAdapter = new DomainMetadataAdapter(sessionStorageMock, VALID_URI_FAKE); } /** * The constructor under test is {@link com.jaspersoft.jasperserver.jaxrs.client.apiadapters.domain.DomainMetadataAdapter#DomainMetadataAdapter(com.jaspersoft.jasperserver.jaxrs.client.core.SessionStorage, String)} */ @Test(testName = "DomainMetadataAdapter_constructor") public void should_pass_not_null_SessionStorage_and_domainUri_to_super_class_without_any_changes() { assertEquals(sessionStorageMock, domainMetadataAdapter.getSessionStorage()); } @Test public void should_return_proper_OperationResult_object() { mockStatic(JerseyRequest.class); when(JerseyRequest.buildRequest( any(SessionStorage.class), any(Class.class), any(String[].class), any(ErrorHandler.class) )).thenReturn(jerseyRequestMock); doReturn(operationResultMock) .when(jerseyRequestMock) .get(); assertEquals(operationResultMock, domainMetadataAdapter.retrieve()); } @AfterMethod public void tearDown() throws Exception { reset(sessionStorageMock, jerseyRequestMock, operationResultMock); } }