1 42 43 package org.jfree.experimental.chart.plot.dial.junit; 44 45 import java.awt.BasicStroke ; 46 import java.awt.Color ; 47 import java.awt.GradientPaint ; 48 import java.io.ByteArrayInputStream ; 49 import java.io.ByteArrayOutputStream ; 50 import java.io.ObjectInput ; 51 import java.io.ObjectInputStream ; 52 import java.io.ObjectOutput ; 53 import java.io.ObjectOutputStream ; 54 55 import junit.framework.Test; 56 import junit.framework.TestCase; 57 import junit.framework.TestSuite; 58 59 import org.jfree.experimental.chart.plot.dial.DialCap; 60 61 64 public class DialCapTests extends TestCase { 65 66 71 public static Test suite() { 72 return new TestSuite(DialCapTests.class); 73 } 74 75 80 public DialCapTests(String name) { 81 super(name); 82 } 83 84 87 public void testEquals() { 88 DialCap c1 = new DialCap(); 89 DialCap c2 = new DialCap(); 90 assertTrue(c1.equals(c2)); 91 92 c1.setRadius(0.5); 94 assertFalse(c1.equals(c2)); 95 c2.setRadius(0.5); 96 assertTrue(c1.equals(c2)); 97 98 c1.setFillPaint(new GradientPaint (1.0f, 2.0f, Color.blue, 100 3.0f, 4.0f, Color.green)); 101 assertFalse(c1.equals(c2)); 102 c2.setFillPaint(new GradientPaint (1.0f, 2.0f, Color.blue, 103 3.0f, 4.0f, Color.green)); 104 105 c1.setOutlinePaint(new GradientPaint (1.0f, 2.0f, Color.white, 107 3.0f, 4.0f, Color.gray)); 108 assertFalse(c1.equals(c2)); 109 c2.setOutlinePaint(new GradientPaint (1.0f, 2.0f, Color.white, 110 3.0f, 4.0f, Color.gray)); 111 112 assertTrue(c1.equals(c2)); 113 114 c1.setOutlineStroke(new BasicStroke (1.1f)); 116 assertFalse(c1.equals(c2)); 117 c2.setOutlineStroke(new BasicStroke (1.1f)); 118 assertTrue(c1.equals(c2)); 119 } 120 121 124 public void testHashCode() { 125 DialCap c1 = new DialCap(); 126 DialCap c2 = new DialCap(); 127 assertTrue(c1.equals(c2)); 128 int h1 = c1.hashCode(); 129 int h2 = c2.hashCode(); 130 assertEquals(h1, h2); 131 } 132 133 136 public void testCloning() { 137 DialCap c1 = new DialCap(); 139 DialCap c2 = null; 140 try { 141 c2 = (DialCap) c1.clone(); 142 } 143 catch (CloneNotSupportedException e) { 144 e.printStackTrace(); 145 } 146 assertTrue(c1 != c2); 147 assertTrue(c1.getClass() == c2.getClass()); 148 assertTrue(c1.equals(c2)); 149 150 c1 = new DialCap(); 152 c1.setFillPaint(new GradientPaint (1.0f, 2.0f, Color.blue, 153 3.0f, 4.0f, Color.green)); 154 c1.setOutlinePaint(new GradientPaint (1.0f, 2.0f, Color.white, 155 3.0f, 4.0f, Color.gray)); 156 c1.setOutlineStroke(new BasicStroke (2.0f)); 157 c2 = null; 158 try { 159 c2 = (DialCap) c1.clone(); 160 } 161 catch (CloneNotSupportedException e) { 162 e.printStackTrace(); 163 } 164 assertTrue(c1 != c2); 165 assertTrue(c1.getClass() == c2.getClass()); 166 assertTrue(c1.equals(c2)); 167 } 168 169 170 173 public void testSerialization() { 174 DialCap c1 = new DialCap(); 176 DialCap c2 = null; 177 178 try { 179 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 180 ObjectOutput out = new ObjectOutputStream (buffer); 181 out.writeObject(c1); 182 out.close(); 183 184 ObjectInput in = new ObjectInputStream ( 185 new ByteArrayInputStream (buffer.toByteArray())); 186 c2 = (DialCap) in.readObject(); 187 in.close(); 188 } 189 catch (Exception e) { 190 e.printStackTrace(); 191 } 192 assertEquals(c1, c2); 193 194 c1 = new DialCap(); 196 c1.setFillPaint(new GradientPaint (1.0f, 2.0f, Color.blue, 197 3.0f, 4.0f, Color.green)); 198 c1.setOutlinePaint(new GradientPaint (1.0f, 2.0f, Color.white, 199 3.0f, 4.0f, Color.gray)); 200 c1.setOutlineStroke(new BasicStroke (2.0f)); 201 c2 = null; 202 203 try { 204 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 205 ObjectOutput out = new ObjectOutputStream (buffer); 206 out.writeObject(c1); 207 out.close(); 208 209 ObjectInput in = new ObjectInputStream ( 210 new ByteArrayInputStream (buffer.toByteArray())); 211 c2 = (DialCap) in.readObject(); 212 in.close(); 213 } 214 catch (Exception e) { 215 e.printStackTrace(); 216 } 217 assertEquals(c1, c2); 218 } 219 220 } 221 | Popular Tags |