1 43 44 package org.jfree.chart.renderer.xy.junit; 45 46 import java.io.ByteArrayInputStream ; 47 import java.io.ByteArrayOutputStream ; 48 import java.io.ObjectInput ; 49 import java.io.ObjectInputStream ; 50 import java.io.ObjectOutput ; 51 import java.io.ObjectOutputStream ; 52 53 import junit.framework.Test; 54 import junit.framework.TestCase; 55 import junit.framework.TestSuite; 56 57 import org.jfree.chart.JFreeChart; 58 import org.jfree.chart.axis.NumberAxis; 59 import org.jfree.chart.plot.XYPlot; 60 import org.jfree.chart.renderer.xy.XYStepAreaRenderer; 61 import org.jfree.data.xy.DefaultTableXYDataset; 62 import org.jfree.data.xy.XYSeries; 63 64 67 public class XYStepAreaRendererTests extends TestCase { 68 69 74 public static Test suite() { 75 return new TestSuite(XYStepAreaRendererTests.class); 76 } 77 78 83 public XYStepAreaRendererTests(String name) { 84 super(name); 85 } 86 87 90 public void testEquals() { 91 XYStepAreaRenderer r1 = new XYStepAreaRenderer(); 92 XYStepAreaRenderer r2 = new XYStepAreaRenderer(); 93 assertEquals(r1, r2); 94 } 95 96 99 public void testHashcode() { 100 XYStepAreaRenderer r1 = new XYStepAreaRenderer(); 101 XYStepAreaRenderer r2 = new XYStepAreaRenderer(); 102 assertTrue(r1.equals(r2)); 103 int h1 = r1.hashCode(); 104 int h2 = r2.hashCode(); 105 assertEquals(h1, h2); 106 } 107 108 111 public void testCloning() { 112 XYStepAreaRenderer r1 = new XYStepAreaRenderer(); 113 XYStepAreaRenderer r2 = null; 114 try { 115 r2 = (XYStepAreaRenderer) r1.clone(); 116 } 117 catch (CloneNotSupportedException e) { 118 System.err.println("Failed to clone."); 119 } 120 assertTrue(r1 != r2); 121 assertTrue(r1.getClass() == r2.getClass()); 122 assertTrue(r1.equals(r2)); 123 } 124 125 128 public void testSerialization() { 129 130 XYStepAreaRenderer r1 = new XYStepAreaRenderer(); 131 XYStepAreaRenderer r2 = null; 132 133 try { 134 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 135 ObjectOutput out = new ObjectOutputStream (buffer); 136 out.writeObject(r1); 137 out.close(); 138 139 ObjectInput in = new ObjectInputStream ( 140 new ByteArrayInputStream (buffer.toByteArray()) 141 ); 142 r2 = (XYStepAreaRenderer) in.readObject(); 143 in.close(); 144 } 145 catch (Exception e) { 146 System.out.println(e.toString()); 147 } 148 assertEquals(r1, r2); 149 } 150 151 155 public void testDrawWithNullInfo() { 156 boolean success = false; 157 try { 158 DefaultTableXYDataset dataset = new DefaultTableXYDataset(); 159 160 XYSeries s1 = new XYSeries("Series 1", true, false); 161 s1.add(5.0, 5.0); 162 s1.add(10.0, 15.5); 163 s1.add(15.0, 9.5); 164 s1.add(20.0, 7.5); 165 dataset.addSeries(s1); 166 167 XYSeries s2 = new XYSeries("Series 2", true, false); 168 s2.add(5.0, 5.0); 169 s2.add(10.0, 15.5); 170 s2.add(15.0, 9.5); 171 s2.add(20.0, 3.5); 172 dataset.addSeries(s2); 173 XYPlot plot = new XYPlot(dataset, 174 new NumberAxis("X"), new NumberAxis("Y"), 175 new XYStepAreaRenderer()); 176 JFreeChart chart = new JFreeChart(plot); 177 chart.createBufferedImage(300, 200, 178 null); 179 success = true; 180 } 181 catch (NullPointerException e) { 182 e.printStackTrace(); 183 success = false; 184 } 185 assertTrue(success); 186 } 187 188 } 189 | Popular Tags |