You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sr...@apache.org on 2010/09/03 14:28:41 UTC

svn commit: r992277 [6/9] - in /mahout/trunk: core/src/main/java/org/apache/mahout/ep/ core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ core/src/test/java/org/apache/mahout/cf/taste/common/ core/src/test/java/org/apache/mahout/cf/taste/hadoop/ core/...

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/TestRowSimilarityJob.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/TestRowSimilarityJob.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/TestRowSimilarityJob.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/TestRowSimilarityJob.java Fri Sep  3 12:28:34 2010
@@ -42,15 +42,17 @@ import org.apache.mahout.math.hadoop.sim
 import org.apache.mahout.math.hadoop.similarity.vector.DistributedVectorSimilarity;
 import org.easymock.IArgumentMatcher;
 import org.easymock.classextension.EasyMock;
+import org.junit.Test;
 
 /**
  * tests {@link RowSimilarityJob}
  */
-public class TestRowSimilarityJob extends MahoutTestCase {
+public final class TestRowSimilarityJob extends MahoutTestCase {
 
   /**
    * Tests {@link RowSimilarityJob.RowWeightMapper}
    */
+  @Test
   public void testRowWeightMapper() throws Exception {
     Mapper<IntWritable,VectorWritable,VarIntWritable,WeightedOccurrence>.Context context =
       EasyMock.createMock(Mapper.Context.class);
@@ -75,6 +77,7 @@ public class TestRowSimilarityJob extend
   /**
    * Tests {@link RowSimilarityJob.WeightedOccurrencesPerColumnReducer}
    */
+  @Test
   public void testWeightedOccurrencesPerColumnReducer() throws Exception {
 
     List<WeightedOccurrence> weightedOccurrences = Arrays.asList(new WeightedOccurrence(45, 0.5, 1.0),
@@ -126,6 +129,7 @@ public class TestRowSimilarityJob extend
   /**
    * Tests {@link RowSimilarityJob.CooccurrencesMapper}
    */
+  @Test
   public void testCooccurrencesMapper() throws Exception {
     Mapper<VarIntWritable,WeightedOccurrenceArray,WeightedRowPair,Cooccurrence>.Context context =
       EasyMock.createMock(Mapper.Context.class);
@@ -147,6 +151,7 @@ public class TestRowSimilarityJob extend
   /**
    * Tests {@link SimilarityReducer}
    */
+  @Test
   public void testSimilarityReducer() throws Exception {
 
     Reducer<WeightedRowPair,Cooccurrence,SimilarityMatrixEntryKey,MatrixEntryWritable>.Context context =
@@ -172,6 +177,7 @@ public class TestRowSimilarityJob extend
    * Tests {@link SimilarityReducer} in the special case of computing the similarity of a row to
    * itself
    */
+  @Test
   public void testSimilarityReducerSelfSimilarity() throws Exception {
 
     Reducer<WeightedRowPair,Cooccurrence,SimilarityMatrixEntryKey,MatrixEntryWritable>.Context context =
@@ -193,6 +199,7 @@ public class TestRowSimilarityJob extend
   /**
    * Tests {@link EntriesToVectorsReducer}
    */
+  @Test
   public void testEntriesToVectorsReducer() throws Exception {
     Reducer<SimilarityMatrixEntryKey,MatrixEntryWritable,IntWritable,VectorWritable>.Context context =
       EasyMock.createMock(Reducer.Context.class);
@@ -230,6 +237,7 @@ public class TestRowSimilarityJob extend
    * 0,     0,     1
    * </pre>
    */
+  @Test
   public void testSmallSampleMatrix() throws Exception {
 
     File inputFile = getTestTempFile("rows");
@@ -264,14 +272,14 @@ public class TestRowSimilarityJob extend
     assertEquals(3, similarityMatrix.numCols());
     assertEquals(3, similarityMatrix.numRows());
 
-    assertEquals(1.0, similarityMatrix.get(0, 0));
-    assertEquals(1.0, similarityMatrix.get(1, 1));
-    assertEquals(1.0, similarityMatrix.get(2, 2));
-
-    assertEquals(0.0, similarityMatrix.get(2, 0));
-    assertEquals(0.0, similarityMatrix.get(2, 1));
-    assertEquals(0.0, similarityMatrix.get(0, 2));
-    assertEquals(0.0, similarityMatrix.get(1, 2));
+    assertEquals(1.0, similarityMatrix.get(0, 0), EPSILON);
+    assertEquals(1.0, similarityMatrix.get(1, 1), EPSILON);
+    assertEquals(1.0, similarityMatrix.get(2, 2), EPSILON);
+
+    assertEquals(0.0, similarityMatrix.get(2, 0), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(2, 1), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(0, 2), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(1, 2), EPSILON);
 
     assertEquals(0.6666, similarityMatrix.get(0, 1), 0.0001);
     assertEquals(0.6666, similarityMatrix.get(1, 0), 0.0001);
@@ -319,6 +327,7 @@ public class TestRowSimilarityJob extend
    * r3 --> r1
    * </pre>
    */
+  @Test
   public void testLimitEntriesInSimilarityMatrix() throws Exception {
 
     File inputFile = getTestTempFile("rows");
@@ -354,17 +363,17 @@ public class TestRowSimilarityJob extend
     assertEquals(3, similarityMatrix.numCols());
     assertEquals(3, similarityMatrix.numRows());
 
-    assertEquals(0.0, similarityMatrix.get(0, 0));
-    assertEquals(0.5, similarityMatrix.get(0, 1));
-    assertEquals(0.0, similarityMatrix.get(0, 2));
-
-    assertEquals(0.5, similarityMatrix.get(1, 0));
-    assertEquals(0.0, similarityMatrix.get(1, 1));
-    assertEquals(0.0, similarityMatrix.get(1, 2));
-
-    assertEquals(0.4, similarityMatrix.get(2, 0));
-    assertEquals(0.0, similarityMatrix.get(2, 1));
-    assertEquals(0.0, similarityMatrix.get(2, 2));
+    assertEquals(0.0, similarityMatrix.get(0, 0), EPSILON);
+    assertEquals(0.5, similarityMatrix.get(0, 1), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(0, 2), EPSILON);
+
+    assertEquals(0.5, similarityMatrix.get(1, 0), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(1, 1), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(1, 2), EPSILON);
+
+    assertEquals(0.4, similarityMatrix.get(2, 0), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(2, 1), EPSILON);
+    assertEquals(0.0, similarityMatrix.get(2, 2), EPSILON);
   }
 
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedEuclideanDistanceVectorSimilarityTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedEuclideanDistanceVectorSimilarityTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedEuclideanDistanceVectorSimilarityTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedEuclideanDistanceVectorSimilarityTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,15 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import org.junit.Test;
+
 /**
  * tests {@link DistributedEuclideanDistanceVectorSimilarity}
  */
-public class DistributedEuclideanDistanceVectorSimilarityTest extends
+public final class DistributedEuclideanDistanceVectorSimilarityTest extends
     DistributedVectorSimilarityTestCase {
 
+  @Test
   public void testEuclideanDistance() throws Exception {
 
     assertSimilar(new DistributedEuclideanDistanceVectorSimilarity(),

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedLoglikelihoodVectorSimilarityTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedLoglikelihoodVectorSimilarityTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedLoglikelihoodVectorSimilarityTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedLoglikelihoodVectorSimilarityTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,15 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import org.junit.Test;
+
 /**
  * tests {@link DistributedLoglikelihoodVectorSimilarity}
  */
-public class DistributedLoglikelihoodVectorSimilarityTest
+public final class DistributedLoglikelihoodVectorSimilarityTest
     extends DistributedVectorSimilarityTestCase {
 
+  @Test
   public void testLoglikelihood() throws Exception {
     assertSimilar(new DistributedLoglikelihoodVectorSimilarity(),
         asVector(1, 1, 0, 1, 0),

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedPearsonCorrelationVectorSimilarityTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedPearsonCorrelationVectorSimilarityTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedPearsonCorrelationVectorSimilarityTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedPearsonCorrelationVectorSimilarityTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,15 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import org.junit.Test;
+
 /**
  * tests {@link DistributedPearsonCorrelationVectorSimilarity}
  */
-public class DistributedPearsonCorrelationVectorSimilarityTest
+public final class DistributedPearsonCorrelationVectorSimilarityTest
     extends DistributedVectorSimilarityTestCase {
 
+  @Test
   public void testPearsonCorrelation() throws Exception {
     assertSimilar(new DistributedPearsonCorrelationVectorSimilarity(),
         asVector(3, -2),

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedTanimotoCoefficientVectorSimilarityTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedTanimotoCoefficientVectorSimilarityTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedTanimotoCoefficientVectorSimilarityTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedTanimotoCoefficientVectorSimilarityTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,15 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import org.junit.Test;
+
 /**
  * tests {@link DistributedTanimotoCoefficientVectorSimilarity}
  */
-public class DistributedTanimotoCoefficientVectorSimilarityTest extends
+public final class DistributedTanimotoCoefficientVectorSimilarityTest extends
     DistributedVectorSimilarityTestCase {
 
+  @Test
   public void testTanimoto() throws Exception {
 
     assertSimilar(new DistributedTanimotoCoefficientVectorSimilarity(),

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredCosineVectorSimilarityTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredCosineVectorSimilarityTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredCosineVectorSimilarityTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredCosineVectorSimilarityTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,15 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import org.junit.Test;
+
 /**
  * tests {@link DistributedUncenteredCosineVectorSimilarity}
  */
-public class DistributedUncenteredCosineVectorSimilarityTest
+public final class DistributedUncenteredCosineVectorSimilarityTest
     extends DistributedVectorSimilarityTestCase {
 
+  @Test
   public void testUncenteredCosineSimilarity() throws Exception {
 
     assertSimilar(new DistributedUncenteredCosineVectorSimilarity(),
@@ -39,7 +42,7 @@ public class DistributedUncenteredCosine
 
     assertSimilar(new DistributedUncenteredCosineVectorSimilarity(),
         asVector(1, 1, 2),
-        asVector(3, 5, 0), 3, 0.970142);
+        asVector(3, 5, 0), 3, 0.9701425);
   }
 
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredZeroAssumingCosineVectorSimilarityTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredZeroAssumingCosineVectorSimilarityTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredZeroAssumingCosineVectorSimilarityTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedUncenteredZeroAssumingCosineVectorSimilarityTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,15 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import org.junit.Test;
+
 /**
  * tests {@link DistributedUncenteredZeroAssumingCosineVectorSimilarity}
  */
-public class DistributedUncenteredZeroAssumingCosineVectorSimilarityTest
+public final class DistributedUncenteredZeroAssumingCosineVectorSimilarityTest
     extends DistributedVectorSimilarityTestCase {
 
+  @Test
   public void testUncenteredZeroAssumingCosine() throws Exception {
     assertSimilar(new DistributedUncenteredZeroAssumingCosineVectorSimilarity(),
         asVector(0, 0, 0, 0, 1),

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedVectorSimilarityTestCase.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedVectorSimilarityTestCase.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedVectorSimilarityTestCase.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/similarity/vector/DistributedVectorSimilarityTestCase.java Fri Sep  3 12:28:34 2010
@@ -17,13 +17,12 @@
 
 package org.apache.mahout.math.hadoop.similarity.vector;
 
+import java.util.Collection;
 import java.util.LinkedList;
-import java.util.List;
 
+import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.DenseVector;
-import org.apache.mahout.math.MahoutTestCase;
 import org.apache.mahout.math.Vector;
-import org.apache.mahout.math.hadoop.MathHelper;
 import org.apache.mahout.math.hadoop.similarity.Cooccurrence;
 import org.apache.mahout.math.hadoop.similarity.RowSimilarityJob;
 
@@ -42,12 +41,6 @@ public abstract class DistributedVectorS
   /**
    * @see DistributedVectorSimilarityTestCase#assertSimilar(DistributedVectorSimilarity, int, int, Vector, Vector,
    * int, double)
-   *
-   * @param similarity
-   * @param v1
-   * @param v2
-   * @param numberOfColumns
-   * @param expectedSimilarity
    */
   static void assertSimilar(DistributedVectorSimilarity similarity, Vector v1, Vector v2, int numberOfColumns,
       double expectedSimilarity) {
@@ -56,14 +49,6 @@ public abstract class DistributedVectorS
 
   /**
    * emulates the way similarities are computed by {@link RowSimilarityJob}
-   *
-   * @param similarity
-   * @param rowA
-   * @param rowB
-   * @param v1
-   * @param v2
-   * @param numberOfColumns
-   * @param expectedSimilarity
    */
   static void assertSimilar(DistributedVectorSimilarity similarity, int rowA, int rowB, Vector v1, Vector v2,
       int numberOfColumns, double expectedSimilarity) {
@@ -71,7 +56,7 @@ public abstract class DistributedVectorS
     double weightA = similarity.weight(v1);
     double weightB = similarity.weight(v2);
 
-    List<Cooccurrence> cooccurrences = new LinkedList<Cooccurrence>();
+    Collection<Cooccurrence> cooccurrences = new LinkedList<Cooccurrence>();
     for (int n = 0; n < numberOfColumns; n++) {
       double valueA = v1.get(n);
       double valueB = v2.get(n);
@@ -81,6 +66,6 @@ public abstract class DistributedVectorS
     }
 
     double result = similarity.similarity(rowA, rowB, cooccurrences, weightA, weightB, numberOfColumns);
-    assertEquals(expectedSimilarity, result, MathHelper.EPSILON);
+    assertEquals(expectedSimilarity, result, EPSILON);
   }
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,13 @@
 
 package org.apache.mahout.math.stats;
 
-import org.junit.Assert;
+import org.apache.mahout.common.MahoutTestCase;
 import org.junit.Test;
 
 import java.util.Random;
 
-public class OnlineAucTest {
+public final class OnlineAucTest extends MahoutTestCase {
+
   @Test
   public void testBinaryCase() {
     OnlineAuc a1 = new OnlineAuc();
@@ -53,8 +54,8 @@ public class OnlineAucTest {
     }
 
     // reference value computed using R: mean(rnorm(1000000) < rnorm(1000000,1))
-    Assert.assertEquals(1 - 0.76, a1.auc(), 0.05);
-    Assert.assertEquals(1 - 0.76, a2.auc(), 0.05);
-    Assert.assertEquals(1 - 0.76, a3.auc(), 0.05);
+    assertEquals(1 - 0.76, a1.auc(), 0.05);
+    assertEquals(1 - 0.76, a2.auc(), 0.05);
+    assertEquals(1 - 0.76, a3.auc(), 0.05);
   }
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/vectors/ContinuousValueEncoderTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/vectors/ContinuousValueEncoderTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/vectors/ContinuousValueEncoderTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/vectors/ContinuousValueEncoderTest.java Fri Sep  3 12:28:34 2010
@@ -17,62 +17,63 @@
 
 package org.apache.mahout.vectors;
 
+import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.Vector;
-import org.junit.Assert;
 import org.junit.Test;
 
-public class ContinuousValueEncoderTest {
+public final class ContinuousValueEncoderTest extends MahoutTestCase {
+  
   @Test
   public void testAddToVector() {
     FeatureVectorEncoder enc = new ContinuousValueEncoder("foo");
     Vector v1 = new DenseVector(20);
     enc.addToVector("-123", v1);
-    Assert.assertEquals(-123, v1.minValue(), 0);
-    Assert.assertEquals(0, v1.maxValue(), 0);
-    Assert.assertEquals(123, v1.norm(1), 0);
+    assertEquals(-123, v1.minValue(), 0);
+    assertEquals(0, v1.maxValue(), 0);
+    assertEquals(123, v1.norm(1), 0);
 
     v1 = new DenseVector(20);
     enc.addToVector("123", v1);
-    Assert.assertEquals(123, v1.maxValue(), 0);
-    Assert.assertEquals(0, v1.minValue(), 0);
-    Assert.assertEquals(123, v1.norm(1), 0);
+    assertEquals(123, v1.maxValue(), 0);
+    assertEquals(0, v1.minValue(), 0);
+    assertEquals(123, v1.norm(1), 0);
 
     Vector v2 = new DenseVector(20);
     enc.setProbes(2);
     enc.addToVector("123", v2);
-    Assert.assertEquals(123, v2.maxValue(), 0);
-    Assert.assertEquals(2 * 123, v2.norm(1), 0);
+    assertEquals(123, v2.maxValue(), 0);
+    assertEquals(2 * 123, v2.norm(1), 0);
 
     v1 = v2.minus(v1);
-    Assert.assertEquals(123, v1.maxValue(), 0);
-    Assert.assertEquals(123, v1.norm(1), 0);
+    assertEquals(123, v1.maxValue(), 0);
+    assertEquals(123, v1.norm(1), 0);
 
     Vector v3 = new DenseVector(20);
     enc.setProbes(2);
     enc.addToVector("100", v3);
     v1 = v2.minus(v3);
-    Assert.assertEquals(23, v1.maxValue(), 0);
-    Assert.assertEquals(2 * 23, v1.norm(1), 0);
+    assertEquals(23, v1.maxValue(), 0);
+    assertEquals(2 * 23, v1.norm(1), 0);
 
     enc.addToVector("7", v1);
-    Assert.assertEquals(30, v1.maxValue(), 0);
-    Assert.assertEquals(2 * 30, v1.norm(1), 0);
-    Assert.assertEquals(30, v1.get(10), 0);
-    Assert.assertEquals(30, v1.get(18), 0);
+    assertEquals(30, v1.maxValue(), 0);
+    assertEquals(2 * 30, v1.norm(1), 0);
+    assertEquals(30, v1.get(10), 0);
+    assertEquals(30, v1.get(18), 0);
 
     try {
       enc.addToVector("foobar", v1);
-      Assert.fail("Should have noticed bad numeric format");
+      fail("Should have noticed bad numeric format");
     } catch (NumberFormatException e) {
-      Assert.assertEquals("For input string: \"foobar\"", e.getMessage());
+      assertEquals("For input string: \"foobar\"", e.getMessage());
     }
   }
 
   @Test
   public void testAsString() {
     ContinuousValueEncoder enc = new ContinuousValueEncoder("foo");
-    Assert.assertEquals("foo:123", enc.asString("123"));
+    assertEquals("foo:123", enc.asString("123"));
   }
 
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/vectors/InteractionValueEncoderTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/vectors/InteractionValueEncoderTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/vectors/InteractionValueEncoderTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/vectors/InteractionValueEncoderTest.java Fri Sep  3 12:28:34 2010
@@ -17,12 +17,13 @@
 
 package org.apache.mahout.vectors;
 
+import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.Vector;
-import org.junit.Assert;
 import org.junit.Test;
 
-public class InteractionValueEncoderTest {
+public final class InteractionValueEncoderTest extends MahoutTestCase {
+
   @Test
   public void testAddToVector() {
     WordValueEncoder wv = new StaticWordValueEncoder("word");
@@ -32,13 +33,13 @@ public class InteractionValueEncoderTest
     enc.addInteractionToVector("a","1.0",1.0, v1);
     int k = enc.getProbes();
     // should set k distinct locations to 1
-    Assert.assertEquals((float) k, v1.norm(1), 0);
-    Assert.assertEquals(1.0, v1.maxValue(), 0);
+    assertEquals((float) k, v1.norm(1), 0);
+    assertEquals(1.0, v1.maxValue(), 0);
 
     // adding same interaction again should increment weights
     enc.addInteractionToVector("a","1.0",1.0,v1);
-    Assert.assertEquals((float) k*2, v1.norm(1), 0);
-    Assert.assertEquals(2.0, v1.maxValue(), 0);
+    assertEquals((float) k*2, v1.norm(1), 0);
+    assertEquals(2.0, v1.maxValue(), 0);
 
     Vector v2 = new DenseVector(20000);
     enc.addInteractionToVector("a","1.0",1.0,v2);
@@ -46,7 +47,7 @@ public class InteractionValueEncoderTest
     cv.addToVector("1.0", v2);
     k = enc.getProbes();
     //this assumes no hash collision
-    Assert.assertEquals((float) (k + wv.getProbes()+cv.getProbes()), v2.norm(1), 1e-3);
+    assertEquals((float) (k + wv.getProbes()+cv.getProbes()), v2.norm(1), 1.0e-3);
   }
 
   @Test
@@ -58,8 +59,8 @@ public class InteractionValueEncoderTest
     enc.addInteractionToVector("a","0.9",0.5, v1);
     int k = enc.getProbes();
     // should set k distinct locations to 0.9*0.5
-    Assert.assertEquals((float) k*0.5*0.9, v1.norm(1), 0);
-    Assert.assertEquals(0.5*0.9, v1.maxValue(), 0);
+    assertEquals((float) k*0.5*0.9, v1.norm(1), 0);
+    assertEquals(0.5*0.9, v1.maxValue(), 0);
   }
 
   @Test
@@ -71,7 +72,7 @@ public class InteractionValueEncoderTest
     enc.addInteractionToVector("a","some text here",1.0, v1);
     int k = enc.getProbes();
     // should interact "a" with each of "some","text" and "here"
-    Assert.assertEquals((float) k*3, v1.norm(1), 0);    
+    assertEquals((float) k*3, v1.norm(1), 0);    
   }
 
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/vectors/MurmurHashTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/vectors/MurmurHashTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/vectors/MurmurHashTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/vectors/MurmurHashTest.java Fri Sep  3 12:28:34 2010
@@ -17,52 +17,48 @@
 
 package org.apache.mahout.vectors;
 
-import junit.framework.TestCase;
-import org.apache.mahout.vectors.MurmurHash;
+import org.apache.mahout.common.MahoutTestCase;
 import org.junit.Test;
 
-import java.io.UnsupportedEncodingException;
+public final class MurmurHashTest extends MahoutTestCase {
 
-@SuppressWarnings({"deprecation"})
-public class MurmurHashTest extends TestCase {
-    @Test
-    public void testForLotsOfChange() throws UnsupportedEncodingException {
-        long h1 = MurmurHash.hashLong("abc".getBytes("UTF-8"), 0);
-        long h2 = MurmurHash.hashLong("abc ".getBytes("UTF-8"), 0);
-        int flipCount = Long.bitCount(h1 ^ h2);
-        assertTrue("Small changes should result in lots of bit flips, only found " + flipCount, flipCount > 25);
-    }
-
-    @Test
-    public void testHash64() throws UnsupportedEncodingException {
-        // test data generated by running MurmurHash2_64.cpp
-        assertEquals(0x9cc9c33498a95efbL, MurmurHash.hash64A("abc".getBytes("UTF-8"), 0));
-        assertEquals(0xd2c8c9b470122bddL, MurmurHash.hash64A("abc def ghi jkl ".getBytes("UTF-8"), 0));
-        assertEquals(0xcd37895736a81cbcL, MurmurHash.hash64A("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
-    }
-
-    @SuppressWarnings({"deprecation"})
-    @Test
-    public void testHash64original() throws UnsupportedEncodingException {
-        // test data generated by running MurmurHash2_64.cpp
-        assertEquals(0x9cc9c33498a95efbL, MurmurHash.hash64AOriginal("abc".getBytes("UTF-8"), 0));
-        assertEquals(0xd2c8c9b470122bddL, MurmurHash.hash64AOriginal("abc def ghi jkl ".getBytes("UTF-8"), 0));
-        assertEquals(0xcd37895736a81cbcL, MurmurHash.hash64AOriginal("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
-    }
-
-    @Test
-    public void testHash() throws UnsupportedEncodingException {
-        // test data generated by running MurmurHashNeutral2.cpp
-        assertEquals(0x13577c9b, MurmurHash.hash("abc".getBytes("UTF-8"), 0));
-        assertEquals(0x6fec441b, MurmurHash.hash("abc def ghi jkl ".getBytes("UTF-8"), 0));
-        assertEquals(0x7e953277, MurmurHash.hash("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
-    }
-
-    @Test
-    public void testHashNio() throws UnsupportedEncodingException {
-        // test data generated by running MurmurHashNeutral2.cpp
-        assertEquals(0x13577c9b, MurmurHash.hashOriginal("abc".getBytes("UTF-8"), 0));
-        assertEquals(0x6fec441b, MurmurHash.hashOriginal("abc def ghi jkl ".getBytes("UTF-8"), 0));
-        assertEquals(0x7e953277, MurmurHash.hashOriginal("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
-    }
+  @Test
+  public void testForLotsOfChange() throws Exception {
+      long h1 = MurmurHash.hashLong("abc".getBytes("UTF-8"), 0);
+      long h2 = MurmurHash.hashLong("abc ".getBytes("UTF-8"), 0);
+      int flipCount = Long.bitCount(h1 ^ h2);
+      assertTrue("Small changes should result in lots of bit flips, only found " + flipCount, flipCount > 25);
+  }
+
+  @Test
+  public void testHash64() throws Exception {
+      // test data generated by running MurmurHash2_64.cpp
+      assertEquals(0x9cc9c33498a95efbL, MurmurHash.hash64A("abc".getBytes("UTF-8"), 0));
+      assertEquals(0xd2c8c9b470122bddL, MurmurHash.hash64A("abc def ghi jkl ".getBytes("UTF-8"), 0));
+      assertEquals(0xcd37895736a81cbcL, MurmurHash.hash64A("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
+  }
+
+  @Test
+  public void testHash64original() throws Exception {
+      // test data generated by running MurmurHash2_64.cpp
+      assertEquals(0x9cc9c33498a95efbL, MurmurHash.hash64AOriginal("abc".getBytes("UTF-8"), 0));
+      assertEquals(0xd2c8c9b470122bddL, MurmurHash.hash64AOriginal("abc def ghi jkl ".getBytes("UTF-8"), 0));
+      assertEquals(0xcd37895736a81cbcL, MurmurHash.hash64AOriginal("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
+  }
+
+  @Test
+  public void testHash() throws Exception {
+      // test data generated by running MurmurHashNeutral2.cpp
+      assertEquals(0x13577c9b, MurmurHash.hash("abc".getBytes("UTF-8"), 0));
+      assertEquals(0x6fec441b, MurmurHash.hash("abc def ghi jkl ".getBytes("UTF-8"), 0));
+      assertEquals(0x7e953277, MurmurHash.hash("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
+  }
+
+  @Test
+  public void testHashNio() throws Exception {
+      // test data generated by running MurmurHashNeutral2.cpp
+      assertEquals(0x13577c9b, MurmurHash.hashOriginal("abc".getBytes("UTF-8"), 0));
+      assertEquals(0x6fec441b, MurmurHash.hashOriginal("abc def ghi jkl ".getBytes("UTF-8"), 0));
+      assertEquals(0x7e953277, MurmurHash.hashOriginal("abc def ghi jkl moreGoo".getBytes("UTF-8"), 0));
+  }
 }

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/vectors/TextValueEncoderTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/vectors/TextValueEncoderTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/vectors/TextValueEncoderTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/vectors/TextValueEncoderTest.java Fri Sep  3 12:28:34 2010
@@ -18,24 +18,23 @@
 package org.apache.mahout.vectors;
 
 import com.google.common.collect.ImmutableMap;
+import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.Vector;
-import org.junit.Assert;
 import org.junit.Test;
 
 import java.util.Locale;
 
-import static org.junit.Assert.assertEquals;
+public final class TextValueEncoderTest extends MahoutTestCase {
 
-public class TextValueEncoderTest {
   @Test
   public void testAddToVector() {
     TextValueEncoder enc = new TextValueEncoder("text");
     Vector v1 = new DenseVector(200);
     enc.addToVector("test1 and more", v1);
     // should set 6 distinct locations to 1
-    Assert.assertEquals(6.0, v1.norm(1), 0);
-    Assert.assertEquals(1.0, v1.maxValue(), 0);
+    assertEquals(6.0, v1.norm(1), 0);
+    assertEquals(1.0, v1.maxValue(), 0);
 
     // now some fancy weighting
     StaticWordValueEncoder w = new StaticWordValueEncoder("text");
@@ -52,10 +51,10 @@ public class TextValueEncoderTest {
     w.addToVector("and", v3);
     w.addToVector("more", v3);
 
-    Assert.assertEquals(0, v3.minus(v2).norm(1), 0);
+    assertEquals(0, v3.minus(v2).norm(1), 0);
 
     // moreover, the locations set in the unweighted case should be the same as in the weighted case
-    Assert.assertEquals(v3.zSum(), v3.dot(v1), 0);
+    assertEquals(v3.zSum(), v3.dot(v1), 0);
   }
 
   @Test

Modified: mahout/trunk/core/src/test/java/org/apache/mahout/vectors/WordLikeValueEncoderTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/vectors/WordLikeValueEncoderTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/core/src/test/java/org/apache/mahout/vectors/WordLikeValueEncoderTest.java (original)
+++ mahout/trunk/core/src/test/java/org/apache/mahout/vectors/WordLikeValueEncoderTest.java Fri Sep  3 12:28:34 2010
@@ -19,18 +19,16 @@ package org.apache.mahout.vectors;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
+import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.math.DenseVector;
 import org.apache.mahout.math.Vector;
-import org.junit.Assert;
 import org.junit.Test;
 
 import java.util.Iterator;
 import java.util.Locale;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+public final class WordLikeValueEncoderTest extends MahoutTestCase {
 
-public class WordLikeValueEncoderTest {
   @Test
   public void testAddToVector() {
     FeatureVectorEncoder enc = new StaticWordValueEncoder("word");
@@ -41,17 +39,17 @@ public class WordLikeValueEncoderTest {
     Iterator<Integer> j = ImmutableList.of(7, 118, 119, 199).iterator();
     while (i.hasNext()) {
       Vector.Element element = i.next();
-      Assert.assertEquals(j.next().intValue(), element.index());
-      Assert.assertEquals(1, element.get(), 0);
+      assertEquals(j.next().intValue(), element.index());
+      assertEquals(1, element.get(), 0);
     }
-    Assert.assertFalse(j.hasNext());
+    assertFalse(j.hasNext());
   }
 
   @Test
   public void testAsString() {
     Locale.setDefault(Locale.ENGLISH);
     FeatureVectorEncoder enc = new StaticWordValueEncoder("word");
-    Assert.assertEquals("word:w1:1.0000", enc.asString("w1"));
+    assertEquals("word:w1:1.0000", enc.asString("w1"));
   }
 
   @Test
@@ -67,10 +65,10 @@ public class WordLikeValueEncoderTest {
     Iterator<Double> k = ImmutableList.of(3.0, 0.75, 1.5, 1.5, 0.75, 3.0).iterator();
     while (i.hasNext()) {
       Vector.Element element = i.next();
-      Assert.assertEquals(j.next().intValue(), element.index());
-      Assert.assertEquals(k.next(), element.get(), 0);
+      assertEquals(j.next().intValue(), element.index());
+      assertEquals(k.next(), element.get(), 0);
     }
-    Assert.assertFalse(j.hasNext());
+    assertFalse(j.hasNext());
   }
 
   @Test
@@ -89,9 +87,9 @@ public class WordLikeValueEncoderTest {
                                           Math.log(2 / 1.5) + Math.log(4.5 / 2.5)).iterator();
     while (i.hasNext()) {
       Vector.Element element = i.next();
-      Assert.assertEquals(j.next().intValue(), element.index());
-      Assert.assertEquals(k.next(), element.get(), 1.0e-6);
+      assertEquals(j.next().intValue(), element.index());
+      assertEquals(k.next(), element.get(), 1.0e-6);
     }
-    Assert.assertFalse(j.hasNext());
+    assertFalse(j.hasNext());
   }
 }

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/classifier/bayes/SplitBayesInputTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/classifier/bayes/SplitBayesInputTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/classifier/bayes/SplitBayesInputTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/classifier/bayes/SplitBayesInputTest.java Fri Sep  3 12:28:34 2010
@@ -25,15 +25,14 @@ import java.io.OutputStreamWriter;
 import java.io.Writer;
 import java.nio.charset.Charset;
 
-import junit.framework.Assert;
-
 import org.apache.mahout.classifier.ClassifierData;
 import org.apache.mahout.common.IOUtils;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.math.map.OpenObjectIntHashMap;
+import org.junit.Before;
+import org.junit.Test;
 
-
-public class SplitBayesInputTest extends MahoutTestCase {
+public final class SplitBayesInputTest extends MahoutTestCase {
 
   private OpenObjectIntHashMap<String> countMap;
   private Charset charset;
@@ -44,6 +43,7 @@ public class SplitBayesInputTest extends
   private SplitBayesInput si;
     
   @Override
+  @Before
   public void setUp() throws Exception {
     super.setUp();
   
@@ -61,7 +61,7 @@ public class SplitBayesInputTest extends
     si.setInputDirectory(tempInputDirectory);
   }
   
-  public void writeMultipleInputFiles() throws IOException {
+  private void writeMultipleInputFiles() throws IOException {
     Writer writer = null;
     String currentLabel = null;
     
@@ -81,7 +81,7 @@ public class SplitBayesInputTest extends
     IOUtils.quietClose(writer);
   }
 
-  public void writeSingleInputFile() throws IOException {
+  private void writeSingleInputFile() throws IOException {
     BufferedWriter writer = new BufferedWriter(
         new OutputStreamWriter(new FileOutputStream(tempInputFile), Charset.forName("UTF-8")));
     for (String[] entry : ClassifierData.DATA) {
@@ -89,7 +89,8 @@ public class SplitBayesInputTest extends
     }
     writer.close();
   }
-  
+
+  @Test
   public void testSplitDirectory() throws Exception {
 
     writeMultipleInputFiles();
@@ -106,14 +107,16 @@ public class SplitBayesInputTest extends
     
     si.splitDirectory(tempInputDirectory);
   }
-  
+
+  @Test
   public void testSplitFile() throws Exception {
     writeSingleInputFile();
     si.setTestSplitSize(2);
     si.setCallback(new TestCallback(2, 10));
     si.splitFile(tempInputFile);
   }
-  
+
+  @Test
   public void testSplitFileLocation() throws Exception {
     writeSingleInputFile();
     si.setTestSplitSize(2);
@@ -121,7 +124,8 @@ public class SplitBayesInputTest extends
     si.setCallback(new TestCallback(2, 10));
     si.splitFile(tempInputFile);
   }
-  
+
+  @Test
   public void testSplitFilePct() throws Exception {
     writeSingleInputFile();
     si.setTestSplitPct(25);
@@ -129,7 +133,8 @@ public class SplitBayesInputTest extends
     si.setCallback(new TestCallback(3, 9));
     si.splitFile(tempInputFile);
   }
-  
+
+  @Test
   public void testSplitFilePctLocation() throws Exception {
     writeSingleInputFile();
     si.setTestSplitPct(25);
@@ -137,7 +142,8 @@ public class SplitBayesInputTest extends
     si.setCallback(new TestCallback(3, 9));
     si.splitFile(tempInputFile);
   }
-  
+
+  @Test
   public void testSplitFileRandomSelectionSize() throws Exception {
     writeSingleInputFile();
     si.setTestRandomSelectionSize(5);
@@ -145,7 +151,8 @@ public class SplitBayesInputTest extends
     si.setCallback(new TestCallback(5, 7));
     si.splitFile(tempInputFile);
   }
-  
+
+  @Test
   public void testSplitFileRandomSelectionPct() throws Exception {
     writeSingleInputFile();
     si.setTestRandomSelectionPct(25);
@@ -153,7 +160,8 @@ public class SplitBayesInputTest extends
     si.setCallback(new TestCallback(3, 9));
     si.splitFile(tempInputFile);
   }
-  
+
+  @Test
   public void testValidate() throws Exception {
     SplitBayesInput st = new SplitBayesInput();
     assertValidateException(st, IllegalArgumentException.class);
@@ -190,8 +198,8 @@ public class SplitBayesInputTest extends
   }
   
   private class TestCallback implements SplitBayesInput.SplitCallback {
-    private int testSplitSize;
-    private int trainingLines;
+    private final int testSplitSize;
+    private final int trainingLines;
     
     private TestCallback(int testSplitSize, int trainingLines) {
       this.testSplitSize = testSplitSize;
@@ -204,10 +212,10 @@ public class SplitBayesInputTest extends
     }
   }
   
-  private void assertValidateException(SplitBayesInput st, Class<?> clazz) throws Exception {
+  private static void assertValidateException(SplitBayesInput st, Class<?> clazz) throws Exception {
     try {
       st.validate();
-      Assert.fail("Expected valdate() to throw an exception, received none");
+      fail("Expected valdate() to throw an exception, received none");
     } catch (Exception e) {
       if (!e.getClass().isAssignableFrom(clazz)) {
         throw e;
@@ -224,14 +232,14 @@ public class SplitBayesInputTest extends
 
     try {
       File testFile = new File(tempTestDirectory, tempInputFile.getName());
-      Assert.assertTrue("test file exists", testFile.isFile());
-      Assert.assertEquals("test line count", testSplitSize, SplitBayesInput.countLines(testFile, charset));
+      assertTrue("test file exists", testFile.isFile());
+      assertEquals("test line count", testSplitSize, SplitBayesInput.countLines(testFile, charset));
 
       File trainingFile = new File(tempTrainingDirectory, tempInputFile.getName());
-      Assert.assertTrue("training file exists", trainingFile.isFile());
-      Assert.assertEquals("training line count", trainingLines, SplitBayesInput.countLines(trainingFile, charset));
+      assertTrue("training file exists", trainingFile.isFile());
+      assertEquals("training line count", trainingLines, SplitBayesInput.countLines(trainingFile, charset));
     } catch (IOException ioe) {
-      Assert.fail(ioe.toString());
+      fail(ioe.toString());
     }
   }
 }

Added: mahout/trunk/examples/src/test/java/org/apache/mahout/examples/MahoutTestCase.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/examples/MahoutTestCase.java?rev=992277&view=auto
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/examples/MahoutTestCase.java (added)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/examples/MahoutTestCase.java Fri Sep  3 12:28:34 2010
@@ -0,0 +1,30 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.mahout.examples;
+
+/**
+ * This class should not exist. It's here to work around some bizarre problem in Maven
+ * dependency management wherein it can see methods in {@link org.apache.mahout.common.MahoutTestCase}
+ * but not constants. Duplicated here to make it jive.
+ */
+public abstract class MahoutTestCase extends org.apache.mahout.common.MahoutTestCase {
+
+  /** "Close enough" value for floating-point comparisons. */
+  public static final double EPSILON = 0.0000001;
+
+}

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDCrossoverTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDCrossoverTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDCrossoverTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDCrossoverTest.java Fri Sep  3 12:28:34 2010
@@ -17,19 +17,21 @@
 
 package org.apache.mahout.ga.watchmaker.cd;
 
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.easymock.classextension.EasyMock;
 import org.apache.mahout.common.RandomUtils;
+import org.junit.Test;
 
 import java.util.List;
 import java.util.Random;
 
-public class CDCrossoverTest extends MahoutTestCase {
+public final class CDCrossoverTest extends MahoutTestCase {
 
   /**
    * if the parents have different values for all their genes, then the
    * offsprings will not any common gene.
    */
+  @Test
   public void testMate1() {
     Random rng = RandomUtils.getRandom();
 
@@ -77,6 +79,7 @@ public class CDCrossoverTest extends Mah
    * Ensure that for a crossover of N points, the offsprings got N+1 different
    * areas.
    */
+  @Test
   public void testMate2() {
     Random rng = RandomUtils.getRandom();
 

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDFitnessTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDFitnessTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDFitnessTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDFitnessTest.java Fri Sep  3 12:28:34 2010
@@ -17,16 +17,18 @@
 
 package org.apache.mahout.ga.watchmaker.cd;
 
-import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.common.RandomUtils;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
 import java.util.Random;
 
-public class CDFitnessTest extends MahoutTestCase {
+public final class CDFitnessTest extends MahoutTestCase {
 
   /**
    * Test method for {@link org.apache.mahout.ga.watchmaker.cd.CDFitness#get()}.
    */
+  @Test
   public void testGet() {
     int n = 100;
     Random rng = RandomUtils.getRandom();
@@ -40,7 +42,7 @@ public class CDFitnessTest extends Mahou
       double se = ((double) tp) / (tp + fn);
       double sp = ((double) tn) / (tn + fp);
 
-      assertEquals(se * sp, fitness.get());
+      assertEquals(se * sp, fitness.get(), EPSILON);
     }
   }
 

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDMutationTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDMutationTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDMutationTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDMutationTest.java Fri Sep  3 12:28:34 2010
@@ -17,21 +17,22 @@
 
 package org.apache.mahout.ga.watchmaker.cd;
 
-import junit.framework.Assert;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.ga.watchmaker.cd.utils.MockDataSet;
 import org.apache.mahout.common.RandomUtils;
+import org.junit.Before;
+import org.junit.Test;
 
 import java.util.Random;
 
-public class CDMutationTest extends MahoutTestCase {
+public final class CDMutationTest extends MahoutTestCase {
 
   private Random rng;
-
   private MockDataSet mock;
 
   @Override
-  protected void setUp() throws Exception {
+  @Before
+  public void setUp() throws Exception {
     super.setUp();
     rng = RandomUtils.getRandom();
     mock = new MockDataSet(rng, 100);
@@ -41,6 +42,7 @@ public class CDMutationTest extends Maho
    * Test method for
    * {@link org.apache.mahout.ga.watchmaker.cd.CDMutation#rndDouble(double, double, double, java.util.Random)}.
    */
+  @Test
   public void testMutate() {
     DataSet dataset = DataSet.getDataSet();
     boolean modified = false; // true if at least one attribute has mutated
@@ -83,8 +85,8 @@ public class CDMutationTest extends Maho
     assertTrue(modified);
   }
 
-  private static void assertInRange(double value, double min, double max) {
-    Assert.assertTrue("value < min", value >= min);
-    Assert.assertTrue("value > max", value <= max);
+  static void assertInRange(double value, double min, double max) {
+    assertTrue("value < min", value >= min);
+    assertTrue("value > max", value <= max);
   }
 }

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDRuleTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDRuleTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDRuleTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/CDRuleTest.java Fri Sep  3 12:28:34 2010
@@ -17,20 +17,28 @@
 
 package org.apache.mahout.ga.watchmaker.cd;
 
-import junit.framework.Assert;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.ga.watchmaker.cd.utils.MockDataSet;
 import org.apache.mahout.common.RandomUtils;
 import org.easymock.classextension.EasyMock;
+import org.junit.Before;
+import org.junit.Test;
 
 import java.util.Random;
 
-public class CDRuleTest extends MahoutTestCase {
+public final class CDRuleTest extends MahoutTestCase {
 
   private Random rng;
-
   private MockDataSet mock;
 
+  @Override
+  @Before
+  public void setUp() throws Exception {
+    super.setUp();
+    rng = RandomUtils.getRandom();
+    mock = new MockDataSet(rng, 50);
+  }
+
   /**
    * Test method for
    * {@link org.apache.mahout.ga.watchmaker.cd.CDFactory#generateRandomCandidate(java.util.Random)}.
@@ -47,13 +55,13 @@ public class CDRuleTest extends MahoutTe
       for (int condInd = 0; condInd < rule.getNbConditions(); condInd++) {
         int attrInd = CDRule.attributeIndex(condInd);
         
-        assertInRange(rule.getW(condInd), 0, 1);
+        CDMutationTest.assertInRange(rule.getW(condInd), 0, 1);
         
         if (dataset.isNumerical(attrInd)) {
-          assertInRange(rule.getV(condInd), dataset.getMin(attrInd), dataset
+          CDMutationTest.assertInRange(rule.getV(condInd), dataset.getMin(attrInd), dataset
               .getMax(attrInd));
         } else {
-          assertInRange(rule.getV(condInd), 0, dataset.getNbValues(attrInd) - 1);
+          CDMutationTest.assertInRange(rule.getV(condInd), 0, dataset.getNbValues(attrInd) - 1);
         }
       }
 
@@ -61,22 +69,11 @@ public class CDRuleTest extends MahoutTe
     }
   }
 
-  private static void assertInRange(double value, double min, double max) {
-    Assert.assertTrue("value < min", value >= min);
-    Assert.assertTrue("value > max", value <= max);
-  }
-
-  @Override
-  protected void setUp() throws Exception {
-    super.setUp();
-    rng = RandomUtils.getRandom();
-    mock = new MockDataSet(rng, 50);
-  }
-
   /**
    * Test the Weight part of the condition.
    * 
    */
+  @Test
   public void testWCondition() {
 
     // the dataline has all its attributes set to 0d
@@ -113,6 +110,7 @@ public class CDRuleTest extends MahoutTe
    * Test the Operator part of the condition, on numerical attributes
    * 
    */
+  @Test
   public void testOConditionNumerical() {
 
     // the dataline has all its attributes set to 1d
@@ -146,6 +144,7 @@ public class CDRuleTest extends MahoutTe
    * Test the Operator part of the condition, on numerical attributes
    * 
    */
+  @Test
   public void testOConditionCategorical() {
 
     // the dataline has all its attributes set to 1d

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/DataLineTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/DataLineTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/DataLineTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/DataLineTest.java Fri Sep  3 12:28:34 2010
@@ -20,17 +20,19 @@ package org.apache.mahout.ga.watchmaker.
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.mahout.common.MahoutTestCase;
 
 import com.google.common.io.Resources;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
-public class DataLineTest extends MahoutTestCase {
+public final class DataLineTest extends MahoutTestCase {
 
-  private static final String[] datalines = {
+  private static final String[] DATA = {
       "842302,M,17.99,10.38,122.8,1001,0.1184,0.2776,0.3001,0.1471,0.2419,0.07871,1.095,0.9053,8.589,153.4,0.006399,0.04904,0.05373,0.01587,0.03003,0.006193,25.38,17.33,184.6,2019,0.1622,0.6656,0.7119,0.2654,0.4601,0.1189",
       "8510426,B,13.54,14.36,87.46,566.3,0.09779,0.08129,0.06664,0.04781,0.1885,0.05766,0.2699,0.7886,2.058,23.56,0.008462,0.0146,0.02387,0.01315,0.0198,0.0023,15.11,19.26,99.7,711.2,0.144,0.1773,0.239,0.1288,0.2977,0.07259",
       "852781,M,18.61,20.25,122.1,1094,0.0944,0.1066,0.149,0.07731,0.1697,0.05699,0.8529,1.849,5.632,93.54,0.01075,0.02722,0.05081,0.01911,0.02293,0.004217,21.31,27.26,139.9,1403,0.1338,0.2117,0.3446,0.149,0.2341,0.07421" };
 
+  @Test
   public void testSet() throws Exception {
     FileSystem fs = FileSystem.get(new Configuration());
     Path inpath = fs.makeQualified(new Path(Resources.getResource("wdbc").toString()));
@@ -42,13 +44,13 @@ public class DataLineTest extends Mahout
     
     int labelpos = dataset.getLabelIndex();
     
-    dl.set(datalines[0]);
+    dl.set(DATA[0]);
     assertEquals(dataset.valueIndex(labelpos, "M"), dl.getLabel());
     
-    dl.set(datalines[1]);
+    dl.set(DATA[1]);
     assertEquals(dataset.valueIndex(labelpos, "B"), dl.getLabel());
     
-    dl.set(datalines[2]);
+    dl.set(DATA[2]);
     assertEquals(dataset.valueIndex(labelpos, "M"), dl.getLabel());
   }
 

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/FileInfosDatasetTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/FileInfosDatasetTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/FileInfosDatasetTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/FileInfosDatasetTest.java Fri Sep  3 12:28:34 2010
@@ -17,21 +17,21 @@
 
 package org.apache.mahout.ga.watchmaker.cd;
 
-import junit.framework.Assert;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.mahout.common.FileLineIterable;
-import org.apache.mahout.common.MahoutTestCase;
 
 import com.google.common.io.Resources;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
-import java.io.IOException;
 import java.io.File;
 
-public class FileInfosDatasetTest extends MahoutTestCase {
+public final class FileInfosDatasetTest extends MahoutTestCase {
 
-  public void testRanges() throws IOException {
+  @Test
+  public void testRanges() throws Exception {
     FileSystem fs = FileSystem.get(new Configuration());
     Path inpath = fs.makeQualified(new Path(Resources.getResource("wdbc").toString()));
     
@@ -43,18 +43,14 @@ public class FileInfosDatasetTest extend
       dl.set(line);
       for (int index = 0; index < dataset.getNbAttributes(); index++) {
         if (dataset.isNumerical(index)) {
-          assertInRange(dl.getAttribute(index), dataset.getMin(index), dataset
+          CDMutationTest.assertInRange(dl.getAttribute(index), dataset.getMin(index), dataset
               .getMax(index));
         } else {
-          assertInRange(dl.getAttribute(index), 0, dataset.getNbValues(index));
+          CDMutationTest.assertInRange(dl.getAttribute(index), 0, dataset.getNbValues(index));
         }
       }
     }
   }
 
-  private static void assertInRange(double value, double min, double max) {
-    Assert.assertTrue("value" + value + ") < min", value >= min);
-    Assert.assertTrue("value(" + value + ") > max", value <= max);
-  }
 
 }

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMahoutEvaluatorTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMahoutEvaluatorTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMahoutEvaluatorTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMahoutEvaluatorTest.java Fri Sep  3 12:28:34 2010
@@ -24,17 +24,19 @@ import java.util.Random;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.common.RandomUtils;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.ga.watchmaker.cd.CDFitness;
 import org.apache.mahout.ga.watchmaker.cd.Rule;
 import org.apache.mahout.ga.watchmaker.cd.utils.RandomRule;
 import org.apache.mahout.ga.watchmaker.cd.utils.RandomRuleResults;
 
 import com.google.common.io.Resources;
+import org.junit.Test;
 
-public class CDMahoutEvaluatorTest extends MahoutTestCase {
+public final class CDMahoutEvaluatorTest extends MahoutTestCase {
 
+  @Test
   public void testEvaluate() throws Exception {
     int nbrules = 100;
     Random rng = RandomUtils.getRandom();

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMapperTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMapperTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMapperTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDMapperTest.java Fri Sep  3 12:28:34 2010
@@ -18,18 +18,20 @@
 package org.apache.mahout.ga.watchmaker.cd.hadoop;
 
 import org.apache.hadoop.io.LongWritable;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.ga.watchmaker.cd.CDFitness;
 import org.apache.mahout.ga.watchmaker.cd.DataLine;
 import org.apache.mahout.ga.watchmaker.cd.Rule;
 import org.apache.mahout.common.DummyOutputCollector;
 import org.easymock.classextension.EasyMock;
+import org.junit.Before;
+import org.junit.Test;
 
 import java.util.Arrays;
 import java.util.List;
 import java.util.Set;
 
-public class CDMapperTest extends MahoutTestCase {
+public final class CDMapperTest extends MahoutTestCase {
 
   private DataLine dl;
   private Rule rule;
@@ -39,7 +41,8 @@ public class CDMapperTest extends Mahout
   private final CDFitness FN = new CDFitness(0, 0, 0, 1);
 
   @Override
-  protected void setUp() throws Exception {
+  @Before
+  public void setUp() throws Exception {
     super.setUp();
 
     // we assume 2 classes 0 and 1
@@ -70,6 +73,7 @@ public class CDMapperTest extends Mahout
     assertEquals(FN, CDMapper.evaluate(1, 0, 1));
   }
 
+  @Test
   public void testMap() throws Exception {
     EasyMock.replay(rule);
     EasyMock.replay(dl);

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDReducerTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDReducerTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDReducerTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/CDReducerTest.java Fri Sep  3 12:28:34 2010
@@ -17,7 +17,6 @@
 
 package org.apache.mahout.ga.watchmaker.cd.hadoop;
 
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Random;
@@ -27,20 +26,22 @@ import org.apache.hadoop.conf.Configurat
 import org.apache.hadoop.io.LongWritable;
 import org.apache.hadoop.mapreduce.Reducer;
 import org.apache.mahout.common.DummyRecordWriter;
-import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.common.RandomUtils;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.ga.watchmaker.cd.CDFitness;
+import org.junit.Before;
+import org.junit.Test;
 
-public class CDReducerTest extends MahoutTestCase {
+public final class CDReducerTest extends MahoutTestCase {
 
   private static final int NUM_EVALS = 100;
 
   private List<CDFitness> evaluations;
-
   private CDFitness expected;
 
   @Override
-  protected void setUp() throws Exception {
+  @Before
+  public void setUp() throws Exception {
     super.setUp();
     // generate random evaluatons and calculate expectations
     evaluations = new ArrayList<CDFitness>();
@@ -61,15 +62,13 @@ public class CDReducerTest extends Mahou
     expected = new CDFitness(tp, fp, tn, fn);
   }
 
-  public void testReduce() throws IOException, InterruptedException {
+  @Test
+  public void testReduce() throws Exception {
     CDReducer reducer = new CDReducer();
     Configuration conf = new Configuration();
     DummyRecordWriter<LongWritable, CDFitness> reduceWriter = new DummyRecordWriter<LongWritable, CDFitness>();
-    Reducer<LongWritable, CDFitness, LongWritable, CDFitness>.Context reduceContext = DummyRecordWriter.build(reducer,
-                                                                                                              conf,
-                                                                                                              reduceWriter,
-                                                                                                              LongWritable.class,
-                                                                                                              CDFitness.class);
+    Reducer<LongWritable, CDFitness, LongWritable, CDFitness>.Context reduceContext =
+        DummyRecordWriter.build(reducer, conf, reduceWriter, LongWritable.class, CDFitness.class);
 
     LongWritable zero = new LongWritable(0);
     reducer.reduce(zero, evaluations, reduceContext);

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/DatasetSplitTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/DatasetSplitTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/DatasetSplitTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/hadoop/DatasetSplitTest.java Fri Sep  3 12:28:34 2010
@@ -18,8 +18,8 @@
 package org.apache.mahout.ga.watchmaker.cd.hadoop;
 
 import java.io.IOException;
+import java.util.Collection;
 import java.util.HashSet;
-import java.util.Set;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.io.LongWritable;
@@ -27,12 +27,13 @@ import org.apache.hadoop.io.Text;
 import org.apache.hadoop.mapreduce.InputSplit;
 import org.apache.hadoop.mapreduce.RecordReader;
 import org.apache.hadoop.mapreduce.TaskAttemptContext;
-import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.common.RandomUtils;
 import org.apache.mahout.common.RandomWrapper;
+import org.apache.mahout.examples.MahoutTestCase;
 import org.apache.mahout.ga.watchmaker.cd.hadoop.DatasetSplit.RndLineRecordReader;
+import org.junit.Test;
 
-public class DatasetSplitTest extends MahoutTestCase {
+public final class DatasetSplitTest extends MahoutTestCase {
 
   /**
    * Mock RecordReader that returns a sequence of keys in the range [0, size[
@@ -40,12 +41,9 @@ public class DatasetSplitTest extends Ma
   private static class MockReader extends RecordReader<LongWritable, Text> {
 
     private long current;
-
     private final long size;
-
-    private LongWritable currentKey = new LongWritable();
-
-    private Text currentValue = new Text();
+    private final LongWritable currentKey = new LongWritable();
+    private final Text currentValue = new Text();
 
     MockReader(long size) {
       if (size <= 0) {
@@ -88,7 +86,8 @@ public class DatasetSplitTest extends Ma
     }
   }
 
-  public void testTrainingTestingSets() throws IOException, InterruptedException {
+  @Test
+  public void testTrainingTestingSets() throws Exception {
     int n = 20;
 
     for (int nloop = 0; nloop < n; nloop++) {
@@ -96,7 +95,7 @@ public class DatasetSplitTest extends Ma
       double threshold = rng.nextDouble();
 
       Configuration conf = new Configuration();
-      Set<Long> dataset = new HashSet<Long>();
+      Collection<Long> dataset = new HashSet<Long>();
 
       DatasetSplit split = new DatasetSplit(rng.getSeed(), threshold);
 
@@ -120,6 +119,7 @@ public class DatasetSplitTest extends Ma
     }
   }
 
+  @Test
   public void testStoreJobParameters() {
     int n = 20;
 
@@ -137,7 +137,7 @@ public class DatasetSplitTest extends Ma
       split.storeJobParameters(conf);
 
       assertEquals("bad seed", seed, DatasetSplit.getSeed(conf));
-      assertEquals("bad threshold", threshold, DatasetSplit.getThreshold(conf));
+      assertEquals("bad threshold", threshold, DatasetSplit.getThreshold(conf), EPSILON);
       assertEquals("bad training", training, DatasetSplit.isTraining(conf));
     }
   }

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/CDInfosToolTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/CDInfosToolTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/CDInfosToolTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/CDInfosToolTest.java Fri Sep  3 12:28:34 2010
@@ -22,9 +22,11 @@ import org.apache.hadoop.fs.FSDataOutput
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.mahout.common.HadoopUtil;
-import org.apache.mahout.common.MahoutTestCase;
 import org.apache.mahout.common.RandomUtils;
 import org.apache.commons.lang.ArrayUtils;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Before;
+import org.junit.Test;
 
 import java.io.BufferedWriter;
 import java.io.IOException;
@@ -35,14 +37,15 @@ import java.util.Collection;
 import java.util.List;
 import java.util.Random;
 
-public class CDInfosToolTest extends MahoutTestCase {
+public final class CDInfosToolTest extends MahoutTestCase {
 
   /** max number of distinct values for any nominal attribute */
   private static final int MAX_NOMINAL_VALUES = 50;
   private Random rng;
 
   @Override
-  protected void setUp() throws Exception {
+  @Before
+  public void setUp() throws Exception {
     super.setUp();
     rng = RandomUtils.getRandom();
   }
@@ -189,6 +192,7 @@ public class CDInfosToolTest extends Mah
     return nbattrs;
   }
 
+  @Test
   public void testGatherInfos() throws Exception {
     int n = 1; // put a greater value when you search for some nasty bug
     for (int nloop = 0; nloop < n; nloop++) {

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/DescriptionUtilsTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/DescriptionUtilsTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/DescriptionUtilsTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/DescriptionUtilsTest.java Fri Sep  3 12:28:34 2010
@@ -17,14 +17,17 @@
 
 package org.apache.mahout.ga.watchmaker.cd.tool;
 
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.List;
 
-public class DescriptionUtilsTest extends MahoutTestCase {
+public final class DescriptionUtilsTest extends MahoutTestCase {
 
+  @Test
   public void testCreateNominalDescription() {
     List<String> values = Arrays.asList("val1", "val2", "val3");
 
@@ -33,14 +36,16 @@ public class DescriptionUtilsTest extend
     assertEquals("val1,val2,val3", description);
   }
 
+  @Test
   public void testCreateNumericalDescription() {
     String description = DescriptionUtils.createNumericalDescription(-5.1, 12.32);
     assertEquals("-5.1,12.32", description);
   }
 
+  @Test
   public void testExtractNominalValues() {
     String description = "val1,val2,val3";
-    List<String> target = new ArrayList<String>();
+    Collection<String> target = new ArrayList<String>();
 
     DescriptionUtils.extractNominalValues(description, target);
 
@@ -49,12 +54,13 @@ public class DescriptionUtilsTest extend
     assertTrue("'val2 not found'", target.contains("val2"));
     assertTrue("'val3 not found'", target.contains("val3"));
   }
-  
+
+  @Test
   public void testExtractNumericalRange() {
     String description = "-2.06,12.32";
     double[] range = DescriptionUtils.extractNumericalRange(description);
-    assertEquals(-2.06, range[0]);
-    assertEquals(12.32, range[1]);
+    assertEquals(-2.06, range[0], EPSILON);
+    assertEquals(12.32, range[1], EPSILON);
   }
 
 }

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolCombinerTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolCombinerTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolCombinerTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolCombinerTest.java Fri Sep  3 12:28:34 2010
@@ -18,26 +18,28 @@
 package org.apache.mahout.ga.watchmaker.cd.tool;
 
 import org.apache.hadoop.io.Text;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
-import java.util.ArrayList;
 import java.util.List;
 import java.util.StringTokenizer;
 
-public class ToolCombinerTest extends MahoutTestCase {
+public final class ToolCombinerTest extends MahoutTestCase {
 
+  @Test
   public void testCreateDescriptionNumerical() throws Exception {
     ToolCombiner combiner = new ToolCombiner();
 
     char[] descriptors = { 'I', 'N', 'C' };
     combiner.configure(descriptors);
 
-    List<Text> values = asList("0", "10", "-32", "0.5", "-30");
+    List<Text> values = ToolReducerTest.asList("0", "10", "-32", "0.5", "-30");
     String descriptor = combiner.createDescription(1, values.iterator());
 
     assertEquals("-32.0,10.0", descriptor);
   }
 
+  @Test
   public void testCreateDescriptionIgnored() throws Exception {
     ToolCombiner combiner = new ToolCombiner();
 
@@ -52,21 +54,21 @@ public class ToolCombinerTest extends Ma
     }
   }
 
+  @Test
   public void testCreateDescriptionNominal() throws Exception {
     ToolCombiner combiner = new ToolCombiner();
 
     char[] descriptors = { 'I', 'N', 'C' };
     combiner.configure(descriptors);
 
-    List<Text> values = asList("val1", "val2", "val1", "val3", "val2");
+    List<Text> values = ToolReducerTest.asList("val1", "val2", "val1", "val3", "val2");
     String descriptor = combiner.createDescription(2, values.iterator());
 
     StringTokenizer tokenizer = new StringTokenizer(descriptor, ",");
     int nbvalues = 0;
     while (tokenizer.hasMoreTokens()) {
       String value = tokenizer.nextToken().trim();
-      if (!"val1".equals(value) && !"val2".equals(value)
-          && !"val3".equals(value)) {
+      if (!"val1".equals(value) && !"val2".equals(value) && !"val3".equals(value)) {
         fail("Incorrect value : " + value);
       }
       nbvalues++;
@@ -74,12 +76,4 @@ public class ToolCombinerTest extends Ma
     assertEquals(3, nbvalues);
   }
 
-  static List<Text> asList(String... strings) {
-    List<Text> values = new ArrayList<Text>();
-
-    for (String value : strings) {
-      values.add(new Text(value));
-    }
-    return values;
-  }
 }

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolMapperTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolMapperTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolMapperTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolMapperTest.java Fri Sep  3 12:28:34 2010
@@ -24,10 +24,12 @@ import org.apache.hadoop.io.LongWritable
 import org.apache.hadoop.io.Text;
 import org.apache.hadoop.mapreduce.Mapper;
 import org.apache.mahout.common.DummyRecordWriter;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
-public class ToolMapperTest extends MahoutTestCase {
+public final class ToolMapperTest extends MahoutTestCase {
 
+  @Test
   public void testExtractAttributes() throws Exception {
     LongWritable key = new LongWritable();
     Text value = new Text();
@@ -51,6 +53,7 @@ public class ToolMapperTest extends Maho
     }
   }
 
+  @Test
   public void testExtractIgnoredAttributes() throws Exception {
     LongWritable key = new LongWritable();
     Text value = new Text();

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolReducerTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolReducerTest.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolReducerTest.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/tool/ToolReducerTest.java Fri Sep  3 12:28:34 2010
@@ -18,15 +18,17 @@
 package org.apache.mahout.ga.watchmaker.cd.tool;
 
 import org.apache.hadoop.io.Text;
-import org.apache.mahout.common.MahoutTestCase;
+import org.apache.mahout.examples.MahoutTestCase;
+import org.junit.Test;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
 
-public class ToolReducerTest extends MahoutTestCase {
+public final class ToolReducerTest extends MahoutTestCase {
 
+  @Test
   public void testCreateDescriptionNumerical() throws Exception {
     ToolReducer reducer = new ToolReducer();
 
@@ -40,6 +42,7 @@ public class ToolReducerTest extends Mah
     assertEquals("-32.0,25.0", descriptor);
   }
 
+  @Test
   public void testCreateDescriptionIgnored() throws Exception {
     ToolReducer reducer = new ToolReducer();
 
@@ -54,6 +57,7 @@ public class ToolReducerTest extends Mah
     }
   }
 
+  @Test
   public void testCreateDescriptionNominal() throws Exception {
     ToolReducer reducer = new ToolReducer();
 

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/MockDataSet.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/MockDataSet.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/MockDataSet.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/MockDataSet.java Fri Sep  3 12:28:34 2010
@@ -27,12 +27,10 @@ import java.util.Random;
  * of attributes. Each attribute can be numerical or categorical (choosen
  * randomly).
  */
-public class MockDataSet {
+public final class MockDataSet {
 
   private final Random rng;
-
   private final int maxnba;
-
   private final DataSet dataset;
 
   /**

Modified: mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/RandomRule.java
URL: http://svn.apache.org/viewvc/mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/RandomRule.java?rev=992277&r1=992276&r2=992277&view=diff
==============================================================================
--- mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/RandomRule.java (original)
+++ mahout/trunk/examples/src/test/java/org/apache/mahout/ga/watchmaker/cd/utils/RandomRule.java Fri Sep  3 12:28:34 2010
@@ -24,12 +24,10 @@ import org.apache.mahout.ga.watchmaker.c
 
 import java.util.Random;
 
-public class RandomRule implements Rule {
+public final class RandomRule implements Rule {
 
   private final Random rng;
-
   private final int ruleid;
-  
   private final int target;
 
   public RandomRule(int ruleid, int target, Random rng) {