Search in sources :

Example 41 with Mock

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

the class MockManagementControllerTest method shouldReturnHttpInternalServerError_WhenExportMocksCsv_ThrowsException.

@Test
void shouldReturnHttpInternalServerError_WhenExportMocksCsv_ThrowsException() throws Exception {
    // Arrange
    String route = UrlConfig.MOCKS_PATH + UrlConfig.MOCKS_CSV_EXPORT;
    String expectedContentType = "text/csv";
    String fileName = "mocks_2022-02-04_19-31-05.csv";
    List<Mock> expectedMocks = generateListOfMocks();
    lenient().when(mockManagementService.getAllMocks()).thenReturn(expectedMocks);
    lenient().when(exportImportService.generateFileName()).thenReturn(fileName);
    doThrow(IOException.class).when(exportImportService).exportMockListToCsv(any(PrintWriter.class), anyList());
    // Act
    mockMvc.perform(get(route)).andExpect(status().isInternalServerError()).andReturn();
}
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) Mock(com.arbindo.mimock.entities.Mock) PrintWriter(java.io.PrintWriter) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) WebMvcTest(org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest)

Example 42 with Mock

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

the class MockManagementControllerTest method shouldReturnHttpOk_GetMockByIdApi_ReturnsValidMockData.

@Test
void shouldReturnHttpOk_GetMockByIdApi_ReturnsValidMockData() throws Exception {
    // Arrange
    Mock mock = generateMock();
    String mockId = mock.getId().toString();
    String route = UrlConfig.MOCKS_PATH + "/" + mockId;
    lenient().when(mockManagementService.getMockById(mockId)).thenReturn(mock);
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.OK, Messages.GET_RESOURCE_SUCCESS, mock);
    String expectedResponseBody = convertObjectToJsonString(genericResponseWrapper);
    String expectedContentType = "application/json";
    // Act
    MvcResult result = mockMvc.perform(get(route)).andExpect(status().isOk()).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 43 with Mock

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

the class MockActionsServiceImpl method unarchiveMock.

@Transactional
@Override
public Mock unarchiveMock(String mockId) {
    if (ValidationUtil.isNotNullOrEmpty(mockId)) {
        try {
            Mock mock = mockManagementService.getMockById(mockId);
            if (mock != null) {
                // Idempotent behaviour - Unarchive the mock i.e. Mark EntityStatus as NONE
                if (mock.canEditMock()) {
                    EntityStatus entityStatus = entityStatusService.getDefaultMockEntityStatus();
                    mock.setEntityStatus(entityStatus);
                    mock.setUpdatedAt(ZonedDateTime.now());
                    return mocksRepository.save(mock);
                }
            }
        } catch (Exception e) {
            log.log(Level.DEBUG, e.getMessage());
        }
    }
    log.log(Level.DEBUG, "Invalid Mock Id!");
    return null;
}
Also used : EntityStatus(com.arbindo.mimock.entities.EntityStatus) Mock(com.arbindo.mimock.entities.Mock) Transactional(javax.transaction.Transactional)

Example 44 with Mock

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

the class MockActionsController method archiveMockById.

@Operation(summary = "Archive Mock", description = "Archives a mock based on the given mockId.", tags = { "Mock Management" })
@PostMapping("{mockId}" + UrlConfig.ARCHIVE_ACTION)
public ResponseEntity<GenericResponseWrapper<Mock>> archiveMockById(@PathVariable String mockId) {
    Mock mock = mockActionsService.archiveMock(mockId);
    if (mock != null) {
        GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.OK, Messages.ARCHIVED_RESOURCE_SUCCESS, mock);
        return ResponseEntity.ok(genericResponseWrapper);
    }
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.BAD_REQUEST, Messages.ARCHIVE_RESOURCE_FAILED, null);
    return ResponseEntity.badRequest().body(genericResponseWrapper);
}
Also used : Mock(com.arbindo.mimock.entities.Mock) PostMapping(org.springframework.web.bind.annotation.PostMapping) Operation(io.swagger.v3.oas.annotations.Operation)

Example 45 with Mock

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

the class MockActionsController method unarchiveMockById.

@Operation(summary = "Unarchive Mock", description = "Unarchive a mock based on the given mockId.", tags = { "Mock Management" })
@PostMapping("{mockId}" + UrlConfig.UNARCHIVE_ACTION)
public ResponseEntity<GenericResponseWrapper<Mock>> unarchiveMockById(@PathVariable String mockId) {
    Mock mock = mockActionsService.unarchiveMock(mockId);
    if (mock != null) {
        GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.OK, Messages.UNARCHIVED_RESOURCE_SUCCESS, mock);
        return ResponseEntity.ok(genericResponseWrapper);
    }
    GenericResponseWrapper<Mock> genericResponseWrapper = getGenericResponseWrapper(HttpStatus.BAD_REQUEST, Messages.UNARCHIVE_RESOURCE_FAILED, null);
    return ResponseEntity.badRequest().body(genericResponseWrapper);
}
Also used : Mock(com.arbindo.mimock.entities.Mock) PostMapping(org.springframework.web.bind.annotation.PostMapping) Operation(io.swagger.v3.oas.annotations.Operation)

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