From 2e5610586783c5a9462c4162fa0949f1dea6d5e1 Mon Sep 17 00:00:00 2001 From: Sebastian Bazley Date: Sun, 7 Jul 2013 17:20:08 +0000 Subject: [PATCH] Turn fixed values into constants git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1500489 13f79535-47bb-0310-9956-ffa450edef68 --- .../commons/math3/stat/StatUtilsTest.java | 204 +++++++++--------- 1 file changed, 102 insertions(+), 102 deletions(-) diff --git a/src/test/java/org/apache/commons/math3/stat/StatUtilsTest.java b/src/test/java/org/apache/commons/math3/stat/StatUtilsTest.java index becc346d3..49cc5e83e 100644 --- a/src/test/java/org/apache/commons/math3/stat/StatUtilsTest.java +++ b/src/test/java/org/apache/commons/math3/stat/StatUtilsTest.java @@ -32,29 +32,29 @@ import org.junit.Test; public final class StatUtilsTest { - private double one = 1; - private float two = 2; - private int three = 3; - private double mean = 2; - private double sumSq = 18; - private double sum = 8; - private double var = 0.666666666666666666667; - private double min = 1; - private double max = 3; - private double tolerance = 10E-15; - private double nan = Double.NaN; + private static final double ONE = 1; + private static final float TWO = 2; + private static final int THREE = 3; + private static final double MEAN = 2; + private static final double SUMSQ = 18; + private static final double SUM = 8; + private static final double VAR = 0.666666666666666666667; + private static final double MIN = 1; + private static final double MAX = 3; + private static final double TOLERANCE = 10E-15; + private static final double NAN = Double.NaN; /** test stats */ @Test public void testStats() { - double[] values = new double[] { one, two, two, three }; - Assert.assertEquals("sum", sum, StatUtils.sum(values), tolerance); - Assert.assertEquals("sumsq", sumSq, StatUtils.sumSq(values), tolerance); - Assert.assertEquals("var", var, StatUtils.variance(values), tolerance); - Assert.assertEquals("var with mean", var, StatUtils.variance(values, mean), tolerance); - Assert.assertEquals("mean", mean, StatUtils.mean(values), tolerance); - Assert.assertEquals("min", min, StatUtils.min(values), tolerance); - Assert.assertEquals("max", max, StatUtils.max(values), tolerance); + double[] values = new double[] { ONE, TWO, TWO, THREE }; + Assert.assertEquals("sum", SUM, StatUtils.sum(values), TOLERANCE); + Assert.assertEquals("sumsq", SUMSQ, StatUtils.sumSq(values), TOLERANCE); + Assert.assertEquals("var", VAR, StatUtils.variance(values), TOLERANCE); + Assert.assertEquals("var with mean", VAR, StatUtils.variance(values, MEAN), TOLERANCE); + Assert.assertEquals("mean", MEAN, StatUtils.mean(values), TOLERANCE); + Assert.assertEquals("min", MIN, StatUtils.min(values), TOLERANCE); + Assert.assertEquals("max", MAX, StatUtils.max(values), TOLERANCE); } @Test @@ -68,11 +68,11 @@ public final class StatUtilsTest { "Variance of n = 0 set should be NaN", Double.isNaN(StatUtils.variance(values))); - values = new double[] { one }; + values = new double[] { ONE }; Assert.assertTrue( "Mean of n = 1 set should be value of single item n1", - StatUtils.mean(values) == one); + StatUtils.mean(values) == ONE); Assert.assertTrue( "Variance of n = 1 set should be zero", StatUtils.variance(values) == 0); @@ -135,18 +135,18 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(0, StatUtils.sumSq(x), tolerance); - TestUtils.assertEquals(0, StatUtils.sumSq(x, 0, 0), tolerance); + TestUtils.assertEquals(0, StatUtils.sumSq(x), TOLERANCE); + TestUtils.assertEquals(0, StatUtils.sumSq(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(4, StatUtils.sumSq(x), tolerance); - TestUtils.assertEquals(4, StatUtils.sumSq(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(4, StatUtils.sumSq(x), TOLERANCE); + TestUtils.assertEquals(4, StatUtils.sumSq(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(18, StatUtils.sumSq(x), tolerance); - TestUtils.assertEquals(8, StatUtils.sumSq(x, 1, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(18, StatUtils.sumSq(x), TOLERANCE); + TestUtils.assertEquals(8, StatUtils.sumSq(x, 1, 2), TOLERANCE); } @Test @@ -170,18 +170,18 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(1, StatUtils.product(x), tolerance); - TestUtils.assertEquals(1, StatUtils.product(x, 0, 0), tolerance); + TestUtils.assertEquals(1, StatUtils.product(x), TOLERANCE); + TestUtils.assertEquals(1, StatUtils.product(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(two, StatUtils.product(x), tolerance); - TestUtils.assertEquals(two, StatUtils.product(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(TWO, StatUtils.product(x), TOLERANCE); + TestUtils.assertEquals(TWO, StatUtils.product(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(12, StatUtils.product(x), tolerance); - TestUtils.assertEquals(4, StatUtils.product(x, 1, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(12, StatUtils.product(x), TOLERANCE); + TestUtils.assertEquals(4, StatUtils.product(x, 1, 2), TOLERANCE); } @Test @@ -205,18 +205,18 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(0, StatUtils.sumLog(x), tolerance); - TestUtils.assertEquals(0, StatUtils.sumLog(x, 0, 0), tolerance); + TestUtils.assertEquals(0, StatUtils.sumLog(x), TOLERANCE); + TestUtils.assertEquals(0, StatUtils.sumLog(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(FastMath.log(two), StatUtils.sumLog(x), tolerance); - TestUtils.assertEquals(FastMath.log(two), StatUtils.sumLog(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(FastMath.log(TWO), StatUtils.sumLog(x), TOLERANCE); + TestUtils.assertEquals(FastMath.log(TWO), StatUtils.sumLog(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(FastMath.log(one) + 2.0 * FastMath.log(two) + FastMath.log(three), StatUtils.sumLog(x), tolerance); - TestUtils.assertEquals(2.0 * FastMath.log(two), StatUtils.sumLog(x, 1, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(FastMath.log(ONE) + 2.0 * FastMath.log(TWO) + FastMath.log(THREE), StatUtils.sumLog(x), TOLERANCE); + TestUtils.assertEquals(2.0 * FastMath.log(TWO), StatUtils.sumLog(x, 1, 2), TOLERANCE); } @Test @@ -232,15 +232,15 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(Double.NaN, StatUtils.mean(x, 0, 0), tolerance); + TestUtils.assertEquals(Double.NaN, StatUtils.mean(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(two, StatUtils.mean(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(TWO, StatUtils.mean(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(2.5, StatUtils.mean(x, 2, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(2.5, StatUtils.mean(x, 2, 2), TOLERANCE); } @Test @@ -256,19 +256,19 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(Double.NaN, StatUtils.variance(x, 0, 0), tolerance); + TestUtils.assertEquals(Double.NaN, StatUtils.variance(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(0.0, StatUtils.variance(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(0.0, StatUtils.variance(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(0.5, StatUtils.variance(x, 2, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(0.5, StatUtils.variance(x, 2, 2), TOLERANCE); // test precomputed mean - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(0.5, StatUtils.variance(x,2.5, 2, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(0.5, StatUtils.variance(x,2.5, 2, 2), TOLERANCE); } @Test @@ -284,19 +284,19 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(Double.NaN, StatUtils.populationVariance(x, 0, 0), tolerance); + TestUtils.assertEquals(Double.NaN, StatUtils.populationVariance(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(0.0, StatUtils.populationVariance(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(0.0, StatUtils.populationVariance(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(0.25, StatUtils.populationVariance(x, 0, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(0.25, StatUtils.populationVariance(x, 0, 2), TOLERANCE); // test precomputed mean - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(0.25, StatUtils.populationVariance(x, 2.5, 2, 2), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(0.25, StatUtils.populationVariance(x, 2.5, 2, 2), TOLERANCE); } @@ -313,31 +313,31 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(Double.NaN, StatUtils.max(x, 0, 0), tolerance); + TestUtils.assertEquals(Double.NaN, StatUtils.max(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(two, StatUtils.max(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(TWO, StatUtils.max(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(three, StatUtils.max(x, 1, 3), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(THREE, StatUtils.max(x, 1, 3), TOLERANCE); // test first nan is ignored - x = new double[] {nan, two, three}; - TestUtils.assertEquals(three, StatUtils.max(x), tolerance); + x = new double[] {NAN, TWO, THREE}; + TestUtils.assertEquals(THREE, StatUtils.max(x), TOLERANCE); // test middle nan is ignored - x = new double[] {one, nan, three}; - TestUtils.assertEquals(three, StatUtils.max(x), tolerance); + x = new double[] {ONE, NAN, THREE}; + TestUtils.assertEquals(THREE, StatUtils.max(x), TOLERANCE); // test last nan is ignored - x = new double[] {one, two, nan}; - TestUtils.assertEquals(two, StatUtils.max(x), tolerance); + x = new double[] {ONE, TWO, NAN}; + TestUtils.assertEquals(TWO, StatUtils.max(x), TOLERANCE); // test all nan returns nan - x = new double[] {nan, nan, nan}; - TestUtils.assertEquals(nan, StatUtils.max(x), tolerance); + x = new double[] {NAN, NAN, NAN}; + TestUtils.assertEquals(NAN, StatUtils.max(x), TOLERANCE); } @Test @@ -353,31 +353,31 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(Double.NaN, StatUtils.min(x, 0, 0), tolerance); + TestUtils.assertEquals(Double.NaN, StatUtils.min(x, 0, 0), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(two, StatUtils.min(x, 0, 1), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(TWO, StatUtils.min(x, 0, 1), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(two, StatUtils.min(x, 1, 3), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(TWO, StatUtils.min(x, 1, 3), TOLERANCE); // test first nan is ignored - x = new double[] {nan, two, three}; - TestUtils.assertEquals(two, StatUtils.min(x), tolerance); + x = new double[] {NAN, TWO, THREE}; + TestUtils.assertEquals(TWO, StatUtils.min(x), TOLERANCE); // test middle nan is ignored - x = new double[] {one, nan, three}; - TestUtils.assertEquals(one, StatUtils.min(x), tolerance); + x = new double[] {ONE, NAN, THREE}; + TestUtils.assertEquals(ONE, StatUtils.min(x), TOLERANCE); // test last nan is ignored - x = new double[] {one, two, nan}; - TestUtils.assertEquals(one, StatUtils.min(x), tolerance); + x = new double[] {ONE, TWO, NAN}; + TestUtils.assertEquals(ONE, StatUtils.min(x), TOLERANCE); // test all nan returns nan - x = new double[] {nan, nan, nan}; - TestUtils.assertEquals(nan, StatUtils.min(x), tolerance); + x = new double[] {NAN, NAN, NAN}; + TestUtils.assertEquals(NAN, StatUtils.min(x), TOLERANCE); } @Test @@ -401,18 +401,18 @@ public final class StatUtilsTest { // test empty x = new double[] {}; - TestUtils.assertEquals(Double.NaN, StatUtils.percentile(x, 25), tolerance); - TestUtils.assertEquals(Double.NaN, StatUtils.percentile(x, 0, 0, 25), tolerance); + TestUtils.assertEquals(Double.NaN, StatUtils.percentile(x, 25), TOLERANCE); + TestUtils.assertEquals(Double.NaN, StatUtils.percentile(x, 0, 0, 25), TOLERANCE); // test one - x = new double[] {two}; - TestUtils.assertEquals(two, StatUtils.percentile(x, 25), tolerance); - TestUtils.assertEquals(two, StatUtils.percentile(x, 0, 1, 25), tolerance); + x = new double[] {TWO}; + TestUtils.assertEquals(TWO, StatUtils.percentile(x, 25), TOLERANCE); + TestUtils.assertEquals(TWO, StatUtils.percentile(x, 0, 1, 25), TOLERANCE); // test many - x = new double[] {one, two, two, three}; - TestUtils.assertEquals(2.5, StatUtils.percentile(x, 70), tolerance); - TestUtils.assertEquals(2.5, StatUtils.percentile(x, 1, 3, 62.5), tolerance); + x = new double[] {ONE, TWO, TWO, THREE}; + TestUtils.assertEquals(2.5, StatUtils.percentile(x, 70), TOLERANCE); + TestUtils.assertEquals(2.5, StatUtils.percentile(x, 1, 3, 62.5), TOLERANCE); } @Test @@ -422,10 +422,10 @@ public final class StatUtilsTest { double diff[] = {0d, -1d, -1d, 2d}; double small[] = {1d, 4d}; double meanDifference = StatUtils.meanDifference(sample1, sample2); - Assert.assertEquals(StatUtils.sumDifference(sample1, sample2), StatUtils.sum(diff), tolerance); - Assert.assertEquals(meanDifference, StatUtils.mean(diff), tolerance); + Assert.assertEquals(StatUtils.sumDifference(sample1, sample2), StatUtils.sum(diff), TOLERANCE); + Assert.assertEquals(meanDifference, StatUtils.mean(diff), TOLERANCE); Assert.assertEquals(StatUtils.varianceDifference(sample1, sample2, meanDifference), - StatUtils.variance(diff), tolerance); + StatUtils.variance(diff), TOLERANCE); try { StatUtils.meanDifference(sample1, small); Assert.fail("Expecting MathIllegalArgumentException"); @@ -507,5 +507,5 @@ public final class StatUtilsTest { Assert.assertEquals(1.0, stats.getStandardDeviation(), distance); } - + }