KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > j2ee > sun > share > configbean > EjbJarRootTest


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19 /*
20  * EjbJarRootTest.java
21  * JUnit based test
22  *
23  * Created on September 11, 2003, 10:18 AM
24  */

25
26 package org.netbeans.modules.j2ee.sun.share.configbean;
27
28 import java.util.Map JavaDoc;
29 import java.util.HashMap JavaDoc;
30
31 import javax.enterprise.deploy.spi.DConfigBean JavaDoc;
32 import javax.enterprise.deploy.spi.DConfigBeanRoot JavaDoc;
33 import javax.enterprise.deploy.spi.DeploymentConfiguration JavaDoc;
34 import javax.enterprise.deploy.spi.exceptions.ConfigurationException JavaDoc;
35 import javax.enterprise.deploy.model.DDBean JavaDoc;
36 import javax.enterprise.deploy.model.DDBeanRoot JavaDoc;
37 import junit.framework.*;
38 import org.netbeans.modules.schema2beans.BaseBean;
39
40 import org.netbeans.modules.j2ee.sun.share.configbean.customizers.ejbmodule.*;
41
42 /**
43  *
44  * @author vkraemer
45  */

46 public class EjbJarRootTest extends TestCase {
47     
48     /** Test of getDConfigBean method, of class org.netbeans.modules.j2ee.sun.share.configbean.BaseRoot. */
49     public void testGetDConfigBean() {
50         EjbJarRoot ejr = new EjbJarRoot();
51                 MockDDBeanRoot t = new MockDDBeanRoot();
52                 t.setXpath("/ejb-jar");
53                 t.setRoot(t);
54                 SunONEDeploymentConfiguration dc =
55                     new SunONEDeploymentConfiguration(null,null);
56                 try {
57                     ejr.init(t, dc, null);
58                 }
59                 catch (ConfigurationException JavaDoc ce) {
60                     fail("why did I get I get a ConfigurationException here");
61                 }
62         MockDDBean mock = new MockDDBean();
63         DConfigBean JavaDoc dcb = null;
64         try {
65             dcb = ejr.getDConfigBean(mock);
66             fail("bean with no xpath accepted");
67         }
68         catch (ConfigurationException JavaDoc ce) {
69 // assertEquals(ce.getMessage(), "No factory for xpath: \"null\"");
70
}
71         try {
72             //MockDDBeanRoot ddroot = new MockDDBeanRoot();
73
//ddroot.setXpath("/ejb-jar");
74
mock.setXpath(EjbJarRoot.SECURITY_ROLE_XPATH);
75             mock.setRoot(t);
76             DConfigBean JavaDoc dcb1 = ejr.getDConfigBean(mock);
77             assertNotNull(dcb1);
78                         assertTrue( dcb1 != dcb );
79             SecurityRoleMapping srm = (SecurityRoleMapping) dcb;
80                         mock = new MockDDBean();
81             mock.setXpath(EjbJarRoot.ENTITY_XPATH);
82             mock.setRoot(t);
83             Map JavaDoc pairs = new HashMap JavaDoc();
84             String JavaDoc retVal[] = new String JavaDoc[1];
85             retVal[0] = EntityEjbDCBFactory.BEAN;
86             pairs.put(EntityEjbDCBFactory.PERSISTENCE_TYPE_KEY, retVal);
87             mock.setText(pairs);
88             DConfigBean JavaDoc dcb2 = ejr.getDConfigBean(mock);
89             assertNotNull(dcb2);
90                         assertTrue(dcb2!=dcb1);
91             EntityEjb ent = (EntityEjb) dcb2;
92             EntityEjbCustomizer entCust = new EntityEjbCustomizer();
93             try {
94                 ent.setRefreshPeriodInSeconds("20");
95                 ent.setCommitOption("foo");
96                 ent.setIsReadOnlyBean(Boolean.FALSE);
97                 ent.setJndiName("ejb/testJNDIName");
98                 ent.setPassByReference(Boolean.FALSE);
99                 ent.setPrincipalName("PrincipalOne");
100             } catch (java.beans.PropertyVetoException JavaDoc pve) {
101                 pve.printStackTrace();
102                 fail("got an exception");
103             }
104             entCust.setObject(ent);
105             entCust.validateEntries();
106             entCust.getErrors();
107             
108                         mock = new MockDDBean();
109             mock.setXpath(EjbJarRoot.SESSION_XPATH);
110             mock.setRoot(t);
111             pairs = new HashMap JavaDoc();
112             retVal[0] = SessionEjbDCBFactory.STATELESS;
113             pairs.put(SessionEjbDCBFactory.SESSION_TYPE_KEY, retVal);
114             mock.setText(pairs);
115             DConfigBean JavaDoc dcb3 = ejr.getDConfigBean(mock);
116             assertNotNull(dcb3);
117                         assertTrue(dcb3!=dcb2);
118             StatelessEjb less = (StatelessEjb) dcb;
119             StatelessEjbCustomizer lessCust = new StatelessEjbCustomizer();
120             lessCust.setObject(less);
121             lessCust.getErrors();
122                         mock = new MockDDBean();
123             mock.setXpath(EjbJarRoot.MD_XPATH);
124             mock.setRoot(t);
125             DConfigBean JavaDoc dcb4 = ejr.getDConfigBean(mock);
126             assertNotNull(dcb4);
127                         assertTrue(dcb4!=dcb3);
128             MDEjb mdb = (MDEjb) dcb4;
129             MDEjbCustomizer mdbCust = new MDEjbCustomizer();
130             mdbCust.setObject(mdb);
131                         mock = new MockDDBean();
132             mock.setXpath(EjbJarRoot.ENTITY_XPATH);
133             mock.setRoot(t);
134             pairs = new HashMap JavaDoc();
135             retVal[0] = EntityEjbDCBFactory.CONTAINER;
136             pairs.put(EntityEjbDCBFactory.PERSISTENCE_TYPE_KEY, retVal);
137             mock.setText(pairs);
138             DConfigBean JavaDoc dcb5 = ejr.getDConfigBean(mock);
139             assertNotNull(dcb5);
140                         assertTrue(dcb2!=dcb5);
141             CmpEntityEjb cmp = (CmpEntityEjb) dcb5;
142             try {
143                 cmp.setConsistency("foo");
144                 cmp.setSchema("bar");
145                 cmp.setTableName("baz");
146             } catch (java.beans.PropertyVetoException JavaDoc pve) {
147                 pve.printStackTrace();
148                 fail("got an exception");
149             }
150             CmpEntityEjbCustomizer cmpCust = new CmpEntityEjbCustomizer();
151             cmpCust.setObject(dcb5);
152             cmpCust.getErrors();
153                         mock = new MockDDBean();
154             mock.setXpath(EjbJarRoot.SESSION_XPATH);
155             mock.setRoot(t);
156             pairs = new HashMap JavaDoc();
157             retVal[0] = SessionEjbDCBFactory.STATEFUL;
158             pairs.put(SessionEjbDCBFactory.SESSION_TYPE_KEY, retVal);
159             mock.setText(pairs);
160             DConfigBean JavaDoc dcb6 = ejr.getDConfigBean(mock);
161             assertNotNull(dcb6);
162                         assertTrue(dcb3!=dcb6);
163             StatefulEjb ful = (StatefulEjb) dcb6;
164             StatefulEjbCustomizer fulCust = new StatefulEjbCustomizer();
165             fulCust.setObject(ful);
166                         mock = new MockDDBean();
167             mock.setXpath(EjbJarRoot.SESSION_XPATH);
168             mock.setRoot(t);
169             pairs = new HashMap JavaDoc();
170             retVal[0] = "statefull";
171             pairs.put(SessionEjbDCBFactory.SESSION_TYPE_KEY, retVal);
172             mock.setText(pairs);
173                         try {
174                             DConfigBean JavaDoc dcb7 = ejr.getDConfigBean(mock);
175                             fail("illegal session-type accepted");
176                         }
177                         catch (ConfigurationException JavaDoc ce) {
178                             assertEquals("","Unknown session-type (Value: 'statefull')",ce.getMessage());
179                         }
180                         mock = new MockDDBean();
181             mock.setXpath(EjbJarRoot.ENTITY_XPATH);
182             mock.setRoot(t);
183             pairs = new HashMap JavaDoc();
184             retVal[0] = "statefull";
185             pairs.put(EntityEjbDCBFactory.PERSISTENCE_TYPE_KEY, retVal);
186             mock.setText(pairs);
187                         try {
188                             DConfigBean JavaDoc dcb8 = ejr.getDConfigBean(mock);
189                             fail("illegal session-type accepted");
190                         }
191                         catch (ConfigurationException JavaDoc ce) {
192                             assertEquals("","Unknown persistence-type (Value: 'statefull')",ce.getMessage());
193                         }
194                 }
195         catch (ConfigurationException JavaDoc ce) {
196             ce.printStackTrace();
197             fail(ce.getMessage());
198         }
199             
200     }
201     
202     public EjbJarRootTest(java.lang.String JavaDoc testName) {
203         super(testName);
204     }
205     
206 }
207
Popular Tags