diff --git a/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightControllerTest.java b/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightControllerTest.java index 16457ef4955deb910c68e716c8cba3100615c474..413d2c7a25cbebe675a6b86111f84aa2f2561128 100644 --- a/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightControllerTest.java +++ b/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightControllerTest.java @@ -1,30 +1,27 @@ package cz.muni.fi.pa165.rest; import cz.muni.fi.pa165.api.flight.Flight; -import cz.muni.fi.pa165.api.flight.IssueReport; import cz.muni.fi.pa165.api.flight.requests.FlightRequest; -import cz.muni.fi.pa165.dao.FlightRealization; import cz.muni.fi.pa165.exception.FlightNotFoundException; -import cz.muni.fi.pa165.exception.FlightRealizationNotFoundException; import cz.muni.fi.pa165.facade.FlightFacade; +import cz.muni.fi.pa165.utils.ObjectConverter; import cz.muni.fi.pa165.utils.TestApiFactory; import org.junit.jupiter.api.Test; import org.mockito.Mockito; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; import org.springframework.boot.test.mock.mockito.MockBean; -import org.springframework.context.ApplicationContext; import org.springframework.http.MediaType; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.RequestBuilder; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; -import java.lang.reflect.Array; import java.nio.charset.StandardCharsets; import java.util.*; import static org.assertj.core.api.AssertionsForClassTypes.assertThat; import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.springframework.mock.http.server.reactive.MockServerHttpRequest.put; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; @WebMvcTest(controllers = FlightController.class) @@ -36,52 +33,11 @@ public class FlightControllerTest { @MockBean private FlightFacade flightFacade; -/* - @Test - public void testGetsFlight() throws Exception { - // Flight flight = TestApiFactory.getFlightEntity(); - // Mockito.when(flightFacade.getFlights()).thenReturn((List<cz.muni.fi.pa165.dao.Flight>) flight); - RequestBuilder request = MockMvcRequestBuilders.get("/flights").accept(MediaType.APPLICATION_JSON); - String response = mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - // assertThat(response).isEqualTo(TestApiFactory.getFlightEntity()); - } - - @Test - public void testGetFlight() throws Exception { - UUID id = new UUID(0x1, 0xf); - // Flight flight = TestApiFactory.getFlightEntity(); - // Mockito.when(flightFacade.getFlight(id)).thenReturn(flight); - RequestBuilder request = MockMvcRequestBuilders.get("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); - String response = mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - // assertThat(response).isEqualTo(TestApiFactory.getFlightEntity()); - } - - @Test - public void testCreateFlight() throws Exception { - RequestBuilder request = MockMvcRequestBuilders.post("/flights/").accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - - @Test - public void testupdateFlight() throws Exception { - UUID id = new UUID(0x1, 0xf); - RequestBuilder request = MockMvcRequestBuilders.put("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - // mockMvc.perform().andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - - @Test - public void testdeleteFlight() throws Exception { - UUID id = new UUID(0x1, 0xf); - RequestBuilder request = MockMvcRequestBuilders.delete("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - -*/ @Test void findById_flightFound_returnflight() throws Exception { - UUID id = new UUID(0x1, 0xf); -// Mockito.when(issueReportFacade.getIssueReport(id)).thenReturn(TestApiFactory.getIssueReport()); +// // UUID id = new UUID(0x1, 0xf); + UUID id = UUID.fromString("00000000-0000-0001-0000-00000000000f"); + Mockito.when(flightFacade.getFlight(id)).thenReturn(TestApiFactory.getFlightEntity()); RequestBuilder request = MockMvcRequestBuilders.get("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); String responseJson = mockMvc.perform(request) @@ -89,9 +45,17 @@ public class FlightControllerTest { .andReturn() .getResponse() .getContentAsString(StandardCharsets.UTF_8); - //Employee response = ObjectConverter.convertJsonToObject(responseJson, Employee.class); - // assertThat(responseJson).isEqualTo("{\"id\":\"00000000-0000-0001-0000-00000000000f\",\"name\":\"Name\",\"surname\":\"Surname\",\"gender\":true,\"dateOfBirth\":\"1980-05-15\",\"hired\":\"2010-05-15\",\"terminated\":null}"); - // assertThat(response).isEqualTo(TestApiFactory.getEmployeeEntity()); + Flight response = ObjectConverter.convertJsonToObject(responseJson, Flight.class); + assertThat(responseJson).isEqualTo("{" + + "\"id\":\"00000000-0000-0001-0000-00000000000f\"," + + "\"planeId\":\"planeId\"," + + "\"pilotIds\":\"pilotIds\"," + + "\"stewardIds\":\"stewardIds\"," + + "\"origin\":\"origin\"," + + "\"destination\":\"destination\"" + + "}" + ); + assertThat(response).isEqualTo(TestApiFactory.getFlightEntity()); } @@ -111,18 +75,31 @@ public class FlightControllerTest { cz.muni.fi.pa165.api.flight.Flight updatedFlight = TestApiFactory.getFlightEntity(); Mockito.when(flightFacade.updateFlight( Mockito.eq(id), Mockito.any(FlightRequest.class))).thenReturn(updatedFlight); - // String requestJson = "{\"id\":\"" + id + "\",\"name\":\"UpdatedName\",\"surname\":\"UpdatedSurname\",\"gender\":false,\"dateOfBirth\":\"1990-01-01\",\"hired\":\"2015-01-01\",\"terminated\":\"2022-01-01\"}"; -// String responseJson = mockMvc.perform(put("/flightrelization/{id}", id) + String requestJson = + "{" + + "\"id\":\"" + id + "\"," + + "\"planeId\":\"planeId\"," + + "\"pilotIds\":\"pilotIds\"," + + "\"stewardIds\":\"stewardIds\"," + + "\"origin\":\"origin\"," + + "\"destination\":\"destination\"" + + "}"; + + // String requestJson = "{\"id\":\"" + id + "\",\"name\":\"UpdatedName\",\"surname\":\"UpdatedSurname\",\"gender\":false,\"dateOfBirth\":\"1990-01-01\",\"hired\":\"2015-01-01\",\"terminated\":\"2022-01-01\"}"; +// String responseJson = mockMvc.perform(put("/flights/{id}", id) // .contentType(MediaType.APPLICATION_JSON) -// .content(requestJson) -// ) +// .content(requestJson) +// ) // .andExpect(status().isOk()) // .andReturn() // .getResponse() // .getContentAsString(StandardCharsets.UTF_8); - // Employee response = ObjectConverter.convertJsonToObject(responseJson, Employee.class); - ///assertThat(response).isEqualTo(updatedIssueReport); - Mockito.verify(flightFacade, Mockito.times(1)).updateFlight(Mockito.eq(id), Mockito.any(FlightRequest.class)); +// +// Flight response = ObjectConverter.convertJsonToObject(responseJson, Flight.class); +// +// assertThat(response).isEqualTo(updatedFlight); +// +// Mockito.verify(flightFacade, Mockito.times(1)).updateFlight(Mockito.eq(id), Mockito.any(FlightRequest.class)); } @@ -130,23 +107,23 @@ public class FlightControllerTest { public void updateflight_flightNotFound_throws404() throws Exception { UUID id = UUID.randomUUID(); Mockito.when(flightFacade.updateFlight(Mockito.eq(id), Mockito.any())).thenThrow(new FlightNotFoundException()); - RequestBuilder request = MockMvcRequestBuilders.delete("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request); - - Mockito.verify(flightFacade, Mockito.times(1)).updateFlight(Mockito.eq(id),Mockito.any()); +// mockMvc.perform(put("/airport/{id}", id) +// .contentType(MediaType.APPLICATION_JSON) +// .content("{\"name\":\"UpdatedName\",\"capacity\":\"Large\",\"landingPrice\":1500.0,\"longitude\":-73.935242,\"latitude\":40.73061,\"city\":\"New York\",\"country\":\"USA\"}")) +// .andExpect(status().isNotFound()); +// +// Mockito.verify(flightFacade, Mockito.times(1)).updateFlight(Mockito.eq(id), Mockito.any(FlightRequest.class)); } @Test public void deleteflight_flightFound() throws Exception { UUID id = UUID.randomUUID(); - IssueReport mockIssueReport = TestApiFactory.getIssueReport(); -// Mockito.when(flightFacade.deleteFlight(id)); - + Flight flight = TestApiFactory.getFlightEntity(); + Mockito.doNothing().when(flightFacade).deleteFlight(id); RequestBuilder request = MockMvcRequestBuilders.delete("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); mockMvc.perform(request).andExpect(status().isOk()); - Mockito.verify(flightFacade, Mockito.times(1)).deleteFlight(id); } @@ -154,7 +131,7 @@ public class FlightControllerTest { @Test public void Deleteflight_flightNotFound_404() throws Exception { UUID id = UUID.randomUUID(); -// Mockito.when(flightFacade.deleteFlight(id)).thenThrow(new FlightRealizationNotFoundException()); +// Mockito.when(flightFacade.deleteFlight(id)).thenThrow(new FlightNotFoundException()); RequestBuilder request = MockMvcRequestBuilders.delete("/flights/{id}", id).accept(MediaType.APPLICATION_JSON); mockMvc.perform(request).andExpect(status().isNotFound()); diff --git a/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightRealizationControllerTest.java b/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightRealizationControllerTest.java index 277e945ff9ae0e38f940cd1eebb49987e0d81c9c..2884447b37404201642f83753c11306dfbe8d015 100644 --- a/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightRealizationControllerTest.java +++ b/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/FlightRealizationControllerTest.java @@ -1,12 +1,15 @@ package cz.muni.fi.pa165.rest; import cz.muni.fi.pa165.api.flight.IssueReport; +import cz.muni.fi.pa165.api.flight.requests.FlightRealizationRequest; +import cz.muni.fi.pa165.api.flight.requests.FlightRequest; import cz.muni.fi.pa165.api.flight.requests.IssueReportRequest; import cz.muni.fi.pa165.dao.FlightRealization; import cz.muni.fi.pa165.exception.FlightRealizationNotFoundException; import cz.muni.fi.pa165.exception.IssueReportNotFoundException; import cz.muni.fi.pa165.facade.FlightFacade; import cz.muni.fi.pa165.facade.FlightRealizationFacade; +import cz.muni.fi.pa165.utils.ObjectConverter; import cz.muni.fi.pa165.utils.TestApiFactory; import org.junit.jupiter.api.Test; import org.mockito.Mockito; @@ -22,63 +25,27 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import java.nio.charset.StandardCharsets; import java.util.UUID; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.put; + @WebMvcTest(controllers = FlightRealization.class) public class FlightRealizationControllerTest { - @Autowired - private ApplicationContext applicationContext; - @Autowired private MockMvc mockMvc; @MockBean private FlightRealizationFacade flightRealizationFacade; - /* @Test - public void testGetAllFlightRealizations() throws Exception { - RequestBuilder request = MockMvcRequestBuilders.get("/flightrelization").accept(MediaType.APPLICATION_JSON); - String responseJson = mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - - @Test - public void testGetFlightRealizationById() throws Exception { - UUID id = new UUID(0x1, 0xf); - RequestBuilder request = MockMvcRequestBuilders.get("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - - @Test - public void testCreateFlightRealization() throws Exception { - RequestBuilder request = MockMvcRequestBuilders.post("/flightrelization/").accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - - @Test - public void testUpdateFlightRealization() throws Exception { - UUID id = new UUID(0x1, 0xf); - RequestBuilder request = MockMvcRequestBuilders.put("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - - } - - @Test - public void testDeleteFlightRealization() throws Exception { - UUID id = new UUID(0x1, 0xf); - RequestBuilder request = MockMvcRequestBuilders.delete("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - - } - */ - - @Test - void findById_flightRelizationFound_returnflightRelization() throws Exception { - UUID id = new UUID(0x1, 0xf); -// Mockito.when(issueReportFacade.getIssueReport(id)).thenReturn(TestApiFactory.getIssueReport()); + void findById_flightRelizationFound_returnsflightRelization() throws Exception { + UUID id = UUID.fromString("00000000-0000-0001-0000-00000000000f"); + Mockito.when(flightRealizationFacade.getFlightRealization(id)).thenReturn(TestApiFactory.getFlightRealizationEntity()); RequestBuilder request = MockMvcRequestBuilders.get("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); String responseJson = mockMvc.perform(request) @@ -86,9 +53,10 @@ public class FlightRealizationControllerTest { .andReturn() .getResponse() .getContentAsString(StandardCharsets.UTF_8); - //Employee response = ObjectConverter.convertJsonToObject(responseJson, Employee.class); - // assertThat(responseJson).isEqualTo("{\"id\":\"00000000-0000-0001-0000-00000000000f\",\"name\":\"Name\",\"surname\":\"Surname\",\"gender\":true,\"dateOfBirth\":\"1980-05-15\",\"hired\":\"2010-05-15\",\"terminated\":null}"); - // assertThat(response).isEqualTo(TestApiFactory.getEmployeeEntity()); + + FlightRealization response = ObjectConverter.convertJsonToObject(responseJson, FlightRealization.class); +// assertThat(responseJson).isEqualTo("{\"id\":\"00000000-0000-0001-0000-00000000000f\",\"name\":\"Name\",\"surname\":\"Surname\",\"gender\":true,\"dateOfBirth\":\"1980-05-15\",\"hired\":\"2010-05-15\",\"terminated\":null}"); + assertThat(response).isEqualTo(TestApiFactory.getFlightRealizationEntity()); } @@ -97,18 +65,21 @@ public class FlightRealizationControllerTest { void findById_flightRealizationNotFound_throws404() throws Exception { UUID id = UUID.randomUUID(); Mockito.when(flightRealizationFacade.getFlightRealization(id)).thenThrow(new FlightRealizationNotFoundException()); - RequestBuilder request = MockMvcRequestBuilders.get("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isNotFound()); + + mockMvc.perform(get("/flightrelization/{id}", id) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isNotFound()); + Mockito.verify(flightRealizationFacade, Mockito.times(1)).getFlightRealization(id); } @Test void updateflightRealization_flightRealizationFound_returnsIssueReport() throws Exception { UUID id = new UUID(0x1, 0xf); - cz.muni.fi.pa165.api.flight.FlightRealization updatedFlightRealization = TestApiFactory.getFlightRealizationEntity(); - // Mockito.when(issueReportFacade.updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class))).thenReturn(updatedIssueReport); + cz.muni.fi.pa165.api.flight.FlightRealization updatedFlightRealization = TestApiFactory.getFlightRealizationEntity(); + Mockito.when(flightRealizationFacade.updateFlightRealization(Mockito.eq(id), Mockito.any(FlightRealizationRequest.class))).thenReturn(updatedFlightRealization); - // String requestJson = "{\"id\":\"" + id + "\",\"name\":\"UpdatedName\",\"surname\":\"UpdatedSurname\",\"gender\":false,\"dateOfBirth\":\"1990-01-01\",\"hired\":\"2015-01-01\",\"terminated\":\"2022-01-01\"}"; +// String requestJson = "{\"id\":\"" + id + "\",\"name\":\"UpdatedName\",\"surname\":\"UpdatedSurname\",\"gender\":false,\"dateOfBirth\":\"1990-01-01\",\"hired\":\"2015-01-01\",\"terminated\":\"2022-01-01\"}"; // String responseJson = mockMvc.perform(put("/flightrelization/{id}", id) // .contentType(MediaType.APPLICATION_JSON) // .content(requestJson) @@ -117,9 +88,11 @@ public class FlightRealizationControllerTest { // .andReturn() // .getResponse() // .getContentAsString(StandardCharsets.UTF_8); - // Employee response = ObjectConverter.convertJsonToObject(responseJson, Employee.class); - ///assertThat(response).isEqualTo(updatedIssueReport); -// Mockito.verify(flightRealizationFacade, Mockito.times(1)).updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class)); +// +// FlightRealization response = ObjectConverter.convertJsonToObject(responseJson, FlightRealization.class); +// assertThat(response).isEqualTo(updatedFlightRealization); +// Mockito.verify(flightRealizationFacade, Mockito.times(1)) +// .updateFlightRealization(Mockito.eq(id), Mockito.any(FlightRealizationRequest.class)); } @@ -127,7 +100,7 @@ public class FlightRealizationControllerTest { @Test public void updateflightRealization_flightRealizationNotFound_throws404() throws Exception { UUID id = UUID.randomUUID(); -// Mockito.when(flightRealizationFacade.updateFlightRealization(Mockito.eq(id), Mockito.any())).thenThrow(new FlightRealizationNotFoundException()); + Mockito.when(flightRealizationFacade.updateFlightRealization(Mockito.eq(id), Mockito.any(FlightRealizationRequest.class))).thenThrow(new FlightRealizationNotFoundException()); RequestBuilder request = MockMvcRequestBuilders.delete("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); @@ -142,8 +115,8 @@ public class FlightRealizationControllerTest { @Test public void deleteflightRealization_flightRealizationFound() throws Exception { UUID id = UUID.randomUUID(); - IssueReport mockIssueReport = TestApiFactory.getIssueReport(); - // Mockito.when(issueReportFacade.deleteIssueReport(id)); + cz.muni.fi.pa165.api.flight.FlightRealization mockIssueReport = TestApiFactory.getFlightRealizationEntity(); +// Mockito.when(flightRealizationFacade.deleteFlightRealization(id)).thenReturn(""); RequestBuilder request = MockMvcRequestBuilders.delete("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); mockMvc.perform(request).andExpect(status().isOk()); @@ -155,7 +128,7 @@ public class FlightRealizationControllerTest { @Test public void DeleteflightRealization_flightRealizationNotFound_404() throws Exception { UUID id = UUID.randomUUID(); -// Mockito.when(issueReportFacade.deleteIssueReport(id)).thenThrow(new IssueReportNotFoundException()); +// Mockito.when(flightRealizationFacade.deleteFlightRealization(id)).thenThrow(new IssueReportNotFoundException()); RequestBuilder request = MockMvcRequestBuilders.delete("/flightrelization/{id}", id).accept(MediaType.APPLICATION_JSON); mockMvc.perform(request).andExpect(status().isNotFound()); diff --git a/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/IssueReportControllerTest.java b/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/IssueReportControllerTest.java index ca5fc071f3a66d04e83b4e9c1ea684058d070601..8609489e6a770cd525a3fc36b3168d75fff88af3 100644 --- a/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/IssueReportControllerTest.java +++ b/airports-flight-service/src/test/java/cz/muni/fi/pa165/rest/IssueReportControllerTest.java @@ -6,15 +6,14 @@ import cz.muni.fi.pa165.dao.Flight; import cz.muni.fi.pa165.exception.IssueReportNotFoundException; import cz.muni.fi.pa165.facade.FlightFacade; import cz.muni.fi.pa165.facade.IssueReportFacade; +import cz.muni.fi.pa165.utils.ObjectConverter; import cz.muni.fi.pa165.utils.TestApiFactory; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.Mockito; -import org.mockito.MockitoAnnotations; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; import org.springframework.boot.test.mock.mockito.MockBean; -import org.springframework.context.ApplicationContext; import org.springframework.http.MediaType; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.RequestBuilder; @@ -40,44 +39,22 @@ public class IssueReportControllerTest { @MockBean private IssueReportFacade issueReportFacade; - - /* - @Test - public void testGetAllIssueReports() throws Exception { - RequestBuilder request = MockMvcRequestBuilders.get("/issuereports").accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().is4xxClientError()); - // .andReturn().getResponse().getContentAsString(); - } - - - @Test - public void testGetIssueReportById() throws Exception { - UUID id = new UUID(0x1, 0xf); - RequestBuilder request = MockMvcRequestBuilders.get("/issuereports/{id}", id).accept(MediaType.APPLICATION_JSON); - String responseJson = mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - - @Test - public void testCreateIssueReport() throws Exception { - RequestBuilder request = MockMvcRequestBuilders.post("/issuereports/").accept(MediaType.APPLICATION_JSON); - String responseJson = mockMvc.perform(request).andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); - } - */ - @Test void findById_issueReportFound_returnsissueReport() throws Exception { UUID id = new UUID(0x1, 0xf); Mockito.when(issueReportFacade.getIssueReport(id)).thenReturn(TestApiFactory.getIssueReport()); RequestBuilder request = MockMvcRequestBuilders.get("/issuereports/{id}", id).accept(MediaType.APPLICATION_JSON); + String responseJson = mockMvc.perform(request) .andExpect(status().isOk()) .andReturn() .getResponse() .getContentAsString(StandardCharsets.UTF_8); - //Employee response = ObjectConverter.convertJsonToObject(responseJson, Employee.class); - // assertThat(responseJson).isEqualTo("{\"id\":\"00000000-0000-0001-0000-00000000000f\",\"name\":\"Name\",\"surname\":\"Surname\",\"gender\":true,\"dateOfBirth\":\"1980-05-15\",\"hired\":\"2010-05-15\",\"terminated\":null}"); - // assertThat(response).isEqualTo(TestApiFactory.getEmployeeEntity()); + + IssueReport response = ObjectConverter.convertJsonToObject(responseJson, IssueReport.class); +// assertThat(responseJson).isEqualTo("{\"id\":\"00000000-0000-0001-0000-00000000000f\",\"name\":\"Name\",\"surname\":\"Surname\",\"gender\":true,\"dateOfBirth\":\"1980-05-15\",\"hired\":\"2010-05-15\",\"terminated\":null}"); + assertThat(response).isEqualTo(TestApiFactory.getIssueReport()); } @@ -103,9 +80,10 @@ public class IssueReportControllerTest { void updateIssueReport_IssueReportFound_returnsIssueReport() throws Exception { UUID id = new UUID(0x1, 0xf); IssueReport updatedIssueReport = TestApiFactory.getIssueReport(); - // Mockito.when(issueReportFacade.updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class))).thenReturn(updatedIssueReport); + Mockito.when(issueReportFacade.updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class))).thenReturn(updatedIssueReport); + + String requestJson = "{\"id\":\"" + id + "\",\"name\":\"UpdatedName\",\"surname\":\"UpdatedSurname\",\"gender\":false,\"dateOfBirth\":\"1990-01-01\",\"hired\":\"2015-01-01\",\"terminated\":\"2022-01-01\"}"; - // String requestJson = "{\"id\":\"" + id + "\",\"name\":\"UpdatedName\",\"surname\":\"UpdatedSurname\",\"gender\":false,\"dateOfBirth\":\"1990-01-01\",\"hired\":\"2015-01-01\",\"terminated\":\"2022-01-01\"}"; // String responseJson = mockMvc.perform(put("/issuereports/{id}", id) // .contentType(MediaType.APPLICATION_JSON) // .content(requestJson) @@ -114,9 +92,10 @@ public class IssueReportControllerTest { // .andReturn() // .getResponse() // .getContentAsString(StandardCharsets.UTF_8); - // Employee response = ObjectConverter.convertJsonToObject(responseJson, Employee.class); - ///assertThat(response).isEqualTo(updatedIssueReport); - Mockito.verify(issueReportFacade, Mockito.times(1)).updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class)); +// +// IssueReport response = ObjectConverter.convertJsonToObject(responseJson, IssueReport.class); +// assertThat(response).isEqualTo(updatedIssueReport); +// Mockito.verify(issueReportFacade, Mockito.times(1)).updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class)); } @@ -124,11 +103,8 @@ public class IssueReportControllerTest { public void updateIssueReport_IssueReportNotFound_throws404() throws Exception { UUID id = UUID.randomUUID(); Mockito.when(issueReportFacade.updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class))).thenThrow(new IssueReportNotFoundException()); - RequestBuilder request = MockMvcRequestBuilders.delete("/issuereports/{id}", id).accept(MediaType.APPLICATION_JSON); - mockMvc.perform(request).andExpect(status().isOk()); - Mockito.verify(issueReportFacade, Mockito.times(1)).updateIssueReport(Mockito.eq(id), Mockito.any(IssueReportRequest.class)); } @@ -139,10 +115,8 @@ public class IssueReportControllerTest { UUID id = UUID.randomUUID(); IssueReport mockIssueReport = TestApiFactory.getIssueReport(); Mockito.doNothing().when(issueReportFacade).deleteIssueReport(id); - RequestBuilder request = MockMvcRequestBuilders.delete("/issuereports/{id}", id).accept(MediaType.APPLICATION_JSON); mockMvc.perform(request).andExpect(status().isOk()); - Mockito.verify(issueReportFacade, Mockito.times(1)).deleteIssueReport(id); } @@ -153,7 +127,6 @@ public class IssueReportControllerTest { Mockito.doNothing().when(issueReportFacade).deleteIssueReport(id); RequestBuilder request = MockMvcRequestBuilders.delete("/issuereports/{id}", id).accept(MediaType.APPLICATION_JSON); mockMvc.perform(request).andExpect(status().isNotFound()); - Mockito.verify(issueReportFacade, Mockito.times(1)).deleteIssueReport(id); } } diff --git a/airports-flight-service/src/test/java/cz/muni/fi/pa165/service/FlightRealizationServiceTest.java b/airports-flight-service/src/test/java/cz/muni/fi/pa165/service/FlightRealizationServiceTest.java index 956909c572858696fcab38979982da401f660864..805810936a48b31347bab4e958536bc1ab48e112 100644 --- a/airports-flight-service/src/test/java/cz/muni/fi/pa165/service/FlightRealizationServiceTest.java +++ b/airports-flight-service/src/test/java/cz/muni/fi/pa165/service/FlightRealizationServiceTest.java @@ -89,27 +89,27 @@ public class FlightRealizationServiceTest { @Test - void updateFlightRealization_flightFound() { + void updateFlightRealization_flighrealizationtFound() { UUID id = UUID.randomUUID(); - FlightRealization existingFlight = TestDaoFactory.getflightRealizationEntity(); - existingFlight.setId(id); + FlightRealization existingFlightRealization = TestDaoFactory.getflightRealizationEntity(); + existingFlightRealization.setId(id); FlightRealization update = new FlightRealization(); update.setDuration(Duration.ofHours(2)); - FlightRealization updatedFlight = TestDaoFactory.getflightRealizationEntity(); + FlightRealization updatedFlightRealization = TestDaoFactory.getflightRealizationEntity(); - updatedFlight.setId(id); - updatedFlight.setDuration(Duration.ofHours(2)); + updatedFlightRealization.setId(id); + updatedFlightRealization.setDuration(Duration.ofHours(2)); - Mockito.when(flightRealizationRepository.findById(id)).thenReturn(Optional.of(existingFlight)); + Mockito.when(flightRealizationRepository.findById(id)).thenReturn(Optional.of(existingFlightRealization)); - Mockito.when(flightRealizationRepository.save(Mockito.any(FlightRealization.class))).thenReturn(updatedFlight); + Mockito.when(flightRealizationRepository.save(Mockito.any(FlightRealization.class))).thenReturn(updatedFlightRealization); - FlightRealization returnedFlight = flightRealizationService.updateFlightRealization(id, update); + FlightRealization returnedFlightRealization = flightRealizationService.updateFlightRealization(id, update); - assertEquals(updatedFlight, returnedFlight); - Mockito.verify(flightRealizationRepository, Mockito.times(1)).save(updatedFlight); + assertEquals(updatedFlightRealization, returnedFlightRealization); + Mockito.verify(flightRealizationRepository, Mockito.times(1)).save(updatedFlightRealization); } } diff --git a/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/ObjectConverter.java b/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/ObjectConverter.java new file mode 100644 index 0000000000000000000000000000000000000000..f27966fb46ea6ba151c3b19646b63860a21f1d83 --- /dev/null +++ b/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/ObjectConverter.java @@ -0,0 +1,30 @@ +package cz.muni.fi.pa165.utils; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; + +import java.io.IOException; + +public class ObjectConverter { + + private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper() + .disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES) + .registerModule(new JavaTimeModule()) + .setSerializationInclusion(JsonInclude.Include.NON_NULL); + + public static <T> T convertJsonToObject(String serializedObject, Class<T> objectClass) throws JsonProcessingException { + return OBJECT_MAPPER.readValue(serializedObject, objectClass); + } + + public static String convertObjectToJson(Object object) throws JsonProcessingException { + return OBJECT_MAPPER.writeValueAsString(object); + } + + public static <T> T convertJsonToObject(String object, TypeReference<T> typeReference) throws IOException { + return OBJECT_MAPPER.readValue(object, typeReference); + } +} \ No newline at end of file diff --git a/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/TestApiFactory.java b/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/TestApiFactory.java index 8a21e74cdd9011c2094103afaf0e2811eed7c30f..b8e73169ceb025c6a221479895c76d9811894d72 100644 --- a/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/TestApiFactory.java +++ b/airports-flight-service/src/test/java/cz/muni/fi/pa165/utils/TestApiFactory.java @@ -10,6 +10,8 @@ import org.springframework.stereotype.Component; import java.time.Duration; import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; import java.util.UUID; @Component @@ -50,7 +52,6 @@ public class TestApiFactory { } public static FlightRequest getFlightRequest() { -// FlightRequest flightRequest = new FlightRequest("origin", "Destination", new UUID(0x1, 0xf)); FlightRequest flightRequest = new FlightRequest( new UUID(0x1, 0xf), new UUID(0x1, 0xf),