/** * Copyright (C) 2011-2013,2017 Nicolas Vinot * Copyright (C) 2017 Christian Pierre MOMON * * This file is part of (April) Hebdobot. * * Hebdobot is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Hebdobot is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with Hebdobot. If not, see */ package org.april.hebdobot.reviewstats; import java.io.File; import java.time.LocalDateTime; import org.apache.log4j.BasicConfigurator; import org.april.hebdobot.model.stats.ReviewData; import org.april.hebdobot.model.stats.ReviewDatas; import org.april.hebdobot.model.stats.ReviewDatasFile; import org.april.hebdobot.model.stats.ReviewStatsReporter; import org.junit.Before; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * The Class BotMock. */ public class ReviewStatsTest { private static final Logger logger = LoggerFactory.getLogger(ReviewStatsTest.class); @Before public void init() { BasicConfigurator.configure(); logger.info("Basic log configuration done."); } /** * Test load. * * @throws Exception * the exception */ @Test public void testLoad() throws Exception { System.out.println("================"); ReviewDatas datas = ReviewDatasFile.load(new File("resources/reviewstats.csv")); for (ReviewData data : datas) { System.out.println(data.toString()); } } /** * Test report duration. * * @throws Exception * the exception */ @Test public void testReportDuration() throws Exception { System.out.println("================"); ReviewDatas datas = ReviewDatasFile.load(new File("resources/reviewstats.csv")); datas.clean(); System.out.println("File loaded."); ReviewData currentReview = new ReviewData(LocalDateTime.now(), 12, 17); datas.add(currentReview); System.out.println(ReviewStatsReporter.reportDuration(datas, currentReview.getDuration())); } /** * Test report new max user count. * * @throws Exception * the exception */ @Test public void testReportNewMaxUserCount() throws Exception { System.out.println("================"); ReviewDatas datas = ReviewDatasFile.load(new File("resources/reviewstats.csv")); datas.clean(); System.out.println("File loaded."); ReviewData currentReview = new ReviewData(LocalDateTime.now(), 12, 17); System.out.println(ReviewStatsReporter.reportNewMaxUserCount(datas, currentReview.getUserCount())); } /** * Test report user count. * * @throws Exception * the exception */ @Test public void testReportUserCount() throws Exception { System.out.println("================"); ReviewDatas datas = ReviewDatasFile.load(new File("resources/reviewstats.csv")); datas.clean(); System.out.println("File loaded."); ReviewData currentReview = new ReviewData(LocalDateTime.now(), 12, 17); datas.add(currentReview); System.out.println(ReviewStatsReporter.reportUserCount(datas, currentReview.getUserCount())); } }