From c91668fc54d60657f15a2c171745ffc58f2f92c7 Mon Sep 17 00:00:00 2001
From: mjw11 <mjw11@illinois.edu>
Date: Thu, 19 Nov 2020 03:38:24 -0600
Subject: [PATCH] Add Action and DAO unit tests

---
 ...iewPreRegisteredPatientListActionTest.java | 42 +++++++++++++++++++
 .../unit/dao/patient/ActivatePatientTest.java | 30 +++++++++++++
 .../itrust/unit/dao/patient/GetRoleTest.java  | 24 +++++++++++
 3 files changed, 96 insertions(+)
 create mode 100644 iTrust/test/edu/ncsu/csc/itrust/unit/action/ViewPreRegisteredPatientListActionTest.java
 create mode 100644 iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/ActivatePatientTest.java
 create mode 100644 iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/GetRoleTest.java

diff --git a/iTrust/test/edu/ncsu/csc/itrust/unit/action/ViewPreRegisteredPatientListActionTest.java b/iTrust/test/edu/ncsu/csc/itrust/unit/action/ViewPreRegisteredPatientListActionTest.java
new file mode 100644
index 0000000..3c12d87
--- /dev/null
+++ b/iTrust/test/edu/ncsu/csc/itrust/unit/action/ViewPreRegisteredPatientListActionTest.java
@@ -0,0 +1,42 @@
+package edu.ncsu.csc.itrust.unit.action;
+
+import junit.framework.TestCase;
+import edu.ncsu.csc.itrust.action.ViewPersonnelAction;
+import edu.ncsu.csc.itrust.beans.PatientBean;
+import edu.ncsu.csc.itrust.dao.DAOFactory;
+import edu.ncsu.csc.itrust.exception.ITrustException;
+import edu.ncsu.csc.itrust.unit.datagenerators.TestDataGenerator;
+import edu.ncsu.csc.itrust.unit.testutils.TestDAOFactory;
+
+public class ViewPreRegisteredPatientListActionTest extends TestCase {
+
+	private DAOFactory factory = TestDAOFactory.getTestInstance();
+	private ViewPreRegisteredPatientListAction action;
+	private TestDataGenerator gen;
+
+	@Override
+	protected void setUp() throws Exception {
+		gen = new TestDataGenerator();
+		gen.clearAllTables();
+		gen.patient4();
+		gen.hcp3();
+	}
+
+    public void testViewPatients() throws Exception {
+        action = new ViewPreRegisteredPatientListAction(factory);
+        List<PatientBean> pb = action.getPreRegisteredPatients();
+        assertEquals(pb.get(0) == 4);
+    }
+
+	public void testNoPersonnel() throws Exception {
+		action = new ViewPreRegisteredPatientListAction(factory);
+        List<PatientBean> pb = action.getPreRegisteredPatients();
+        for (PatientBean p : pb) {
+            if (p.id() == "90000000") {
+                fail("This id should not exist in the list");
+            }
+        }
+
+		return;
+	}
+}
diff --git a/iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/ActivatePatientTest.java b/iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/ActivatePatientTest.java
new file mode 100644
index 0000000..ecb61d5
--- /dev/null
+++ b/iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/ActivatePatientTest.java
@@ -0,0 +1,30 @@
+package edu.ncsu.csc.itrust.unit.dao.patient;
+
+import junit.framework.TestCase;
+import edu.ncsu.csc.itrust.beans.PatientBean;
+import edu.ncsu.csc.itrust.dao.mysql.PatientDAO;
+import edu.ncsu.csc.itrust.exception.ITrustException;
+import edu.ncsu.csc.itrust.unit.datagenerators.TestDataGenerator;
+import edu.ncsu.csc.itrust.unit.testutils.TestDAOFactory;
+
+public class ActivatePatientTest extends TestCase {
+	private TestDataGenerator gen = new TestDataGenerator();
+	private PatientDAO patientDAO = TestDAOFactory.getTestInstance().getPatientDAO();
+
+	@Override
+	protected void setUp() throws Exception {
+		gen.clearAllTables();
+	}
+
+	public void testAddEmptyPatient() throws Exception {
+		long pid = patientDAO.addEmptyPatient();
+		assertEquals(" ", patientDAO.getName(pid));
+	}
+
+	public void testActivateNewPatient() throws Exception {
+		long pid = patientDAO.addEmptyPatient();
+		assertEquals("PreRegisteredPatient", patientDAO.getRole(pid));
+		activatePatient(pid);
+		assertEquals("patient", patientDAO.getRole(pid));
+	}
+}
diff --git a/iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/GetRoleTest.java b/iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/GetRoleTest.java
new file mode 100644
index 0000000..dab95e6
--- /dev/null
+++ b/iTrust/test/edu/ncsu/csc/itrust/unit/dao/patient/GetRoleTest.java
@@ -0,0 +1,24 @@
+package edu.ncsu.csc.itrust.unit.dao.patient;
+
+import junit.framework.TestCase;
+import edu.ncsu.csc.itrust.dao.mysql.PatientDAO;
+import edu.ncsu.csc.itrust.unit.datagenerators.TestDataGenerator;
+import edu.ncsu.csc.itrust.unit.testutils.TestDAOFactory;
+
+public class GetRoleTest extends TestCase {
+	private PatientDAO patientDAO = TestDAOFactory.getTestInstance().getPatientDAO();
+	private TestDataGenerator gen;
+
+	@Override
+	protected void setUp() throws Exception {
+		gen = new TestDataGenerator();
+		gen.clearAllTables();
+		gen.patient2();
+	}
+
+	public void testGetRole() throws Exception {
+		String role = patientDAO.getRole(2);
+		assertEquals("PreRegisteredPatient", role);
+	}
+	
+}
-- 
GitLab