KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > test > jca > test > JDBCDriverRedeployUnitTestCase


1 /*
2   * JBoss, Home of Professional Open Source
3   * Copyright 2005, JBoss Inc., and individual contributors as indicated
4   * by the @authors tag. See the copyright.txt in the distribution for a
5   * full listing of individual contributors.
6   *
7   * This is free software; you can redistribute it and/or modify it
8   * under the terms of the GNU Lesser General Public License as
9   * published by the Free Software Foundation; either version 2.1 of
10   * the License, or (at your option) any later version.
11   *
12   * This software 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 GNU
15   * Lesser General Public License for more details.
16   *
17   * You should have received a copy of the GNU Lesser General Public
18   * License along with this software; if not, write to the Free
19   * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20   * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21   */

22 package org.jboss.test.jca.test;
23
24 import org.jboss.test.JBossTestCase;
25 import org.jboss.test.jca.interfaces.JDBCStatementTestsConnectionSession;
26 import org.jboss.test.jca.interfaces.JDBCStatementTestsConnectionSessionHome;
27
28 /**
29  * Test redeploy of jdbc driver
30  *
31  * @author <a HREF="mailto:adrian@jboss.org">Adrian Brock</a>
32  * @version
33  */

34
35 public class JDBCDriverRedeployUnitTestCase extends JBossTestCase
36 {
37    public JDBCDriverRedeployUnitTestCase(String JavaDoc name)
38    {
39       super(name);
40    }
41
42    public void testRedeploy() throws Exception JavaDoc
43    {
44       // fail("This test does not work because of class caching in java.sql.DriverManager");
45
if (1!=0) return;
46
47       doDeploy();
48       try
49       {
50          doTest();
51       }
52       finally
53       {
54          doUndeploy();
55       }
56
57       doDeploy();
58       try
59       {
60          doTest();
61       }
62       finally
63       {
64          doUndeploy();
65       }
66    }
67
68    private void doTest() throws Exception JavaDoc
69    {
70       JDBCStatementTestsConnectionSessionHome home =
71          (JDBCStatementTestsConnectionSessionHome)getInitialContext().lookup("JDBCStatementTestsConnectionSession");
72       JDBCStatementTestsConnectionSession s = home.create();
73       s.testConnectionObtainable();
74    }
75
76    private void doDeploy() throws Exception JavaDoc
77    {
78       deploy("jbosstestdriver.jar");
79       try
80       {
81          deploy("testdriver-ds.xml");
82          try
83          {
84             deploy("jcatest.jar");
85          }
86          catch (Exception JavaDoc e)
87          {
88             undeploy("testdriver-ds.xml");
89             throw e;
90          }
91       }
92       catch (Exception JavaDoc e)
93       {
94          undeploy("jbosstestdriver.jar");
95          throw e;
96       }
97    }
98
99    private void doUndeploy() throws Exception JavaDoc
100    {
101       try
102       {
103          undeploy("jcatest.jar");
104       }
105       catch (Throwable JavaDoc ignored)
106       {
107       }
108       try
109       {
110          undeploy("testdriver-ds.xml");
111       }
112       catch (Throwable JavaDoc ignored)
113       {
114       }
115       try
116       {
117          undeploy("jbosstestdriver.jar");
118       }
119       catch (Throwable JavaDoc ignored)
120       {
121       }
122    }
123 }
124
Popular Tags