diff options
Diffstat (limited to 'src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java')
-rw-r--r-- | src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java | 157 |
1 files changed, 0 insertions, 157 deletions
diff --git a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java deleted file mode 100644 index f173376..0000000 --- a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java +++ /dev/null @@ -1,157 +0,0 @@ -package at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao; - -import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation; -import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation.Severity; -import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation.Status; -import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle; -import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle.ConstructionType; -import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle.VehicleType; -import at.ac.tuwien.sepm.assignment.groupphase.exception.ElementNotFoundException; -import at.ac.tuwien.sepm.assignment.groupphase.exception.PersistenceException; -import at.ac.tuwien.sepm.assignment.groupphase.util.JdbcTestCase; -import java.time.Instant; -import java.util.Arrays; -import java.util.Collections; -import java.util.EnumSet; -import java.util.Set; -import org.dbunit.dataset.DataSetException; -import org.dbunit.dataset.IDataSet; -import org.junit.Test; - -public class OperationDAOTest extends JdbcTestCase { - - private static final String[] COMPARE_TABLES = - new String[] {"VehicleOperation", "Operation", "Vehicle", "VehicleVersion"}; - - private final OperationDAO operationDAO; - - private final Operation o; - - public OperationDAOTest() throws PersistenceException { - // TODO: fix once everything properly uses dependency injection - EmployeeDAO employeeDAO = new EmployeeDatabaseDAO(getJdbcConnectionManager()); - RegistrationDatabaseDAO registrationDatabaseDAO = - new RegistrationDatabaseDAO(getJdbcConnectionManager(), employeeDAO); - VehicleDAO vehicleDAO = - new VehicleDatabaseDAO(getJdbcConnectionManager(), registrationDatabaseDAO); - this.operationDAO = new OperationDatabaseDAO(getJdbcConnectionManager(), vehicleDAO); - - Vehicle v1 = - Vehicle.builder() - .id(1) - .name("RTW-1") - .constructionType(Vehicle.ConstructionType.HOCHDACH) - .type(Vehicle.VehicleType.RTW) - .status(Vehicle.Status.FREI_FUNK) - .hasNef(true) - .build(); - - Vehicle v2 = v1.toBuilder().id(2).build(); - Vehicle v3 = v1.toBuilder().id(3).build(); - - o = - Operation.builder() - .id(1) - .opCode("RD-2B0M") - .severity(Severity.B) - .status(Status.ACTIVE) - .vehicles(Set.of(v1, v2, v3)) - .created(Instant.now()) - .destination("New description") - .additionalInfo("Test") - .build(); - } - - @Override - protected IDataSet getDataSet() throws DataSetException { - return getDataSet("operationDAOUpdateSetup.xml"); - } - - @Test - public void testUpdateNormal() throws Exception { - operationDAO.update(o); - - compareWith("operationDAOUpdateNormal.xml", COMPARE_TABLES); - } - - @Test(expected = ElementNotFoundException.class) - public void testUpdateMissing() throws Exception { - Operation op = o.toBuilder().id(73).build(); - - operationDAO.update(op); - } - - @Test - public void testUpdateRemoveVehicles() throws Exception { - Operation op = o.toBuilder().vehicles(Collections.emptySet()).build(); - - operationDAO.update(op); - - compareWith("operationDAOUpdateRemoveVehicles.xml", COMPARE_TABLES); - } - - @Test - public void testListOperations() throws Exception { - Set<Operation> operationSet = operationDAO.list(EnumSet.allOf(Status.class)); - - // TODO: operations.list() currently doesn't set the vehicles set - // assertEquals(Set.of(o), operationSet); - } - - @Test - public void testAddOperation() throws Exception { - operationDAO.add(o); - - // TODO: won't work because id won't match - // compareWith("operationDAOUpdateNormal.xml", COMPARE_TABLES); - } - - @Test(expected = PersistenceException.class) - public void testAddFaultyOperation() throws PersistenceException { - Vehicle vehicle = - Vehicle.builder() - .status(Vehicle.Status.FREI_FUNK) - .constructionType(ConstructionType.HOCHDACH) - .name("BKTW_123") - .hasNef(true) - .type(VehicleType.BKTW) - .build(); - - Operation operation = - Operation.builder() - .status(Status.ACTIVE) - .opCode(String.valueOf(Arrays.stream(new int[200]).map(i -> 'a'))) - .created(Instant.now()) - .destination("Wiedner Hauptstraße 35, Wien") - .additionalInfo("HTU Wien") - .severity(Severity.B) - .vehicles(Set.of(vehicle)) - .build(); - operationDAO.add(operation); - } - - @Test(expected = PersistenceException.class) - public void testAddFaultyOperation2() throws PersistenceException { - Vehicle vehicle = - Vehicle.builder() - .status(Vehicle.Status.FREI_FUNK) - .constructionType(ConstructionType.HOCHDACH) - .name("BKTW_123") - .hasNef(true) - .type(VehicleType.BKTW) - .build(); - - Operation operation = - Operation.builder() - .status(Status.ACTIVE) - .opCode("ALP-95E7") - .created(Instant.now()) - .destination( - "Wiednerstraße 888, 1010 Wien Wiednerstraße 888, 1010 Wien Wiednerstraße 888, 1010 Wien Wiednerstraße 888, 1010 Wien Wiednerstraße 888, 1010 Wien ") - .additionalInfo("HTU Wien") - .severity(Severity.B) - .vehicles(Set.of(vehicle)) - .build(); - operationDAO.add(operation); - } -} |