From ceec1ed2249708e1f0f0dec559d3ff513c4330ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1n=20Mach=C3=A1=C4=8Dek?= <xmachac5@fi.muni.cz> Date: Sun, 16 Apr 2023 23:31:41 +0200 Subject: [PATCH] fet: steward tests --- .../core/steward/StewardServiceImplTests.java | 105 ++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 core/src/test/java/cz/muni/fi/pa165/core/steward/StewardServiceImplTests.java diff --git a/core/src/test/java/cz/muni/fi/pa165/core/steward/StewardServiceImplTests.java b/core/src/test/java/cz/muni/fi/pa165/core/steward/StewardServiceImplTests.java new file mode 100644 index 0000000..2504e56 --- /dev/null +++ b/core/src/test/java/cz/muni/fi/pa165/core/steward/StewardServiceImplTests.java @@ -0,0 +1,105 @@ +package cz.muni.fi.pa165.core.steward; + +import cz.muni.fi.pa165.core.data.domain.Flight; +import cz.muni.fi.pa165.core.data.domain.FlightSteward; +import cz.muni.fi.pa165.core.data.domain.Steward; +import cz.muni.fi.pa165.core.data.repository.flightsteward.FlightStewardRepository; +import cz.muni.fi.pa165.core.data.repository.steward.StewardRepository; +import cz.muni.fi.pa165.core.service.steward.StewardServiceImpl; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import java.time.OffsetDateTime; +import java.util.Optional; +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + + +public class StewardServiceImplTests { + private StewardServiceImpl stewardService; + private StewardRepository stewardRepository; + + @BeforeEach + void setUp() { + stewardRepository = mock(StewardRepository.class); + FlightStewardRepository flightStewardRepository = mock(FlightStewardRepository.class); + stewardService = new StewardServiceImpl(stewardRepository, + flightStewardRepository); + } + + @Test + void findByIdTestSuccess() { + var firstName = "Ondra"; + var lastName = "NovĂ˝"; + var steward = new Steward(); + steward.setFirstName(firstName); + steward.setLastName(lastName); + + when(stewardRepository.findById(steward.getId())) + .thenReturn(Optional.of(steward)); + + var foundStewardByIdOpt = stewardService.findById(steward.getId()); + + assertTrue(foundStewardByIdOpt.isPresent()); + assertEquals(foundStewardByIdOpt.get().getFirstName(), firstName); + assertEquals(foundStewardByIdOpt.get().getLastName(), lastName); + } + + @Test + void assignToFlight() { + var firstName = "Ondra"; + var lastName = "NovĂ˝"; + var steward = new Steward(); + steward.setFirstName(firstName); + steward.setLastName(lastName); + + var flightDepartureTime = OffsetDateTime.now(); + var flightArrivalTime = OffsetDateTime.now(); + var flight = new Flight(); + flight.setArrivalTime(flightArrivalTime); + flight.setDepartureTime(flightDepartureTime); + + FlightSteward flightSteward = new FlightSteward(); + + flightSteward.setFlight(flight); + flightSteward.setSteward(steward); + + assertEquals(flightSteward.getSteward(), steward); + assertEquals(flightSteward.getFlight(), flight); + } + + + @Test + void updateTestSuccess() { + var stewardToUpdate = new Steward(); + stewardToUpdate.setId(1L); + var firstName = "Ondra"; + var lastName = "NovĂ˝"; + stewardToUpdate.setFirstName(firstName); + stewardToUpdate.setLastName(lastName); + + + var updatedStewardRequest = new Steward(); + var newFirstName = "Jirka"; + var newLastName = "StarĂ˝"; + updatedStewardRequest.setFirstName(newFirstName); + updatedStewardRequest.setLastName(newLastName); + + when(stewardRepository.findById(1L)) + .thenReturn(Optional.of(stewardToUpdate)); + when(stewardRepository.save(stewardToUpdate)) + .thenReturn(updatedStewardRequest); + + + assertEquals(firstName, stewardToUpdate.getFirstName()); + assertNotEquals(newFirstName, stewardToUpdate.getFirstName()); + assertEquals(lastName, stewardToUpdate.getLastName()); + assertNotEquals(newLastName, stewardToUpdate.getLastName()); + + var afterUpdate = stewardService.update(1L, updatedStewardRequest); + + assertEquals(afterUpdate.getFirstName(), stewardToUpdate.getFirstName()); + } + +} + -- GitLab