1 22 package org.jboss.test.classloader.test; 23 24 import javax.management.MBeanException ; 25 import javax.management.ObjectName ; 26 27 import org.jboss.test.JBossTestCase; 28 import org.jboss.system.ServiceMBean; 29 30 34 public class UnifiedLoaderUnitTestCase extends JBossTestCase 35 { 36 public UnifiedLoaderUnitTestCase(String name) 37 { 38 super(name); 39 } 40 41 43 public void testClassLoadingMBean() throws Exception 44 { 45 try 46 { 47 deploy("concurrentloader.sar"); 48 ObjectName testName = new ObjectName ("jboss.test:name=ConcurrentLoader"); 49 boolean isRegistered = getServer().isRegistered(testName); 50 assertTrue(testName+" isRegistered", isRegistered); 51 Integer state = (Integer ) getServer().getAttribute(testName, "State"); 52 assertTrue("state.intValue() == ServiceMBean.STARTED", 53 state.intValue() == ServiceMBean.STARTED); 54 } 55 finally 56 { 57 undeploy("concurrentloader.sar"); 58 } } 60 63 public void testInterruptedThreads() throws Exception 64 { 65 try 66 { 67 deploy("interrupt.sar"); 68 ObjectName testName = new ObjectName ("jboss.test:name=InterruptTest"); 69 boolean isRegistered = getServer().isRegistered(testName); 70 assertTrue(testName+" isRegistered", isRegistered); 71 Integer state = (Integer ) getServer().getAttribute(testName, "State"); 72 assertTrue("state.intValue() == ServiceMBean.STARTED", 73 state.intValue() == ServiceMBean.STARTED); 74 } 75 finally 76 { 77 undeploy("interrupt.sar"); 78 } } 80 83 public void testResource() 84 throws Exception 85 { 86 try 87 { 88 deploy("loadingresource.ear"); 89 ObjectName testName = new ObjectName ("jboss.test:name=LoadingResource"); 90 boolean isRegistered = getServer().isRegistered(testName); 91 assertTrue(testName+" isRegistered", isRegistered); 92 Integer state = (Integer ) getServer().getAttribute(testName, "State"); 93 assertTrue("state.intValue() == ServiceMBean.STARTED", 94 state.intValue() == ServiceMBean.STARTED); 95 } 96 finally 97 { 98 undeploy("loadingresource.ear"); 99 } } 101 102 public void testUnpackedResources() 103 throws Exception 104 { 105 deploy("unpacked/loadingresource1.ear"); 106 deploy("unpacked/loadingresource2.ear"); 107 108 ObjectName testName = new ObjectName ("jboss.test:name=LoadingResource,version=1"); 110 boolean isRegistered = getServer().isRegistered(testName); 111 assertTrue(testName+" isRegistered", isRegistered); 112 Integer state = (Integer ) getServer().getAttribute(testName, "State"); 113 assertTrue("state.intValue() == ServiceMBean.STARTED", 114 state.intValue() == ServiceMBean.STARTED); 115 116 testName = new ObjectName ("jboss.test:name=LoadingResource,version=2"); 118 isRegistered = getServer().isRegistered(testName); 119 assertTrue(testName+" isRegistered", isRegistered); 120 state = (Integer ) getServer().getAttribute(testName, "State"); 121 assertTrue("state.intValue() == ServiceMBean.STARTED", 122 state.intValue() == ServiceMBean.STARTED); 123 124 undeploy("unpacked/loadingresource1.ear"); 125 undeploy("unpacked/loadingresource2.ear"); 126 } 127 128 public void testLoadingArrayClass() throws Exception 129 { 130 deploy("loadingclazz.sar"); 131 132 ObjectName testName = new ObjectName ("jboss.test:name=LoadingClazz"); 133 134 boolean isRegistered = getServer().isRegistered(testName); 135 136 assertTrue(testName + " is registered", isRegistered); 137 138 try 139 { 140 try 141 { 142 getServer().invoke( 143 testName, 144 "loadClass", 145 new Object [] { "[Ljava.lang.String;" }, 146 new String [] { String .class.getName()}); 147 } 148 catch (MBeanException ex) 149 { 150 Exception tex = ex.getTargetException(); 151 if (tex instanceof ClassNotFoundException ) 152 { 153 fail("java.lang.String[] not found: " + ex.getMessage()); 154 } 155 else 156 { 157 throw tex; 158 } 159 } 160 161 try 162 { 163 getServer().invoke( 164 testName, 165 "loadClassFromTCL", 166 new Object [] { "[Ljava.lang.String;" }, 167 new String [] { String .class.getName()}); 168 } 169 catch (MBeanException ex) 170 { 171 Exception tex = ex.getTargetException(); 172 if (tex instanceof ClassNotFoundException ) 173 { 174 fail( 175 "java.lang.String[] not found from TCL: " + ex.getMessage()); 176 } 177 else 178 { 179 throw tex; 180 } 181 } 182 183 try 184 { 185 getServer().invoke( 186 testName, 187 "loadClass", 188 new Object [] { "org.jboss.test.classloader.clazz.ClazzTest" }, 189 new String [] { String .class.getName()}); 190 } 191 catch (MBeanException ex) 192 { 193 Exception tex = ex.getTargetException(); 194 if (tex instanceof ClassNotFoundException ) 195 { 196 fail( 197 "org.jboss.test.classloader.clazz.ClazzTest not found: " 198 + ex.getMessage()); 199 } 200 else 201 { 202 throw tex; 203 } 204 } 205 206 try 207 { 208 getServer().invoke( 209 testName, 210 "loadClassFromTCL", 211 new Object [] { "org.jboss.test.classloader.clazz.ClazzTest" }, 212 new String [] { String .class.getName()}); 213 } 214 catch (MBeanException ex) 215 { 216 Exception tex = ex.getTargetException(); 217 if (tex instanceof ClassNotFoundException ) 218 { 219 fail( 220 "org.jboss.test.classloader.clazz.ClazzTest not found from TCL: " 221 + ex.getMessage()); 222 } 223 else 224 { 225 throw tex; 226 } 227 } 228 229 try 230 { 231 getServer().invoke( 232 testName, 233 "loadClass", 234 new Object [] { "[Lorg.jboss.test.classloader.clazz.ClazzTest;" }, 235 new String [] { String .class.getName()}); 236 } 237 catch (MBeanException ex) 238 { 239 Exception tex = ex.getTargetException(); 240 if (tex instanceof ClassNotFoundException ) 241 { 242 fail( 243 "org.jboss.test.classloader.clazz.ClazzTest[] not found: " 244 + ex.getMessage()); 245 } 246 else 247 { 248 throw tex; 249 } 250 } 251 252 try 253 { 254 getServer().invoke( 255 testName, 256 "loadClassFromTCL", 257 new Object [] { "[Lorg.jboss.test.classloader.clazz.ClazzTest;" }, 258 new String [] { String .class.getName()}); 259 } 260 catch (MBeanException ex) 261 { 262 Exception tex = ex.getTargetException(); 263 if (tex instanceof ClassNotFoundException ) 264 { 265 fail( 266 "org.jboss.test.classloader.clazz.ClazzTest[] not found from TCL: " 267 + ex.getMessage()); 268 } 269 else 270 { 271 throw tex; 272 } 273 } 274 } 275 finally 276 { 277 undeploy("loadingclazz.sar"); 278 } 279 } 280 281 protected void debug(String message) 282 { 283 getLog().debug(message); 284 } 285 } 286 | Popular Tags |