aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java
diff options
context:
space:
mode:
authorTharre <tharre3@gmail.com>2018-06-20 22:07:36 +0200
committerTharre <tharre3@gmail.com>2018-06-20 22:07:36 +0200
commit0c995a05985da749d93aa56eba976c7fc621a4fa (patch)
tree5b80394920705aae5e2b6004c3dfbd839c8b8fa3 /src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDAOTest.java
parentf5bc7925a8fbbe247972a6f0e0571cc7e92fbefa (diff)
parente21feb3ac772a5394dc5381b58142c3c061de716 (diff)
downloadsepm-groupproject-master.tar.gz
sepm-groupproject-master.tar.xz
sepm-groupproject-master.zip
Merge branch 'develop'HEADv3.0master
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.java157
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);
- }
-}