1 4 package org.oddjob.jmx; 5 6 import java.io.ByteArrayInputStream ; 7 import java.io.ByteArrayOutputStream ; 8 import java.io.IOException ; 9 import java.io.ObjectInputStream ; 10 import java.io.ObjectOutputStream ; 11 import java.util.HashMap ; 12 import java.util.Map ; 13 14 import org.apache.commons.beanutils.DynaProperty; 15 import org.oddjob.framework.WrapDynaClass; 16 17 import junit.framework.TestCase; 18 19 public class WrapDynaClassTest extends TestCase { 20 21 public class Bean { 22 public String getFruit() { return "apples"; } 23 } 24 25 public void testSerialize() throws IOException , ClassNotFoundException { 26 27 WrapDynaClass dc = WrapDynaClass.createDynaClass(Bean.class); 28 29 ByteArrayOutputStream out = new ByteArrayOutputStream (); 30 ObjectOutputStream oos = new ObjectOutputStream (out); 31 32 oos.writeObject(dc); 33 34 ByteArrayInputStream in = new ByteArrayInputStream (out.toByteArray()); 35 ObjectInputStream ois = new ObjectInputStream (in); 36 37 WrapDynaClass dc2 = (WrapDynaClass) ois.readObject(); 38 39 Map props = new HashMap (); 40 DynaProperty[] dps = dc2.getDynaProperties(); 41 for (int i = 0; i < dps.length; ++i) { 42 props.put(dps[i].getName(), dps[i].getType()); 43 } 44 assertEquals(String .class, props.get("fruit")); 45 } 46 } 47 | Popular Tags |