aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java/at/ac/tuwien/sepm/assignment/groupphase
diff options
context:
space:
mode:
authorDominic Rogetzer <e1627756@student.tuwien.ac.at>2018-05-19 12:18:48 +0200
committerTharre <tharre3@gmail.com>2018-05-22 17:05:32 +0200
commit69901593ea681a0ddcd4dd472155dea0daab4ca4 (patch)
tree0db5b648b71091cf822a58344034056fe8649698 /src/test/java/at/ac/tuwien/sepm/assignment/groupphase
parent341e9d6a058e61c251b36aa57016705a1dc53ca5 (diff)
downloadsepm-groupproject-69901593ea681a0ddcd4dd472155dea0daab4ca4.tar.gz
sepm-groupproject-69901593ea681a0ddcd4dd472155dea0daab4ca4.tar.xz
sepm-groupproject-69901593ea681a0ddcd4dd472155dea0daab4ca4.zip
Add unit-test testAddValidEmployee [#25949]
Diffstat (limited to 'src/test/java/at/ac/tuwien/sepm/assignment/groupphase')
-rw-r--r--src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeePersistenceTest.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeePersistenceTest.java b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeePersistenceTest.java
index 8633b9d..52a87eb 100644
--- a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeePersistenceTest.java
+++ b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeePersistenceTest.java
@@ -7,9 +7,13 @@ import at.ac.tuwien.sepm.assignment.groupphase.util.JdbcTestCase;
import java.io.InputStream;
import java.time.LocalDate;
import java.util.Set;
+import org.dbunit.Assertion;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.IDataSet;
+import org.dbunit.dataset.ITable;
+import org.dbunit.dataset.filter.DefaultColumnFilter;
import org.dbunit.dataset.xml.FlatXmlDataSetBuilder;
+import org.dbunit.util.fileloader.FlatXmlDataFileLoader;
import org.junit.Assert;
public class EmployeePersistenceTest extends JdbcTestCase {
@@ -82,4 +86,66 @@ public class EmployeePersistenceTest extends JdbcTestCase {
Assert.assertFalse(employees.contains(empOne));
}
+
+ /**
+ * This test checks if rows in both table EmployeeVersion and Employee are created, without
+ * checking the referential integrity constraint.
+ *
+ * @throws Exception
+ */
+ public void testAddValidEmployee() throws Exception {
+
+ Employee employee =
+ Employee.builder()
+ .id(4)
+ .name("Testperson")
+ .birthday(LocalDate.parse("2010-11-11"))
+ .educationLevel(EducationLevel.NA)
+ .isDriver(true)
+ .isPilot(false)
+ .build();
+
+ employeePersistence.add(employee);
+
+ String[] excludedColumnsEmployeeVersion = new String[] {"ID"};
+ String[] excludedColumnsEmployee = new String[] {"VERSION"};
+ String tableEmployeeVersion = "EMPLOYEEVERSION";
+ String tableEmployee = "EMPLOYEE";
+
+ // load actual and expected data set
+ IDataSet actualDataSet = getConnection().createDataSet();
+ IDataSet expectedDataSet =
+ new FlatXmlDataFileLoader().load("/testAddValidEmployee_expected.xml");
+
+ // extract employeeVersion table
+ ITable actualEmployeeVersionTable = actualDataSet.getTable(tableEmployeeVersion);
+ ITable expectedEmployeeVersionTable = expectedDataSet.getTable(tableEmployeeVersion);
+
+ // exclude 'id' column as it is an autogenerated value
+ ITable actualFilteredTable =
+ DefaultColumnFilter.excludedColumnsTable(
+ actualEmployeeVersionTable, excludedColumnsEmployeeVersion);
+ ITable expectedFilteredTable =
+ DefaultColumnFilter.excludedColumnsTable(
+ expectedEmployeeVersionTable, excludedColumnsEmployeeVersion);
+
+ // extract employee table
+ ITable actualEmployeeTable = actualDataSet.getTable(tableEmployee);
+ ITable expectedEmployeeTable = expectedDataSet.getTable(tableEmployee);
+
+ // exclude 'version' as it is an autogenerated value
+ ITable actualFilteredEmpTable =
+ DefaultColumnFilter.excludedColumnsTable(
+ actualEmployeeTable, excludedColumnsEmployee);
+ ITable expectedFilteredEmpTable =
+ DefaultColumnFilter.excludedColumnsTable(
+ expectedEmployeeTable, excludedColumnsEmployee);
+
+ Assertion.assertEquals(expectedFilteredTable, actualFilteredTable);
+ Assertion.assertEquals(expectedFilteredEmpTable, actualFilteredEmpTable);
+ }
+
+ public void testUpdateValidEmployee() throws PersistenceException {}
+
+ public void testUpdateNonExistingEmployee() throws PersistenceException {}
}