1 package baseCode.math.metaanalysis;
2
3 import junit.framework.TestCase;
4 import baseCode.math.metaanalysis.CorrelationEffectMetaAnalysis;
5 import cern.colt.list.DoubleArrayList;
6
7 /***
8 * Tests based on Cooper and Hedges. Values recomputed by hand in some cases to fix roundoff error in the textbook.
9 * <hr>
10 * <p>
11 * Copyright (c) 2004 Columbia University
12 *
13 * @author pavlidis
14 * @version $Id: TestCorrelationEffectMetaAnalysis.java,v 1.2 2005/04/07 20:48:52 pavlidis Exp $
15 */
16 public class TestCorrelationEffectMetaAnalysis extends TestCase {
17
18 CorrelationEffectMetaAnalysis zf;
19 CorrelationEffectMetaAnalysis zr;
20 CorrelationEffectMetaAnalysis uf;
21 CorrelationEffectMetaAnalysis ur;
22
23 DoubleArrayList ds3n;
24 DoubleArrayList ds3r;
25
26
27
28
29 protected void setUp() throws Exception {
30 super.setUp();
31
32
33 ds3n = new DoubleArrayList( new double[] {
34 10, 20, 13, 22, 28, 12, 12, 36, 19, 12, 36, 75, 33, 121, 37, 14,
35 40, 16, 14, 20
36 } );
37
38 ds3r = new DoubleArrayList( new double[] {
39 0.68, 0.56, 0.23, 0.64, 0.49, -0.04, 0.49, 0.33, 0.58, 0.18, -0.11,
40 0.27, 0.26, 0.40, 0.49, 0.51, 0.40, 0.34, 0.42, 0.16
41 } );
42
43 zf = new CorrelationEffectMetaAnalysis( true, true );
44 zr = new CorrelationEffectMetaAnalysis( false, true );
45 uf = new CorrelationEffectMetaAnalysis( true, false );
46 ur = new CorrelationEffectMetaAnalysis( false, false );
47 }
48
49
50
51
52 protected void tearDown() throws Exception {
53 super.tearDown();
54 }
55
56 public void testRunZFVar() {
57 zf.run( ds3r, ds3n );
58 double actualReturn = zf.getV();
59 double expectedReturn = 0.0019;
60 assertEquals( "return value", expectedReturn, actualReturn, 0.001 );
61 }
62
63 public void testRunZFEffect() {
64 zf.run( ds3r, ds3n );
65 double actualReturn = zf.getE();
66 double expectedReturn = 0.379;
67 assertEquals( "return value", expectedReturn, actualReturn, 0.01 );
68 }
69
70 public void testRunZFZscore() {
71 zf.run( ds3r, ds3n );
72 double actualReturn = zf.getZ();
73 double expectedReturn = 8.748;
74 assertEquals( "return value", expectedReturn, actualReturn, 0.01 );
75 }
76
77 public void testRunUFVar() {
78 uf.run( ds3r, ds3n );
79
80 double actualReturn = uf.getV();
81 double expectedReturn = 0.00118;
82
83 assertEquals( "return value", expectedReturn, actualReturn, 0.0001 );
84 }
85
86 public void testRunUFEffect() {
87 uf.run( ds3r, ds3n );
88
89 double actualReturn = uf.getE();
90
91 double expectedReturn = 0.39779;
92 assertEquals( "return value", expectedReturn, actualReturn, 0.001 );
93 }
94
95 public void testRunUFZscore() {
96 uf.run( ds3r, ds3n );
97
98 double actualReturn = uf.getZ();
99
100 double expectedReturn = 11.56;
101 assertEquals( "return value", expectedReturn, actualReturn, 0.01 );
102 }
103
104
105 public void testRunZRQval() {
106 zr.run( ds3r, ds3n );
107 double actualReturn = zr.getQ();
108 double expectedReturn = 20.94;
109 assertEquals( "return value", expectedReturn, actualReturn, 0.1 );
110 }
111
112 public void testRunZRBSV() {
113 zr.run( ds3r, ds3n );
114 double actualReturn = zr.getBsv();
115 double expectedReturn = 0.0041;
116 assertEquals( "return value", expectedReturn, actualReturn, 0.0001 );
117 }
118
119
120
121
122
123
124
125
126
127
128
129
130 public void testRunURBSV() {
131 ur.run( ds3r, ds3n );
132 double actualReturn = ur.getBsv();
133 double expectedReturn = 0.0085;
134 assertEquals( "return value", expectedReturn, actualReturn, 0.0001 );
135 }
136
137
138
139
140
141
142
143
144 }