1 7 package org.hammurapi.inspectors.metrics.statistics.tests; 8 9 import junit.framework.Test; 10 import junit.framework.TestCase; 11 import junit.framework.TestSuite; 12 13 import org.hammurapi.inspectors.metrics.statistics.DescriptiveStatistic; 14 import org.hammurapi.inspectors.metrics.statistics.IntVector; 15 16 22 public class DescriptiveStatTest extends TestCase { 23 26 public static Test suite() { 27 return new TestSuite(DescriptiveStatTest.class); 29 } 31 39 public static void main(String [] strArgsArr) throws Exception { 40 junit.textui.TestRunner.run(suite()); 41 } 43 public void testFrequency1(){ 44 IntVector sortedData = new IntVector ( ); 45 sortedData.addElement( 1 ); 46 sortedData.addElement( 1 ); 47 sortedData.addElement( 1 ); 48 sortedData.addElement( 3 ); 49 sortedData.addElement( 3 ); 50 sortedData.addElement( 5 ); 51 sortedData.addElement( 5 ); 52 sortedData.addElement( 7 ); 53 54 IntVector distinctValues = new IntVector ( ); 55 IntVector frequencies = new IntVector ( ); 56 new DescriptiveStatistic().frequencies( sortedData, distinctValues, frequencies); 57 System.out.println( frequencies ); 58 assertTrue( "", frequencies.elementAt(0) == 3 ); 59 assertTrue( "", frequencies.elementAt(1) == 2 ); 60 assertTrue( "", frequencies.elementAt(2) == 2 ); 61 assertTrue( "", frequencies.elementAt(3) == 1 ); 62 } 63 64 65 public void testFrequency2(){ 66 IntVector sortedData = new IntVector ( ); 67 sortedData.addElement( 1 ); 68 sortedData.addElement( 1 ); 69 sortedData.addElement( 1 ); 70 sortedData.addElement( 1 ); 71 sortedData.addElement( 1 ); 72 sortedData.addElement( 1 ); 73 sortedData.addElement( 1 ); 74 sortedData.addElement( 1 ); 75 76 IntVector distinctValues = new IntVector ( ); 77 IntVector frequencies = new IntVector ( ); 78 new DescriptiveStatistic().frequencies( sortedData, distinctValues, frequencies); 79 System.out.println( frequencies ); 80 assertTrue( "", frequencies.size() == 1 ); 81 assertTrue( "", frequencies.elementAt(0) == 8 ); 82 83 } 84 85 86 public void testFrequencyEmptyList(){ 87 IntVector sortedData = new IntVector ( ); 88 89 IntVector distinctValues = new IntVector ( ); 90 IntVector frequencies = new IntVector ( ); 91 new DescriptiveStatistic().frequencies( sortedData, distinctValues, frequencies); 92 System.out.println( frequencies ); 93 assertTrue( "", frequencies.isEmpty() ); 94 95 } 96 97 public void testAggregateData(){ 98 int[] numbers = { 26, 26, 26, 26, 26,42, 65,175, 387, 684, 720, 1228, 1229, 2569 }; 100 IntVector distribution = new IntVector( ); 101 IntVector distinctValues = new IntVector( ); 102 IntVector frequencies = new IntVector( ); 103 for ( int i= 0; i< numbers.length; i++){ 104 int index = numbers[i]; 105 int piv = (index / 50) *50; 107 System.out.println( index + " -> " + piv ); 108 distribution.addElement(piv); 109 } 110 System.out.println("-------------------------------------------" ); 111 112 new DescriptiveStatistic().frequencies( distribution, distinctValues, frequencies); 113 assertTrue( "frequencies.size() is "+frequencies.size(),frequencies.size()== 8 ); 114 assertTrue( "",frequencies.elementAt(0)== 6 ); 115 assertTrue( "",frequencies.elementAt(7)== 1 ); 116 assertTrue( "distinctValues.size is "+ distinctValues.size(),distinctValues.size()== 8 ); 117 assertTrue( "",distinctValues.elementAt(0)== 0 ); 118 assertTrue( "",distinctValues.elementAt(7)== 2550 ); 119 120 124 } 125 public void testSortIntVector(){ 126 int[] numbers = {684, 26, 26, 720, 1228, 26, 65,175, 387, 1229, 2569, 26, 26,42}; 128 IntVector distribution = new IntVector( numbers ); 129 distribution.sort(); 131 assertTrue( "distribution.size is "+ distribution.size(),distribution.size()== 14 ); 133 assertTrue( "",distribution.elementAt(0)== 26 ); 134 assertTrue( "",distribution.elementAt(13)== 2569 ); 135 } 136 137 public void testSumIntVector1(){ 138 IntVector sortedData = new IntVector ( ); 139 sortedData.addElement( 1 ); 140 sortedData.addElement( 1 ); 141 sortedData.addElement( 1 ); 142 sortedData.addElement( 3 ); 143 sortedData.addElement( 3 ); 144 sortedData.addElement( 5 ); 145 sortedData.addElement( 5 ); 146 sortedData.addElement( 7 ); 147 int sum = new DescriptiveStatistic().sum(sortedData); 148 assertTrue( "",sum == 26 ); 149 150 } 151 public void testSumIntVector2(){ 152 IntVector sortedData = new IntVector ( ); 153 sortedData.addElement( 1 ); 154 sortedData.addElement( 1 ); 155 sortedData.addElement( 1 ); 156 sortedData.addElement( 3 ); 157 sortedData.addElement( 3 ); 158 sortedData.addElement( 5 ); 159 sortedData.addElement( 5 ); 160 sortedData.addElement( 7 ); 161 sortedData.addElement( 1000 ); 162 int sum = new DescriptiveStatistic().sum(sortedData); 163 assertTrue( "",sum == 1026 ); 164 165 } 166 167 public void testMeanIntVector1(){ 168 IntVector sortedData = new IntVector ( ); 169 sortedData.addElement( 1 ); 170 sortedData.addElement( 1 ); 171 sortedData.addElement( 1 ); 172 sortedData.addElement( 3 ); 173 sortedData.addElement( 3 ); 174 sortedData.addElement( 5 ); 175 sortedData.addElement( 5 ); 176 sortedData.addElement( 7 ); 177 double mean = new DescriptiveStatistic().mean(sortedData); 178 assertTrue( "Mean is not xx but " + mean, mean == 3.0 ); 179 } 180 181 public void testMeanEmpytyIntVector(){ 182 IntVector sortedData = new IntVector ( ); 183 double mean = new DescriptiveStatistic().mean(sortedData); 184 assertTrue( "Mean is not xx but " + mean, mean == 0.0 ); 185 } 186 public void testMeanIntVector2(){ 187 IntVector sortedData = new IntVector ( ); 188 sortedData.addElement( 1 ); 189 sortedData.addElement( 1 ); 190 sortedData.addElement( 1 ); 191 sortedData.addElement( 3 ); 192 sortedData.addElement( 3 ); 193 sortedData.addElement( 5 ); 194 sortedData.addElement( 5 ); 195 sortedData.addElement( 7 ); 196 sortedData.addElement( 1000 ); 197 double mean = new DescriptiveStatistic().mean(sortedData); 198 assertTrue( "Mean is not xx but " + mean, mean == 114.0 ); 199 200 } 201 } 202 203 | Popular Tags |