Clover Coverage Report - perfectjpattern(Aggregated)
Coverage timestamp: Sat Feb 28 2009 14:35:07 CET
21   144   6   4.2
2   67   0.29   5
5     1.2  
1    
 
  TestJpaGenericReadOnlyDao       Line # 38 21 0% 6 0 100% 1.0
 
  (4)
 
1    //----------------------------------------------------------------------
2    //
3    // PerfectJPattern: "Design patterns are good but components are better!"
4    // TestJpaGenericReadOnlyDao.java Copyright (c) 2009 Giovanni Azua Garcia
5    // bravegag@hotmail.com
6    //
7    // This program is free software; you can redistribute it and/or
8    // modify it under the terms of the GNU General Public License
9    // as published by the Free Software Foundation; either version 3
10    // of the License, or (at your option) any later version.
11    //
12    // This program is distributed in the hope that it will be useful,
13    // but WITHOUT ANY WARRANTY; without even the implied warranty of
14    // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15    // GNU General Public License for more details.
16    //
17    // You should have received a copy of the GNU General Public License
18    // along with this program; if not, see <http://www.gnu.org/licenses/>.
19    //
20    //----------------------------------------------------------------------
21    package org.perfectjpattern.jee.integration.dao;
22   
23    import java.util.*;
24   
25    import junit.framework.*;
26   
27    import org.perfectjpattern.example.datamodel.*;
28    import org.perfectjpattern.jee.api.integration.dao.*;
29    import org.slf4j.*;
30   
31    /**
32    * Test Suite for the {@link JpaBaseDao} implementation.
33    *
34    * @author <a href="mailto:bravegag@hotmail.com">Giovanni Azua</a>
35    * @version $Revision: 1.0 $ $Date: Nov 26, 2007 9:29:34 PM $
36    */
37    public
 
38    class TestJpaGenericReadOnlyDao
39    extends TestCase
40    {
41    //------------------------------------------------------------------------
42    // public
43    //------------------------------------------------------------------------
 
44  1 toggle public void
45    testContains()
46    {
47    // create generic read-only Dao instance
48  1 IBaseReadOnlyDao<Long, Person> myPersonDao = JpaDaoFactory.
49    getInstance().createReadOnlyDao(Person.class);
50   
51    // contains
52  1 List<Person> myPersons = myPersonDao.findAll();
53  1 boolean myContains = myPersonDao.contains(myPersons.get(0));
54   
55    // run assertions
56  1 assertTrue("contains did not work as expected", myContains);
57    }
58   
59    //------------------------------------------------------------------------
 
60  1 toggle public void
61    testCount()
62    {
63    // create generic read-only Dao instance
64  1 IBaseReadOnlyDao<Long, Person> myPersonDao = JpaDaoFactory.
65    getInstance().createReadOnlyDao(Person.class);
66   
67    // contains
68  1 int myCount = myPersonDao.count();
69   
70    // run assertions
71  1 assertEquals("count did not work as expected", 2, myCount);
72    }
73   
74    //------------------------------------------------------------------------
 
75  1 toggle public void
76    testFindById()
77    {
78    // create generic read-only Dao instance
79  1 IBaseReadOnlyDao<Long, Person> myPersonDao = JpaDaoFactory.
80    getInstance().createReadOnlyDao(Person.class);
81   
82    // find by Id
83  1 Person myPedro = myPersonDao.findById(thePedro.getId());
84   
85    // run assertions
86  1 assertNotNull("findById did not find the expected Person", myPedro);
87  1 assertEquals("findById did not find the expected Person", "Pedro",
88    myPedro.getName());
89    }
90   
91    //------------------------------------------------------------------------
 
92  1 toggle public void
93    testFindAll()
94    {
95    // create generic read-only Dao instance
96  1 IBaseReadOnlyDao<Long, Person> myPersonDao = JpaDaoFactory.
97    getInstance().createReadOnlyDao(Person.class);
98   
99    // find All
100  1 List<Person> myPersons = myPersonDao.findAll();
101   
102    // run assertions
103  1 assertNotNull("findAll did not find the expected Persons", myPersons);
104  1 assertEquals("findAll did not find the expected Persons", 2, myPersons.
105    size());
106    }
107   
108    //------------------------------------------------------------------------
109    // protected
110    //------------------------------------------------------------------------
 
111  4 toggle @Override
112    protected void
113    setUp()
114    throws Exception
115    {
116  4 super.setUp();
117   
118    // create the two example Persons
119  4 IBaseDao<Long, Person> myPersonDao = JpaDaoFactory.
120    getInstance().createDao(Person.class);
121   
122  4 if (myPersonDao.count() == 0)
123    {
124  1 myPersonDao.create(thePedro);
125  1 myPersonDao.create(theManuela);
126   
127  1 myPersonDao.getTransaction().commit();
128    }
129    }
130   
131    //------------------------------------------------------------------------
132    // members
133    //------------------------------------------------------------------------
134    // CHECKSTYLE:OFF
135    private static final Person thePedro = new Person("Pedro", 45);
136    private static final Person theManuela = new Person("Manuela", 23);
137    // CHECKSTYLE:ON
138   
139    /**
140    * Provides logging services for this class.
141    */
142    @SuppressWarnings("unused")
143    private final Logger theLogger = LoggerFactory.getLogger(this.getClass());
144    }