Search in sources :

Example 11 with Mock

use of com.arbindo.mimock.entities.Mock in project mimock by arbindo.

the class MockActionsControllerTest method shouldReturnHttpOk_ArchiveMockByIdApi_ReturnsArchivedMock.

@Test
void shouldReturnHttpOk_ArchiveMockByIdApi_ReturnsArchivedMock() throws Exception {
    // Arrange
    Mock mock = generateMock();
    String mockId = mock.getId().toString();
    String route = UrlConfig.MOCKS_PATH + "/" + mockId + UrlConfig.ARCHIVE_ACTION;
    Mock archivedMock = archiveMock(mock);
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.OK, Messages.ARCHIVED_RESOURCE_SUCCESS, archivedMock);
    String expectedResponseBody = convertObjectToJsonString(genericResponseWrapper);
    lenient().when(mockActionsService.archiveMock(mockId)).thenReturn(archivedMock);
    // Act
    MvcResult result = mockMvc.perform(post(route)).andExpect(status().isOk()).andReturn();
    // Assert
    assertEquals(expectedResponseBody, result.getResponse().getContentAsString());
}
Also used : JsonMapper.convertObjectToJsonString(com.arbindo.mimock.helpers.general.JsonMapper.convertObjectToJsonString) MvcResult(org.springframework.test.web.servlet.MvcResult) MocksGenerator.generateMock(com.arbindo.mimock.helpers.entities.MocksGenerator.generateMock) Mock(com.arbindo.mimock.entities.Mock) Test(org.junit.jupiter.api.Test) WebMvcTest(org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)

Example 12 with Mock

use of com.arbindo.mimock.entities.Mock in project mimock by arbindo.

the class MockActionsControllerTest method shouldReturnHttpBadRequest_UnarchiveMockByIdApi_ReturnsNull.

@Test
void shouldReturnHttpBadRequest_UnarchiveMockByIdApi_ReturnsNull() throws Exception {
    // Arrange
    Mock mock = generateMock();
    String mockId = mock.getId().toString();
    String route = UrlConfig.MOCKS_PATH + "/" + mockId + UrlConfig.UNARCHIVE_ACTION;
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.BAD_REQUEST, Messages.UNARCHIVE_RESOURCE_FAILED, null);
    String expectedResponseBody = convertObjectToJsonString(genericResponseWrapper);
    lenient().when(mockActionsService.unarchiveMock(mockId)).thenReturn(null);
    // Act
    MvcResult result = mockMvc.perform(post(route)).andExpect(status().isBadRequest()).andReturn();
    // Assert
    assertEquals(expectedResponseBody, result.getResponse().getContentAsString());
}
Also used : JsonMapper.convertObjectToJsonString(com.arbindo.mimock.helpers.general.JsonMapper.convertObjectToJsonString) MvcResult(org.springframework.test.web.servlet.MvcResult) MocksGenerator.generateMock(com.arbindo.mimock.helpers.entities.MocksGenerator.generateMock) Mock(com.arbindo.mimock.entities.Mock) Test(org.junit.jupiter.api.Test) WebMvcTest(org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)

Example 13 with Mock

use of com.arbindo.mimock.entities.Mock in project mimock by arbindo.

the class MockManagementControllerTest method shouldReturnHttpBadRequest_ForceDeleteMockByIdApi_ReturnsNullData.

@Test
void shouldReturnHttpBadRequest_ForceDeleteMockByIdApi_ReturnsNullData() throws Exception {
    // Arrange
    String mockId = UUID.randomUUID().toString();
    String route = UrlConfig.MOCKS_PATH + "/" + mockId + UrlConfig.FORCE_DELETE_ACTION;
    lenient().when(mockManagementService.hardDeleteMockById(mockId)).thenReturn(false);
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.BAD_REQUEST, Messages.DELETE_RESOURCE_FAILED, null);
    String expectedResponseBody = convertObjectToJsonString(genericResponseWrapper);
    String expectedContentType = "application/json";
    // Act
    MvcResult result = mockMvc.perform(delete(route)).andExpect(status().isBadRequest()).andExpect(content().contentType(expectedContentType)).andReturn();
    // Assert
    assertEquals(expectedResponseBody, result.getResponse().getContentAsString());
}
Also used : JsonMapper.convertObjectToJsonString(com.arbindo.mimock.helpers.general.JsonMapper.convertObjectToJsonString) RandomDataGenerator.generateRandomAlphabeticString(com.arbindo.mimock.helpers.general.RandomDataGenerator.generateRandomAlphabeticString) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) MvcResult(org.springframework.test.web.servlet.MvcResult) Mock(com.arbindo.mimock.entities.Mock) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) WebMvcTest(org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)

Example 14 with Mock

use of com.arbindo.mimock.entities.Mock in project mimock by arbindo.

the class MockManagementControllerTest method shouldReturnHttpBadRequest_DeleteAllMocksApi_ReturnsNullData.

@Test
void shouldReturnHttpBadRequest_DeleteAllMocksApi_ReturnsNullData() throws Exception {
    // Arrange
    String route = UrlConfig.MOCKS_PATH;
    lenient().when(mockManagementService.deleteAllMocks()).thenReturn(false);
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.BAD_REQUEST, Messages.DELETE_ALL_RESOURCES_FAILED, null);
    String expectedResponseBody = convertObjectToJsonString(genericResponseWrapper);
    String expectedContentType = "application/json";
    // Act
    MvcResult result = mockMvc.perform(delete(route)).andExpect(status().isBadRequest()).andExpect(content().contentType(expectedContentType)).andReturn();
    // Assert
    assertEquals(expectedResponseBody, result.getResponse().getContentAsString());
}
Also used : JsonMapper.convertObjectToJsonString(com.arbindo.mimock.helpers.general.JsonMapper.convertObjectToJsonString) RandomDataGenerator.generateRandomAlphabeticString(com.arbindo.mimock.helpers.general.RandomDataGenerator.generateRandomAlphabeticString) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) MvcResult(org.springframework.test.web.servlet.MvcResult) Mock(com.arbindo.mimock.entities.Mock) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) WebMvcTest(org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)

Example 15 with Mock

use of com.arbindo.mimock.entities.Mock in project mimock by arbindo.

the class MockManagementControllerTest method shouldReturnHttpBadRequest_UpdateMockByIdApi_ReturnsNullMockData.

@Test
void shouldReturnHttpBadRequest_UpdateMockByIdApi_ReturnsNullMockData() throws Exception {
    // Arrange
    MockMultipartFile file = getMockMultipartFile();
    MockRequest mockRequest = createMockRequestWithFile(file);
    Mock mock = generateMock(mockRequest);
    String route = UrlConfig.MOCKS_PATH + "/" + mock.getId();
    lenient().when(mockManagementService.updateMock(anyString(), any(ProcessedMockRequest.class))).thenReturn(null);
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.BAD_REQUEST, Messages.UPDATE_RESOURCE_FAILED, null);
    String expectedResponseBody = convertObjectToJsonString(genericResponseWrapper);
    String expectedContentType = "application/json";
    // Act
    MockMultipartHttpServletRequestBuilder builder = MockMvcRequestBuilders.multipart(route);
    builder.with(request -> {
        request.setMethod("PUT");
        return request;
    });
    MvcResult result = mockMvc.perform(builder.file(file).param("name", mockRequest.getName()).param("route", mockRequest.getRoute()).param("httpMethod", mockRequest.getHttpMethod()).param("responseContentType", mockRequest.getResponseContentType()).param("statusCode", String.valueOf(mockRequest.getStatusCode())).param("expectedTextResponse", mockRequest.getExpectedTextResponse()).param("description", mockRequest.getDescription())).andExpect(status().isBadRequest()).andExpect(content().contentType(expectedContentType)).andReturn();
    // Assert
    assertEquals(expectedResponseBody, result.getResponse().getContentAsString());
}
Also used : MockMultipartFile(org.springframework.mock.web.MockMultipartFile) ProcessedMockRequest(com.arbindo.mimock.manage.mimocks.models.request.ProcessedMockRequest) MockMultipartHttpServletRequestBuilder(org.springframework.test.web.servlet.request.MockMultipartHttpServletRequestBuilder) ProcessedMockRequest(com.arbindo.mimock.manage.mimocks.models.request.ProcessedMockRequest) MockRequest(com.arbindo.mimock.manage.mimocks.models.request.MockRequest) JsonMapper.convertObjectToJsonString(com.arbindo.mimock.helpers.general.JsonMapper.convertObjectToJsonString) RandomDataGenerator.generateRandomAlphabeticString(com.arbindo.mimock.helpers.general.RandomDataGenerator.generateRandomAlphabeticString) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) MvcResult(org.springframework.test.web.servlet.MvcResult) Mock(com.arbindo.mimock.entities.Mock) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) WebMvcTest(org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)

Aggregations

Mock (com.arbindo.mimock.entities.Mock)84 Test (org.junit.jupiter.api.Test)66 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)48 JsonMapper.convertObjectToJsonString (com.arbindo.mimock.helpers.general.JsonMapper.convertObjectToJsonString)42 WebMvcTest (org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)42 MvcResult (org.springframework.test.web.servlet.MvcResult)40 RandomDataGenerator.generateRandomAlphabeticString (com.arbindo.mimock.helpers.general.RandomDataGenerator.generateRandomAlphabeticString)38 ArgumentMatchers.anyString (org.mockito.ArgumentMatchers.anyString)38 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)24 DomainModelForMock (com.arbindo.mimock.generic.model.DomainModelForMock)10 MocksGenerator.deleteMock (com.arbindo.mimock.helpers.entities.MocksGenerator.deleteMock)10 Operation (io.swagger.v3.oas.annotations.Operation)10 TextualResponse (com.arbindo.mimock.entities.TextualResponse)8 MockMultipartFile (org.springframework.mock.web.MockMultipartFile)8 ResponseContentType (com.arbindo.mimock.entities.ResponseContentType)6 Pageable (org.springframework.data.domain.Pageable)6 HttpStatus (org.springframework.http.HttpStatus)6 BinaryResponse (com.arbindo.mimock.entities.BinaryResponse)4 MocksGenerator.generateMock (com.arbindo.mimock.helpers.entities.MocksGenerator.generateMock)4 MockRequest (com.arbindo.mimock.manage.mimocks.models.request.MockRequest)4