From ec26b62447689d501d7e4ba1d289b6739c694235 Mon Sep 17 00:00:00 2001
From: Dominic Rogetzer <e1627756@student.tuwien.ac.at>
Date: Mon, 11 Jun 2018 15:10:14 +0200
Subject: Add integration tests for registration- service/dao [#27302]

---
 .../RegistrationServiceIntegrationTest.java        | 53 ++++++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/RegistrationServiceIntegrationTest.java

(limited to 'src/test/java/at/ac')

diff --git a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/RegistrationServiceIntegrationTest.java b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/RegistrationServiceIntegrationTest.java
new file mode 100644
index 0000000..0e8004c
--- /dev/null
+++ b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/RegistrationServiceIntegrationTest.java
@@ -0,0 +1,53 @@
+package at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.service;
+
+import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.EmployeeDAO;
+import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.EmployeeDatabaseDAO;
+import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.RegistrationDAO;
+import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.RegistrationDatabaseDAO;
+import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.VehicleDAO;
+import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.VehicleDatabaseDAO;
+import at.ac.tuwien.sepm.assignment.groupphase.exception.InvalidRegistrationException;
+import at.ac.tuwien.sepm.assignment.groupphase.exception.InvalidVehicleException;
+import at.ac.tuwien.sepm.assignment.groupphase.exception.PersistenceException;
+import at.ac.tuwien.sepm.assignment.groupphase.exception.ServiceException;
+import at.ac.tuwien.sepm.assignment.groupphase.util.JdbcTestCase;
+import org.dbunit.dataset.IDataSet;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+
+public class RegistrationServiceIntegrationTest extends JdbcTestCase {
+
+    private RegistrationDAO registrationDAO;
+    private VehicleDAO vehicleDAO;
+
+    @Rule public ExpectedException thrown = ExpectedException.none();
+
+    @Override
+    protected IDataSet getDataSet() throws Exception {
+        return getDataSet("registrationTestBaseData.xml");
+    }
+
+    @Before
+    public void prepare() throws PersistenceException {
+
+        EmployeeDAO employeeDAO = new EmployeeDatabaseDAO(getJdbcConnectionManager());
+        registrationDAO = new RegistrationDatabaseDAO(getJdbcConnectionManager(), employeeDAO);
+        vehicleDAO =
+                new VehicleDatabaseDAO(
+                        getJdbcConnectionManager(), (RegistrationDatabaseDAO) registrationDAO);
+    }
+
+    @Test
+    public void addValidRegistrationsShouldSucceed()
+            throws InvalidRegistrationException, ServiceException, InvalidVehicleException {
+        RegistrationServiceTest.addValidRegistrations(registrationDAO, vehicleDAO);
+    }
+
+    @Test
+    public void addOnlyOnePersonToRTWShouldFail()
+            throws InvalidRegistrationException, ServiceException, InvalidVehicleException {
+        RegistrationServiceTest.addOnlyOnePersonToRTW(thrown, registrationDAO, vehicleDAO);
+    }
+}
-- 
cgit v1.2.3-70-g09d2