1 //----------------------------------------------------------------------
2 //
3 // PerfectJPattern: "Design patterns are good but components are better!"
4 // TestExample.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.spring;
22
23 import java.text.*;
24
25 import junit.framework.*;
26
27 import org.slf4j.*;
28
29 import static org.easymock.EasyMock.*;
30
31 /**
32 * Spring-Hibernate Generic DAO example test suite
33 *
34 * @author <a href="mailto:bravegag@hotmail.com">Giovanni Azua</a>
35 * @version $Revision: 1.0 $Date: Apr 20, 2008 1:58:38 PM $
36 */
37 public
38 class TestExample
39 extends TestCase
40 {
41 //------------------------------------------------------------------------
42 // public
43 //------------------------------------------------------------------------
44 public void
45 testSpringGenericDao()
46 throws ParseException
47 {
48 Logger myLoggerMock = createNiceMock(Logger.class);
49 Example.setLogger(myLoggerMock);
50
51 String myLogging = LINE_BREAK +
52 "**************************************************************" +
53 LINE_BREAK +
54 "| Customer(id='2', name='Giovanni')" + LINE_BREAK +
55 "|--> Order(id='2', date='11/17/07 8:00 AM')" + LINE_BREAK +
56 "| |-> Product(id='4', name='Nikon D40x', list price='350')" +
57 LINE_BREAK +
58 "| |-> Product(id='5', name='Nikon D300', list price='2,000')" +
59 LINE_BREAK +
60 "| |-> Product(id='2', name='Nikon D700', list price='3,200')" +
61 LINE_BREAK +
62 "|--> Order(id='3', date='1/15/08 5:35 PM')" + LINE_BREAK +
63 "| |-> Product(id='1', name='Nikon 70-200mm', " +
64 "list price='1,800')" + LINE_BREAK +
65 "| |-> Product(id='6', name='Nikon 17-55mm', " +
66 "list price='1,200')" + LINE_BREAK +
67 "| |-> Product(id='3', name='Nikon 80-400mm', " +
68 "list price='1,500')" + LINE_BREAK +
69 "**************************************************************";
70
71 myLoggerMock.debug(myLogging);
72
73 replay(myLoggerMock);
74
75 Example.main(new String[0]);
76
77 verify(myLoggerMock);
78 }
79
80 //------------------------------------------------------------------------
81 // members
82 //------------------------------------------------------------------------
83 private static final String LINE_BREAK = System.getProperty(
84 "line.separator");
85 }