Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.65 KB | None | 0 0
  1.  
  2. package uk.ac.aber.dcs.csgp17;
  3.  
  4. import java.util.Date;
  5. import java.text.SimpleDateFormat;
  6. import java.text.DateFormat;
  7. import java.io.File;
  8. import java.sql.SQLException;
  9. import java.sql.ResultSet;
  10. import org.junit.AfterClass;
  11. import org.junit.BeforeClass;
  12. import org.junit.Test;
  13. import static org.junit.Assert.*;
  14.  
  15. /**
  16.  *
  17.  * @author bel9
  18.  */
  19. public class ReportTest {
  20.  
  21.     public ReportTest() {
  22.     }
  23.  
  24.     @BeforeClass
  25.     public static void setUpClass() throws Exception {
  26.  
  27.     }
  28.  
  29.     @AfterClass
  30.     public static void tearDownClass() throws Exception {
  31.     }
  32.  
  33.     /**
  34.      * Test of getNoOfArrangements method, of class Report.
  35.      */
  36.     @Test
  37.     public void testGetNoOfArrangements() {
  38.  
  39.         //Get the expected results
  40.         DBControls dbControls = DBControls._instance();
  41.         System.out.println("getNoOfArrangements test");
  42.         Report instance = new Report();
  43.         String resultTest = null;
  44.         int arrCountTest = 0;
  45.  
  46.         ResultSet rs = dbControls.query("SELECT arrangementid FROM arrangement");
  47.         if (rs == null) {
  48.             arrCountTest = 0;
  49.         } else {
  50.             try {
  51.                 while (rs.next()) {
  52.                     arrCountTest++;
  53.                 }
  54.  
  55.             } catch (SQLException e) {
  56.             }
  57.         }
  58.         //Check that the result given from the method = the expected result
  59.         int result = instance.getNoOfArrangements();
  60.         assertEquals(arrCountTest, result);
  61.         }
  62.  
  63.  
  64.  
  65.  
  66.     /**
  67.      * Test of getMilesSaved method, of class Report.
  68.      */
  69.     @Test
  70.     public void testGetMilesSaved() {
  71.         System.out.println("getMilesSaved test");
  72.         Report instance = new Report();
  73.         DBControls dbControls = DBControls._instance();
  74.  
  75.  
  76.         //Get the number of miles saved
  77.         double totalmilesExpected = 0.0;
  78.         ResultSet rsarrangid = dbControls.query("SELECT arrangementid FROM arrangement");
  79.         try {
  80.             while (rsarrangid.next()) {
  81.                 ResultSet rsmembid = dbControls.query("SELECT arrangement_memberid FROM arrangement_member WHERE arrangementid = " + rsarrangid.getString(1));
  82.  
  83.                 while (rsmembid.next()) {
  84.                     ResultSet rsmiles = dbControls.query("SELECT miles FROM arrangement WHERE arrangementid ="
  85.                             + rsarrangid.getString(1));
  86.  
  87.                     while (rsmiles.next()) {
  88.                         totalmilesExpected = (totalmilesExpected + rsmiles.getDouble(1));
  89.                     }
  90.                 }
  91.             }
  92.         } catch (SQLException e) {       }
  93.         double result = instance.getMilesSaved();
  94.         assertEquals(totalmilesExpected, result, 0.0);
  95.     }
  96.  
  97.     /**
  98.      * Test of getNoOfParking method, of class Report.
  99.      */
  100.     @Test
  101.     public void testGetNoOfParking() {
  102.         System.out.println("getNoOfParking");
  103.         Report instance = new Report();
  104.         int expResult = 0;
  105.         int membercount = 0;
  106.  
  107.         //Get expected result
  108.         DBControls dbControls = DBControls._instance();
  109.         ResultSet rs = dbControls.query("SELECT arrangement_memberid FROM arrangement_member");
  110.         if (rs == null) {
  111.             expResult = 0;
  112.         } else {
  113.             try {
  114.                 while (rs.next()) {
  115.                     expResult++;
  116.                 }
  117.             } catch (SQLException e) {      }
  118.         }
  119.         //Get actual result
  120.         int result = instance.getNoOfParking();
  121.         //Compare actual result with expected.
  122.         assertEquals(expResult, result);
  123.     }
  124.  
  125.     /**
  126.      * Test of getNoOfTravellers method, of class Report.
  127.      */
  128.     @Test
  129.     public void testGetNoOfTravellers() {
  130.         DBControls dbControls = DBControls._instance();
  131.         Report instance = new Report();
  132.         int expResult = 0;
  133.         int travelcount = 0;
  134.  
  135.         //Get number of distinct users in the members table
  136.         ResultSet rs = dbControls.query("SELECT DISTINCT userID FROM arrangement_member");
  137.         if (rs == null) {
  138.  
  139.            } else {
  140.             try {
  141.                 while (rs.next()) {
  142.                     travelcount++;
  143.                 }
  144.             } catch (SQLException e) {
  145.             }
  146.         }
  147.  
  148.         //Get number of distinct users in the arrangement table
  149.         ResultSet rs1 = dbControls.query("SELECT DISTINCT driverid FROM arrangement");
  150.         if (rs1 == null) {
  151.  
  152.         } else {
  153.             try {
  154.                 while (rs1.next()) {
  155.                     travelcount++;
  156.                 }
  157.             } catch (SQLException e) {
  158.             }
  159.         }
  160.  
  161.         //Get actual result
  162.         int result = instance.getNoOfTravellers();
  163.         //Compare actual result to the expected result
  164.         assertEquals(travelcount, result);
  165.     }
  166.  
  167.     /**
  168.      * Test of generateReport method, of class Report.
  169.      *
  170.      * Doesn't work due to not being able find if file exists!
  171.      */
  172. //    @Test
  173. //    public void testGenerateReport() {
  174. //        System.out.println("generateReport");
  175. //        Boolean exists = new Boolean(false);
  176. //
  177. //        DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
  178. //        Date date = new Date();    public void testGenerateReport() {
  179. //
  180. //        String dateString = dateFormat.format(date);
  181. //        String docName = new String("report_" + dateString + ".pdf"); //Create name for document
  182. //        File f = new File(docName);
  183. //  if(f.exists()){
  184. //        System.out.println("File existed");
  185. //                  exists = true;
  186. //    }else{
  187. //        System.out.println("File not found!");
  188. //                  exists = false;
  189. //    }
  190. //
  191. //        Report instance = new Report();
  192. //        instance.generateReport();
  193. //
  194. //        System.out.println(exists);
  195. //        assertTrue(f.exists(docName));
  196. //
  197. //        assertTrue(exists);
  198. //    }
  199.  
  200.     /**
  201.      * Test of deleteOld method, of class Report.
  202.      */
  203.     @Test
  204.     public void testDeleteOld() {
  205.         System.out.println("deleteOld");
  206.         Boolean deleted = null;
  207.         DBControls dbControls = DBControls._instance();
  208.  
  209.         //Enter in test data that is older than 1 month
  210.         ResultSet hmmm = dbControls.query("INSERT INTO arrangement (driverid, datecreated)VALUES ('test0', '2011-01-01')");
  211.         ResultSet hmmm1 = dbControls.query("INSERT INTO arrangement (driverid, datecreated)VALUES ('test1', '2010-12-02')");
  212.         ResultSet hmmm2 = dbControls.query("INSERT INTO arrangement (driverid, datecreated)VALUES ('test2', '2011-03-03')");
  213.  
  214.         //Check to see they were entered correctly
  215.         ResultSet rs = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test0'");
  216.         ResultSet rs1 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test1'");
  217.         ResultSet rs2 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test2'");
  218.  
  219.         if (rs2 == null || rs1 == null || rs == null){
  220.             System.out.println("Data was not succesfully entered");
  221.             deleted = false;
  222.         } else {
  223.  
  224.         System.out.println("Test data was entered succesfully");
  225.  
  226.         Report instance = new Report();
  227.         instance.deleteOld();
  228.  
  229.         ResultSet rs0 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test0'");
  230.         ResultSet rs10 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test1'");
  231.         ResultSet rs20 = dbControls.query("SELECT datecreated FROM arrangement WHERE driverid = 'test2'");
  232.         if (rs0 == null || rs10 == null || rs20 == null){
  233.             deleted = true;
  234.         } else{
  235.             deleted = false;
  236.         }
  237.  
  238.         assertTrue (deleted);
  239. }
  240.     }
  241. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement