1 package org.sapia.soto.jmx; 2 3 import junit.framework.TestCase; 4 5 import java.util.List ; 6 7 import javax.management.MBeanInfo ; 8 9 10 19 public class MBeanDescriptorTest extends TestCase { 20 public MBeanDescriptorTest(String arg0) { 21 super(arg0); 22 } 23 24 public void testGetAttributeDescriptorsForName() throws Exception { 25 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 26 List attrs = desc.getAttributeDescriptorsFor("firstName", null); 27 super.assertEquals(1, attrs.size()); 28 29 AttributeDescriptor attr = (AttributeDescriptor) attrs.get(0); 30 super.assertEquals("FirstName", attr.getAttributeName()); 31 super.assertTrue(attr.getReadMethod() != null); 32 super.assertTrue(attr.getWriteMethod() == null); 33 34 attrs = desc.getAttributeDescriptorsFor("lastName", null); 35 super.assertEquals(1, attrs.size()); 36 attr = (AttributeDescriptor) attrs.get(0); 37 super.assertEquals("LastName", attr.getAttributeName()); 38 super.assertTrue(attr.getReadMethod() != null); 39 super.assertTrue(attr.getWriteMethod() != null); 40 } 41 42 public void testGetAttributeDescriptorsForPattern() throws Exception { 43 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 44 List attrs = desc.getAttributeDescriptorsFor("*Name", null); 45 super.assertEquals(3, attrs.size()); 46 } 47 48 public void testGetAttributeDescriptorsForType() throws Exception { 49 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 50 List attrs = desc.getAttributeDescriptorsFor("*name", 51 "java.lang.StringBuffer"); 52 super.assertEquals(1, attrs.size()); 53 } 54 55 public void testRemoveAttributeDescriptorsForName() throws Exception { 56 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 57 desc.removeAttributeDescriptorsFor("firstName", null); 58 59 List attrs = desc.getAttributeDescriptorsFor("firstName", null); 60 super.assertEquals(0, attrs.size()); 61 } 62 63 public void testRemoveAttributeDescriptorsForPattern() 64 throws Exception { 65 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 66 desc.removeAttributeDescriptorsFor("*Name", null); 67 68 List attrs = desc.getAttributeDescriptorsFor("*Name", null); 69 super.assertEquals(0, attrs.size()); 70 } 71 72 public void testRemoveAttributeDescriptorsForType() throws Exception { 73 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 74 desc.removeAttributeDescriptorsFor("*name", "java.lang.StringBuffer"); 75 76 List attrs = desc.getAttributeDescriptorsFor("*name", null); 77 super.assertEquals(2, attrs.size()); 78 } 79 80 public void testGetOperationDescriptorsForName() throws Exception { 81 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 82 List ops = desc.getOperationDescriptorsFor("incrementAge", null); 83 super.assertEquals(1, ops.size()); 84 85 OperationDescriptor op = (OperationDescriptor) ops.get(0); 86 super.assertEquals("incrementAge", op.getOperationName()); 87 super.assertEquals(1, op.getParameters().size()); 88 } 89 90 public void testGetOperationDescriptorsForPattern() throws Exception { 91 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 92 List ops = desc.getOperationDescriptorsFor("increment*", null); 93 super.assertEquals(2, ops.size()); 94 } 95 96 public void testGetOperationDescriptorsForType() throws Exception { 97 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 98 List ops = desc.getOperationDescriptorsFor("increment*", 99 new String [] { "long" }); 100 super.assertEquals(1, ops.size()); 101 } 102 103 public void testGetMBeanInfo() throws Exception { 104 MBeanDescriptor desc = MBeanDescriptor.newInstanceFor(new TestBean()); 105 desc.init(); 106 107 MBeanInfo info = desc.getMBeanInfo(); 108 super.assertEquals(2, info.getOperations().length); 109 super.assertEquals(4, info.getAttributes().length); 110 } 111 } 112 | Popular Tags |