1 42 43 package org.jfree.data.junit; 44 45 import java.io.ByteArrayInputStream ; 46 import java.io.ByteArrayOutputStream ; 47 import java.io.ObjectInput ; 48 import java.io.ObjectInputStream ; 49 import java.io.ObjectOutput ; 50 import java.io.ObjectOutputStream ; 51 52 import junit.framework.Test; 53 import junit.framework.TestCase; 54 import junit.framework.TestSuite; 55 56 import org.jfree.data.KeyedObjects2D; 57 58 61 public class KeyedObjects2DTests extends TestCase { 62 63 68 public static Test suite() { 69 return new TestSuite(KeyedObjects2DTests.class); 70 } 71 72 77 public KeyedObjects2DTests(String name) { 78 super(name); 79 } 80 81 84 public void testCloning() { 85 KeyedObjects2D o1 = new KeyedObjects2D(); 86 o1.setObject(new Integer (1), "V1", "C1"); 87 o1.setObject(null, "V2", "C1"); 88 o1.setObject(new Integer (3), "V3", "C2"); 89 KeyedObjects2D o2 = null; 90 try { 91 o2 = (KeyedObjects2D) o1.clone(); 92 } 93 catch (CloneNotSupportedException e) { 94 System.err.println("Failed to clone."); 95 } 96 assertTrue(o1 != o2); 97 assertTrue(o1.getClass() == o2.getClass()); 98 assertTrue(o1.equals(o2)); 99 } 100 101 104 public void testSerialization() { 105 106 KeyedObjects2D ko2D1 = new KeyedObjects2D(); 107 ko2D1.addObject(new Double (234.2), "Row1", "Col1"); 108 ko2D1.addObject(null, "Row1", "Col2"); 109 ko2D1.addObject(new Double (345.9), "Row2", "Col1"); 110 ko2D1.addObject(new Double (452.7), "Row2", "Col2"); 111 112 KeyedObjects2D ko2D2 = null; 113 114 try { 115 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 116 ObjectOutput out = new ObjectOutputStream (buffer); 117 out.writeObject(ko2D1); 118 out.close(); 119 120 ObjectInput in = new ObjectInputStream ( 121 new ByteArrayInputStream (buffer.toByteArray()) 122 ); 123 ko2D2 = (KeyedObjects2D) in.readObject(); 124 in.close(); 125 } 126 catch (Exception e) { 127 System.out.println(e.toString()); 128 } 129 assertEquals(ko2D1, ko2D2); 130 131 } 132 133 } 134 | Popular Tags |