+++ /dev/null
-package compbio.stat.collector;\r
-\r
-import static org.testng.Assert.assertEquals;\r
-import static org.testng.Assert.assertNotNull;\r
-\r
-import java.sql.SQLException;\r
-import java.sql.Timestamp;\r
-import java.util.Calendar;\r
-import java.util.Date;\r
-import java.util.List;\r
-\r
-import org.testng.Assert;\r
-import org.testng.annotations.BeforeClass;\r
-import org.testng.annotations.Test;\r
-\r
-import compbio.stat.servlet.util.StatCollection;\r
-import compbio.stat.servlet.util.Totals;\r
-import compbio.ws.client.Services;\r
-\r
-public class StatDBTester {\r
- StatDB statdb;\r
- Timestamp from;\r
- Timestamp to;\r
- \r
- @BeforeClass(alwaysRun=true )\r
- public void init() {\r
- try {\r
- statdb = new StatDB(true);\r
- Calendar fromCal = Calendar.getInstance();\r
- fromCal.set(2011, 4, 1);\r
- \r
- Calendar toCal = Calendar.getInstance();\r
- toCal.set(2011, 5, 1);\r
- from = new Timestamp(fromCal.getTimeInMillis());\r
- to = new Timestamp(toCal.getTimeInMillis());\r
- \r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- Assert.fail(e.getLocalizedMessage());\r
- }\r
- }\r
-\r
- /*\r
- * This test fails if run with other tests. This is likely due to the fact that StatDB \r
- * is initialised with connection to other then the test database from StatCollector class.\r
- * TODO look at this\r
- */\r
- @Test(enabled = false)\r
- public void testReadYearData() {\r
- Calendar cal = Calendar.getInstance();\r
- cal.set(2010, 4, 1);\r
- try {\r
- List<JobStat> jobs = statdb.readData(\r
- new Timestamp(cal.getTimeInMillis()), to, Services.MuscleWS, false);\r
- assertNotNull(jobs);\r
- assertEquals(jobs.size(), 1294);\r
- // statdb.shutdownDBServer();\r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- Assert.fail(e.getMessage());\r
- }\r
-\r
- }\r
-\r
- /*\r
- * This test fails if run with other tests. This is likely due to the fact that StatDB \r
- * is initialised with connection to other then the test database from StatCollector class.\r
- * TODO look at this\r
- */\r
- @Test(enabled =false)\r
- public void testReadOneMonthData() {\r
- try {\r
- List<JobStat> jobs = statdb.readData(from, to, Services.TcoffeeWS, false);\r
- assertNotNull(jobs);\r
- assertEquals(jobs.size(), 36);\r
-\r
- jobs = statdb.readData(from,to, Services.ClustalWS,false);\r
-\r
- assertNotNull(jobs);\r
- assertEquals(jobs.size(), 137);\r
-\r
- jobs = statdb.readData(from, to, Services.MafftWS,false);\r
- assertNotNull(jobs);\r
- assertEquals(jobs.size(), 136);\r
-\r
- jobs = statdb.readData(from,to, Services.ProbconsWS,false);\r
- assertNotNull(jobs);\r
- assertEquals(jobs.size(), 9);\r
-\r
- jobs = statdb.readData(from,to, Services.MuscleWS,false);\r
- assertNotNull(jobs);\r
- assertEquals(jobs.size(), 63);\r
-\r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- Assert.fail(e.getMessage());\r
- }\r
- }\r
-\r
- /*\r
- * This test fails if run with other tests. This is likely due to the fact that StatDB \r
- * is initialised with connection to other then the test database from StatCollector class.\r
- * TODO look at this\r
- */\r
- @Test(enabled=false)\r
- public void testGetEarliestRecord() {\r
- try {\r
- Date earliestRec = statdb.getEarliestRecord();\r
- \r
- assertEquals(1278543600000L, earliestRec.getTime());\r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- Assert.fail(e.getLocalizedMessage());\r
- }\r
-\r
- }\r
-\r
- @Test(sequential=true)\r
- public void testVerifyJobsCount() {\r
-\r
- try {\r
- Calendar cal = Calendar.getInstance();\r
- cal.add(Calendar.MONTH, -5);\r
- Timestamp from = new Timestamp(cal.getTimeInMillis());\r
- cal.add(Calendar.MONTH, 1);\r
- Timestamp to = new Timestamp(cal.getTimeInMillis());\r
- StatCollection sc = StatCollection.newStatCollecton(from, to);\r
- Totals t = Totals.sumStats(sc.getAllStat());\r
-\r
- //System.out.println(sc.getAllStat());\r
- \r
- assertEquals(t.getTotal(), statdb.getTotalJobsCount(from, to));\r
- assertEquals(t.getAbandoned(), statdb.getAbandonedCount(from, to));\r
- assertEquals(t.getCancelled(), statdb.getCancelledCount(from, to));\r
- assertEquals(t.getIncomplete(), statdb.getIncompleteCount(from, to));\r
-\r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- Assert.fail(e.getLocalizedMessage());\r
- }\r
-\r
- }\r
-}\r