KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > commons > math > stat > descriptive > StatisticalSummaryValuesTest


1 /*
2  * Copyright 2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.apache.commons.math.stat.descriptive;
17
18
19 import junit.framework.Test;
20 import junit.framework.TestCase;
21 import junit.framework.TestSuite;
22
23 import org.apache.commons.math.TestUtils;
24 /**
25  * Test cases for the {@link StatisticalSummaryValues} class.
26  *
27  * @version $Revision$ $Date: 2005-02-26 05:11:52 -0800 (Sat, 26 Feb 2005) $
28  */

29
30 public final class StatisticalSummaryValuesTest extends TestCase {
31     
32     
33     public StatisticalSummaryValuesTest(String JavaDoc name) {
34         super(name);
35     }
36     
37     public void setUp() {
38     }
39     
40     public static Test suite() {
41         TestSuite suite = new TestSuite(StatisticalSummaryValuesTest.class);
42         suite.setName("StatisticalSummaryValues Tests");
43         return suite;
44     }
45       
46     public void testSerialization() {
47         StatisticalSummaryValues u = new StatisticalSummaryValues(1, 2, 3, 4, 5, 6);
48         TestUtils.checkSerializedEquality(u);
49         StatisticalSummaryValues t = (StatisticalSummaryValues) TestUtils.serializeAndRecover(u);
50         verifyEquality(u, t);
51     }
52     
53     public void testEqualsAndHashCode() {
54         StatisticalSummaryValues u = new StatisticalSummaryValues(1, 2, 3, 4, 5, 6);
55         StatisticalSummaryValues t = null;
56         int emptyHash = u.hashCode();
57         assertTrue("reflexive", u.equals(u));
58         assertFalse("non-null compared to null", u.equals(t));
59         assertFalse("wrong type", u.equals(new Double JavaDoc(0)));
60         t = new StatisticalSummaryValues(1, 2, 3, 4, 5, 6);
61         assertTrue("instances with same data should be equal", t.equals(u));
62         assertEquals("hash code", u.hashCode(), t.hashCode());
63         
64         u = new StatisticalSummaryValues(Double.NaN, 2, 3, 4, 5, 6);
65         t = new StatisticalSummaryValues(1, Double.NaN, 3, 4, 5, 6);
66         assertFalse("instances based on different data should be different",
67                 (u.equals(t) ||t.equals(u)));
68     }
69     
70     private void verifyEquality(StatisticalSummaryValues s, StatisticalSummaryValues u) {
71         assertEquals("N",s.getN(),u.getN());
72         TestUtils.assertEquals("sum",s.getSum(),u.getSum(), 0);
73         TestUtils.assertEquals("var",s.getVariance(),u.getVariance(), 0);
74         TestUtils.assertEquals("std",s.getStandardDeviation(),u.getStandardDeviation(), 0);
75         TestUtils.assertEquals("mean",s.getMean(),u.getMean(), 0);
76         TestUtils.assertEquals("min",s.getMin(),u.getMin(), 0);
77         TestUtils.assertEquals("max",s.getMax(),u.getMax(), 0);
78     }
79 }
80
Popular Tags