Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package uk.ac.aber.dcs.csgp17;
- import java.util.Date;
- import java.text.SimpleDateFormat;
- import java.text.DateFormat;
- import java.io.File;
- import java.sql.SQLException;
- import java.sql.ResultSet;
- import org.junit.AfterClass;
- import org.junit.BeforeClass;
- import org.junit.Test;
- import static org.junit.Assert.*;
- /**
- *
- * @author bel9
- */
- public class ReportTest {
- public ReportTest() {
- }
- @BeforeClass
- public static void setUpClass() throws Exception {
- }
- @AfterClass
- public static void tearDownClass() throws Exception {
- }
- /**
- * Test of getNoOfArrangements method, of class Report.
- */
- @Test
- public void testGetNoOfArrangements() {
- //Get the expected results
- DBControls dbControls = DBControls._instance();
- System.out.println("getNoOfArrangements test");
- Report instance = new Report();
- String resultTest = null;
- int arrCountTest = 0;
- ResultSet rs = dbControls.query("SELECT arrangementid FROM arrangement");
- if (rs == null) {
- arrCountTest = 0;
- } else {
- try {
- while (rs.next()) {
- arrCountTest++;
- }
- } catch (SQLException e) {
- }
- }
- //Check that the result given from the method = the expected result
- int result = instance.getNoOfArrangements();
- assertEquals(arrCountTest, result);
- }
- /**
- * Test of getMilesSaved method, of class Report.
- */
- @Test
- public void testGetMilesSaved() {
- System.out.println("getMilesSaved test");
- Report instance = new Report();
- DBControls dbControls = DBControls._instance();
- //Get the number of miles saved
- double totalmilesExpected = 0.0;
- ResultSet rsarrangid = dbControls.query("SELECT arrangementid FROM arrangement");
- try {
- while (rsarrangid.next()) {
- ResultSet rsmembid = dbControls.query("SELECT arrangement_memberid FROM arrangement_member WHERE arrangementid = " + rsarrangid.getString(1));
- while (rsmembid.next()) {
- ResultSet rsmiles = dbControls.query("SELECT miles FROM arrangement WHERE arrangementid ="
- + rsarrangid.getString(1));
- while (rsmiles.next()) {
- totalmilesExpected = (totalmilesExpected + rsmiles.getDouble(1));
- }
- }
- }
- } catch (SQLException e) { }
- double result = instance.getMilesSaved();
- assertEquals(totalmilesExpected, result, 0.0);
- }
- /**
- * Test of getNoOfParking method, of class Report.
- */
- @Test
- public void testGetNoOfParking() {
- System.out.println("getNoOfParking");
- Report instance = new Report();
- int expResult = 0;
- int membercount = 0;
- //Get expected result
- DBControls dbControls = DBControls._instance();
- ResultSet rs = dbControls.query("SELECT arrangement_memberid FROM arrangement_member");
- if (rs == null) {
- expResult = 0;
- } else {
- try {
- while (rs.next()) {
- expResult++;
- }
- } catch (SQLException e) { }
- }
- //Get actual result
- int result = instance.getNoOfParking();
- //Compare actual result with expected.
- assertEquals(expResult, result);
- }
- /**
- * Test of getNoOfTravellers method, of class Report.
- */
- @Test
- public void testGetNoOfTravellers() {
- DBControls dbControls = DBControls._instance();
- Report instance = new Report();
- int expResult = 0;
- int travelcount = 0;
- //Get number of distinct users in the members table
- ResultSet rs = dbControls.query("SELECT DISTINCT userID FROM arrangement_member");
- if (rs == null) {
- } else {
- try {
- while (rs.next()) {
- travelcount++;
- }
- } catch (SQLException e) {
- }
- }
- //Get number of distinct users in the arrangement table
- ResultSet rs1 = dbControls.query("SELECT DISTINCT driverid FROM arrangement");
- if (rs1 == null) {
- } else {
- try {
- while (rs1.next()) {
- travelcount++;
- }
- } catch (SQLException e) {
- }
- }
- //Get actual result
- int result = instance.getNoOfTravellers();
- //Compare actual result to the expected result
- assertEquals(travelcount, result);
- }
- /**
- * Test of generateReport method, of class Report.
- *
- * Doesn't work due to not being able find if file exists!
- */
- // @Test
- // public void testGenerateReport() {
- // System.out.println("generateReport");
- // Boolean exists = new Boolean(false);
- //
- // DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
- // Date date = new Date(); public void testGenerateReport() {
- //
- // String dateString = dateFormat.format(date);
- // String docName = new String("report_" + dateString + ".pdf"); //Create name for document
- // File f = new File(docName);
- // if(f.exists()){
- // System.out.println("File existed");
- // exists = true;
- // }else{
- // System.out.println("File not found!");
- // exists = false;
- // }
- //
- // Report instance = new Report();
- // instance.generateReport();
- //
- // System.out.println(exists);
- // assertTrue(f.exists(docName));
- //
- // assertTrue(exists);
- // }
- /**
- * Test of deleteOld method, of class Report.
- */
- @Test
- public void testDeleteOld() {
- System.out.println("deleteOld");
- Boolean deleted = null;
- DBControls dbControls = DBControls._instance();
- //Enter in test data that is older than 1 month
- ResultSet hmmm = dbControls.query("INSERT INTO arrangement (driverid, datecreated)VALUES ('test0', '2011-01-01')");
- ResultSet hmmm1 = dbControls.query("INSERT INTO arrangement (driverid, datecreated)VALUES ('test1', '2010-12-02')");
- ResultSet hmmm2 = dbControls.query("INSERT INTO arrangement (driverid, datecreated)VALUES ('test2', '2011-03-03')");
- //Check to see they were entered correctly
- ResultSet rs = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test0'");
- ResultSet rs1 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test1'");
- ResultSet rs2 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test2'");
- if (rs2 == null || rs1 == null || rs == null){
- System.out.println("Data was not succesfully entered");
- deleted = false;
- } else {
- System.out.println("Test data was entered succesfully");
- Report instance = new Report();
- instance.deleteOld();
- ResultSet rs0 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test0'");
- ResultSet rs10 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test1'");
- ResultSet rs20 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test2'");
- if (rs0 == null || rs10 == null || rs20 == null){
- deleted = true;
- } else{
- deleted = false;
- }
- assertTrue (deleted);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement