/** * Copyright (C) 2008-2010, Squale Project - http://www.squale.org * * This file is part of Squale. * * Squale is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation, either version 3 of the * License, or any later version. * * Squale 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 General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with Squale. If not, see <http://www.gnu.org/licenses/>. */ package org.squale.squalecommon.daolayer.stats; import java.util.Collection; import org.squale.jraf.commons.exception.JrafDaoException; import org.squale.squalecommon.SqualeTestCase; import org.squale.squalecommon.enterpriselayer.businessobject.config.ServeurBO; import org.squale.squalecommon.enterpriselayer.businessobject.stats.SiteStatsDICTBO; /** */ public class SiteStatsDAOImplTest extends SqualeTestCase { /** le bo */ private SiteStatsDICTBO siteAndProfil; /** */ private final static int NB_APPLIS = 12; /** */ private final static int NB_APPLIS_EXEC = 5; /** */ private final static int NB_APPLIS_SUCCESSFUL = 4; /** */ private final static int NB_APPLIS_WITHOUT_AUDITS = 3; /** */ private final static int NB_APPLIS_TO_VALIDATE = 2; /** */ private final static int NB_FACTORS_ACCEPTED = 19; /** */ private final static int NB_FACTORS_ACCEPTED_RESERVES = 18; /** */ private final static int NB_FACTORS_REFUSED = 17; /** */ private final static int NB_AUDITS_FAILED = 16; /** */ private final static int NB_AUDITS_SUCCESSFULS = 15; /** */ private final static int NB_AUDITS_PARTIALS = 14; /** */ private final static int NB_AUDITS_NOT_ATTEMPTED = 13; /** */ private final static double ROI = 15.5; /** le serveur */ private ServeurBO mServer; /** * M�thode mettant en place l'environnement de test * * @throws Exception en cas d'�chec */ protected void setUp() throws Exception { super.setUp(); mServer = getComponentFactory().createServer( getSession() ); siteAndProfil = new SiteStatsDICTBO( mServer.getServeurId(), NB_APPLIS, NB_APPLIS_EXEC, NB_APPLIS_SUCCESSFUL, NB_APPLIS_WITHOUT_AUDITS, NB_APPLIS_TO_VALIDATE, NB_FACTORS_ACCEPTED, NB_FACTORS_ACCEPTED_RESERVES, NB_FACTORS_REFUSED, NB_AUDITS_FAILED, NB_AUDITS_SUCCESSFULS, NB_AUDITS_PARTIALS, NB_AUDITS_NOT_ATTEMPTED, ROI ); } /** teste la r�cup�ration par site */ public void testFindBySite() { SiteStatsDICTDAOImpl dao = SiteStatsDICTDAOImpl.getInstance(); try { // on enregistre le dao qu'on vient de cr�er getSession().beginTransaction(); dao.create( getSession(), siteAndProfil ); getSession().commitTransactionWithoutClose(); // on v�rifie qu'on peut le r�cup�rer par la m�thode findAll getSession().beginTransaction(); Collection result = dao.findAll( getSession() ); getSession().commitTransactionWithoutClose(); assertTrue( result.size() == 1 ); // on v�rifie qu'on peut le r�cup�rer par la m�thode findBySite getSession().beginTransaction(); result = dao.findBySite( getSession(), mServer.getServeurId() ); getSession().commitTransactionWithoutClose(); assertTrue( result.size() == 1 ); SiteStatsDICTBO resultBo = (SiteStatsDICTBO) result.iterator().next(); // Test sur les valeurs assertEquals( mServer.getServeurId(), resultBo.getServeurBO().getServeurId() ); // Facteurs assertEquals( resultBo.getNbOfAcceptedFactors(), NB_FACTORS_ACCEPTED ); assertEquals( resultBo.getNbOfAcceptedWithReservesFactors(), NB_FACTORS_ACCEPTED_RESERVES ); assertEquals( resultBo.getNbOfRefusedFactors(), NB_FACTORS_REFUSED ); // les applications assertEquals( resultBo.getNbTotalAppli(), NB_APPLIS ); assertEquals( resultBo.getNbTotalAppliWithAudit(), NB_APPLIS_EXEC ); assertEquals( resultBo.getNbTotalAppliWithSuccesfulAudit(), NB_APPLIS_SUCCESSFUL ); assertEquals( resultBo.getNbTotalAppliWithoutAudit(), NB_APPLIS_WITHOUT_AUDITS ); assertEquals( resultBo.getNbAppliToValidate(), NB_APPLIS_TO_VALIDATE ); // les audits assertEquals( resultBo.getNbFailedAudits(), NB_AUDITS_FAILED ); assertEquals( resultBo.getNbSuccessfulAudits(), NB_AUDITS_SUCCESSFULS ); assertEquals( resultBo.getNbPartialAudits(), NB_AUDITS_PARTIALS ); assertEquals( resultBo.getNbNotAttemptedAudit(), NB_AUDITS_NOT_ATTEMPTED ); // ROI assertTrue( resultBo.getRoi() == ROI ); // on v�rifie qu'on ne r�cup�re que celui enregistr� getSession().beginTransaction(); ServeurBO tls = getComponentFactory().createServer( getSession(), "tls" ); result = dao.findBySite( getSession(), tls.getServeurId() ); getSession().commitTransactionWithoutClose(); assertTrue( result.size() == 0 ); // on v�rifie qu'on ne r�cup�re que celui enregistr� getSession().beginTransaction(); ServeurBO qvg = getComponentFactory().createServer( getSession(), "qvg" ); result = dao.findBySite( getSession(), qvg.getServeurId() ); getSession().commitTransactionWithoutClose(); assertTrue( result.size() == 0 ); } catch ( JrafDaoException e ) { fail( "unexpected Exception" ); e.printStackTrace(); } } }