1 22 package org.jboss.test.jbossmx.compliance.notcompliant; 23 24 import javax.management.MBeanServer ; 25 import javax.management.MBeanServerFactory ; 26 import javax.management.NotCompliantMBeanException ; 27 import javax.management.ObjectName ; 28 29 import org.jboss.test.jbossmx.compliance.TestCase; 30 import org.jboss.test.jbossmx.compliance.notcompliant.support.DynamicAndStandard; 31 import org.jboss.test.jbossmx.compliance.notcompliant.support.OverloadedAttribute1; 32 import org.jboss.test.jbossmx.compliance.notcompliant.support.OverloadedAttribute2; 33 import org.jboss.test.jbossmx.compliance.notcompliant.support.OverloadedAttribute3; 34 35 public class NCMBeanTestCase 36 extends TestCase 37 { 38 public NCMBeanTestCase(String s) 39 { 40 super(s); 41 } 42 43 public void testOverloadedAttribute1() 44 { 45 registerAndTest(new OverloadedAttribute1(), true); 46 } 47 48 public void testOverloadedAttribute2() 49 { 50 registerAndTest(new OverloadedAttribute2(), false); 52 } 53 54 public void testOverloadedAttribute3() 55 { 56 registerAndTest(new OverloadedAttribute3(), true); 57 } 58 59 public void testMixedDynamicStandard() 60 { 61 registerAndTest(new DynamicAndStandard(), false); 63 } 64 65 public void testNoConstructor() 66 { 67 registerAndTest(new NoConstructor(), true); 68 } 69 70 private void registerAndTest(Object mbean, boolean shouldFail) 71 { 72 try 73 { 74 MBeanServer server = MBeanServerFactory.newMBeanServer(); 75 server.registerMBean(mbean, new ObjectName ("test:foo=bar")); 76 if (shouldFail) 77 fail("expected a NotCompliantMBeanException for " + mbean.getClass().getName()); 78 } 79 catch (NotCompliantMBeanException e) 80 { 81 if (shouldFail == false) 82 fail("NotCompliantMBeanException for " + mbean.getClass().getName()); 83 } 84 catch (Exception e) 85 { 86 fail("unexpected exception when registering " + mbean.getClass().getName() + ": " + e.getMessage()); 87 } 88 } 89 } 90 | Popular Tags |