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.YIntervalDataItem; 57 58 61 public class YIntervalDataItemTests extends TestCase { 62 63 68 public static Test suite() { 69 return new TestSuite(YIntervalDataItemTests.class); 70 } 71 72 77 public YIntervalDataItemTests(String name) { 78 super(name); 79 } 80 81 private static final double EPSILON = 0.00000000001; 82 83 86 public void testConstructor1() { 87 YIntervalDataItem item1 = new YIntervalDataItem(1.0, 2.0, 3.0, 4.0); 88 assertEquals(new Double (1.0), item1.getX()); 89 assertEquals(2.0, item1.getYValue(), EPSILON); 90 assertEquals(3.0, item1.getYLowValue(), EPSILON); 91 assertEquals(4.0, item1.getYHighValue(), EPSILON); 92 } 93 94 97 public void testEquals() { 98 YIntervalDataItem item1 = new YIntervalDataItem(1.0, 2.0, 1.5, 2.5); 99 YIntervalDataItem item2 = new YIntervalDataItem(1.0, 2.0, 1.5, 2.5); 100 assertTrue(item1.equals(item2)); 101 assertTrue(item2.equals(item1)); 102 103 item1 = new YIntervalDataItem(1.1, 2.0, 1.5, 2.5); 105 assertFalse(item1.equals(item2)); 106 item2 = new YIntervalDataItem(1.1, 2.0, 1.5, 2.5); 107 assertTrue(item1.equals(item2)); 108 109 item1 = new YIntervalDataItem(1.1, 2.2, 1.5, 2.5); 111 assertFalse(item1.equals(item2)); 112 item2 = new YIntervalDataItem(1.1, 2.2, 1.5, 2.5); 113 assertTrue(item1.equals(item2)); 114 115 item1 = new YIntervalDataItem(1.1, 2.2, 1.55, 2.5); 117 assertFalse(item1.equals(item2)); 118 item2 = new YIntervalDataItem(1.1, 2.2, 1.55, 2.5); 119 assertTrue(item1.equals(item2)); 120 121 item1 = new YIntervalDataItem(1.1, 2.2, 1.55, 2.55); 123 assertFalse(item1.equals(item2)); 124 item2 = new YIntervalDataItem(1.1, 2.2, 1.55, 2.55); 125 assertTrue(item1.equals(item2)); 126 } 127 128 131 public void testCloning() { 132 YIntervalDataItem item1 = new YIntervalDataItem(1.0, 2.0, 1.5, 2.5); 133 YIntervalDataItem item2 = null; 134 try { 135 item2 = (YIntervalDataItem) item1.clone(); 136 } 137 catch (CloneNotSupportedException e) { 138 e.printStackTrace(); 139 } 140 assertTrue(item1 != item2); 141 assertTrue(item1.getClass() == item2.getClass()); 142 assertTrue(item1.equals(item2)); 143 } 144 145 148 public void testSerialization() { 149 YIntervalDataItem item1 = new YIntervalDataItem(1.0, 2.0, 1.5, 2.5); 150 YIntervalDataItem item2 = null; 151 try { 152 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 153 ObjectOutput out = new ObjectOutputStream (buffer); 154 out.writeObject(item1); 155 out.close(); 156 157 ObjectInput in = new ObjectInputStream ( 158 new ByteArrayInputStream (buffer.toByteArray())); 159 item2 = (YIntervalDataItem) in.readObject(); 160 in.close(); 161 } 162 catch (Exception e) { 163 e.printStackTrace(); 164 } 165 assertEquals(item1, item2); 166 } 167 168 } 169 | Popular Tags |