@Test
 public void testMakeStatCumulWithoutExistingData() throws Exception {
   MockConnection connexion = factory.getMockConnection();
   StatementResultSetHandler statementHandler = connexion.getStatementResultSetHandler();
   statementHandler.setExactMatch(true);
   MockResultSet result = statementHandler.createResultSet();
   result.addColumn("dateStat", new Object[] {"2011-04-17"});
   result.addColumn("fileDir", new Object[] {"/var/data/silverpeas/kmelia36"});
   result.addColumn("sizeDir", new Object[] {543L});
   statementHandler.prepareResultSet("SELECT * FROM SB_Stat_SizeDir", result);
   MockResultSet cumulResult = statementHandler.createResultSet();
   statementHandler.prepareResultSet(
       "SELECT dateStat,fileDir,sizeDir FROM SB_Stat_SizeDirCumul "
           + "WHERE dateStat='2011-04-01' AND fileDir='/var/data/silverpeas/kmelia36'",
       cumulResult);
   SilverStatisticsManagerDAO.makeStatCumul(connexion, typeofStat, config);
   module.verifyAllStatementsClosed();
   List<?> statements = module.getExecutedSQLStatements();
   assertNotNull(statements);
   assertThat(statements.size(), is(3));
   List<?> preparedStatements = module.getPreparedStatements();
   assertNotNull(preparedStatements);
   assertThat(preparedStatements, hasSize(2));
   MockPreparedStatement pstmt = module.getPreparedStatement(0);
   assertThat(
       pstmt.getSQL(),
       is(
           "UPDATE SB_Stat_SizeDirCumul SET sizeDir=?  WHERE "
               + "dateStat='2011-04-01' AND fileDir='/var/data/silverpeas/kmelia36'"));
   Map parameters = pstmt.getParameterMap();
   assertThat(parameters.size(), is(0));
   pstmt = module.getPreparedStatement(1);
   assertThat(
       pstmt.getSQL(),
       is("INSERT INTO SB_Stat_SizeDirCumul(dateStat,fileDir,sizeDir) " + "VALUES(?,?,?)"));
   parameters = pstmt.getParameterMap();
   assertThat(parameters.size(), is(3));
   assertThat((String) parameters.get(1), is("2011-04-01"));
   assertThat((String) parameters.get(2), is("/var/data/silverpeas/kmelia36"));
   assertThat((Long) parameters.get(3), is(543L));
 }
 @Test
 public void testDeleteTablesOfTheDay() throws Exception {
   MockConnection connexion = factory.getMockConnection();
   SilverStatisticsManagerDAO.deleteTablesOfTheDay(connexion, typeofStat, config);
   module.verifyAllStatementsClosed();
   List<?> statements = module.getPreparedStatements();
   assertNotNull(statements);
   assertThat(statements, hasSize(1));
   MockPreparedStatement pstmt = module.getPreparedStatement(0);
   assertThat(pstmt.getSQL(), is("DELETE FROM SB_Stat_SizeDir"));
   Map parameters = pstmt.getParameterMap();
   assertThat(parameters.size(), is(0));
 }
 @Test
 public void testPurgeTablesCumul() throws Exception {
   MockConnection connexion = factory.getMockConnection();
   SilverStatisticsManagerDAO.purgeTablesCumul(connexion, typeofStat, config);
   module.verifyAllStatementsClosed();
   Calendar calend = Calendar.getInstance();
   calend.add(Calendar.YEAR, -10);
   String date =
       SilverStatisticsManagerDAO.getRequestDate(
           calend.get(Calendar.YEAR), calend.get(Calendar.MONTH) + 1);
   List<?> statements = module.getPreparedStatements();
   assertNotNull(statements);
   assertThat(statements, hasSize(1));
   MockPreparedStatement pstmt = module.getPreparedStatement(0);
   assertThat(pstmt.getSQL(), is("DELETE FROM SB_Stat_SizeDirCumul WHERE dateStat<" + date));
   Map parameters = pstmt.getParameterMap();
   assertThat(parameters.size(), is(0));
 }
 @Test
 public void testInsertDataCumul() throws Exception {
   MockConnection connexion = factory.getMockConnection();
   List<String> data = Arrays.asList("2011-04-17", "/var/data/silverpeas/kmelia72", "262");
   SilverStatisticsManagerDAO.insertDataStatsCumul(connexion, typeofStat, data, config);
   module.verifyAllStatementsClosed();
   List<?> statements = module.getPreparedStatements();
   assertNotNull(statements);
   assertThat(statements, hasSize(1));
   MockPreparedStatement pstmt = module.getPreparedStatement(0);
   assertThat(
       pstmt.getSQL(),
       is("INSERT INTO SB_Stat_SizeDirCumul(dateStat,fileDir,sizeDir) " + "VALUES(?,?,?)"));
   Map parameters = pstmt.getParameterMap();
   assertThat(parameters.size(), is(3));
   assertThat((String) parameters.get(1), is("2011-04-01"));
   assertThat((String) parameters.get(2), is("/var/data/silverpeas/kmelia72"));
   assertThat((Long) parameters.get(3), is(262L));
 }