KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > springframework > jdbc > AbstractJdbcTests


1 /*
2  * AbstractJdbcTests.java
3  *
4  * Copyright (C) 2002 by Interprise Software. All rights reserved.
5  */

6 /*
7  * Copyright 2002-2005 the original author or authors.
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */

21
22 package org.springframework.jdbc;
23
24 import java.sql.Connection JavaDoc;
25
26 import javax.sql.DataSource JavaDoc;
27
28 import junit.framework.TestCase;
29 import org.easymock.MockControl;
30
31 /**
32  * @author Trevor D. Cook
33  */

34 public abstract class AbstractJdbcTests extends TestCase {
35
36     protected MockControl ctrlDataSource;
37     protected DataSource JavaDoc mockDataSource;
38     protected MockControl ctrlConnection;
39     protected Connection JavaDoc mockConnection;
40     
41     /**
42      * Set to true if the user wants verification, indicated
43      * by a call to replay(). We need to make this optional,
44      * otherwise we setUp() will always result in verification failures
45      */

46     private boolean shouldVerify;
47
48     protected void setUp() throws Exception JavaDoc {
49         this.shouldVerify = false;
50         super.setUp();
51
52         ctrlConnection = MockControl.createControl(Connection JavaDoc.class);
53         mockConnection = (Connection JavaDoc) ctrlConnection.getMock();
54         mockConnection.getMetaData();
55         ctrlConnection.setDefaultReturnValue(null);
56         mockConnection.close();
57         ctrlConnection.setDefaultVoidCallable();
58
59         ctrlDataSource = MockControl.createControl(DataSource JavaDoc.class);
60         mockDataSource = (DataSource JavaDoc) ctrlDataSource.getMock();
61         mockDataSource.getConnection();
62         ctrlDataSource.setDefaultReturnValue(mockConnection);
63     }
64
65     protected void replay() {
66         ctrlDataSource.replay();
67         ctrlConnection.replay();
68         this.shouldVerify = true;
69     }
70
71     protected void tearDown() throws Exception JavaDoc {
72         super.tearDown();
73
74         // we shouldn't verify unless the user called replay()
75
if (shouldVerify()) {
76             ctrlDataSource.verify();
77             ctrlConnection.verify();
78         }
79     }
80
81     protected boolean shouldVerify() {
82         return this.shouldVerify;
83     }
84
85 }
86
Popular Tags