1 16 package org.apache.commons.math.stat.descriptive.moment; 17 18 import junit.framework.Test; 19 import junit.framework.TestSuite; 20 21 import org.apache.commons.math.stat.descriptive.StorelessUnivariateStatisticAbstractTest; 22 import org.apache.commons.math.stat.descriptive.UnivariateStatistic; 23 24 28 public class GeometricMeanTest extends StorelessUnivariateStatisticAbstractTest{ 29 30 protected GeometricMean stat; 31 32 35 public GeometricMeanTest(String name) { 36 super(name); 37 } 38 39 public static Test suite() { 40 TestSuite suite = new TestSuite(GeometricMeanTest.class); 41 suite.setName("Mean Tests"); 42 return suite; 43 } 44 45 48 public UnivariateStatistic getUnivariateStatistic() { 49 return new GeometricMean(); 50 } 51 52 55 public double expectedValue() { 56 return this.geoMean; 57 } 58 59 public void testSpecialValues() { 60 GeometricMean mean = new GeometricMean(); 61 assertTrue(Double.isNaN(mean.getResult())); 63 64 mean.increment(1d); 66 assertFalse(Double.isNaN(mean.getResult())); 67 68 mean.increment(0d); 70 assertEquals(0d, mean.getResult(), 0); 71 72 mean.increment(Double.POSITIVE_INFINITY); 74 assertTrue(Double.isNaN(mean.getResult())); 75 76 mean.clear(); 78 assertTrue(Double.isNaN(mean.getResult())); 79 80 mean.increment(Double.POSITIVE_INFINITY); 82 assertEquals(Double.POSITIVE_INFINITY, mean.getResult(), 0); 83 84 mean.increment(-2d); 86 assertTrue(Double.isNaN(mean.getResult())); 87 } 88 89 } 90 | Popular Tags |