1 42 43 package org.jfree.data.xy.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.xy.XYDataItem; 57 58 61 public class XYDataItemTests extends TestCase { 62 63 68 public static Test suite() { 69 return new TestSuite(XYDataItemTests.class); 70 } 71 72 77 public XYDataItemTests(String name) { 78 super(name); 79 } 80 81 84 public void testEquals() { 85 86 XYDataItem i1 = new XYDataItem(1.0, 1.1); 87 XYDataItem i2 = new XYDataItem(1.0, 1.1); 88 assertTrue(i1.equals(i2)); 89 assertTrue(i2.equals(i1)); 90 91 i1.setY(new Double (9.9)); 92 assertFalse(i1.equals(i2)); 93 94 i2.setY(new Double (9.9)); 95 assertTrue(i1.equals(i2)); 96 97 } 98 99 102 public void testCloning() { 103 XYDataItem i1 = new XYDataItem(1.0, 1.1); 104 XYDataItem i2 = null; 105 try { 106 i2 = (XYDataItem) i1.clone(); 107 } 108 catch (CloneNotSupportedException e) { 109 System.err.println("XYDataItemTests.testCloning: failed to clone."); 110 } 111 assertTrue(i1 != i2); 112 assertTrue(i1.getClass() == i2.getClass()); 113 assertTrue(i1.equals(i2)); 114 } 115 116 119 public void testSerialization() { 120 121 XYDataItem i1 = new XYDataItem(1.0, 1.1); 122 XYDataItem i2 = null; 123 124 try { 125 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 126 ObjectOutput out = new ObjectOutputStream (buffer); 127 out.writeObject(i1); 128 out.close(); 129 130 ObjectInput in = new ObjectInputStream ( 131 new ByteArrayInputStream (buffer.toByteArray()) 132 ); 133 i2 = (XYDataItem) in.readObject(); 134 in.close(); 135 } 136 catch (Exception e) { 137 System.out.println(e.toString()); 138 } 139 assertEquals(i1, i2); 140 141 } 142 143 } 144 | Popular Tags |