rwaldhoff 2003/12/17 14:13:52
Modified: functor/src/test/org/apache/commons/functor/example/kata/four
ToInteger.java TestSoccer.java IsInteger.java
Abs.java TestWeather.java NthColumn.java
DataMunger.java
Log:
add comments
Revision Changes Path
1.2 +8 -2
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/ToInteger.java
Index: ToInteger.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/ToInteger.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ToInteger.java 2 Dec 2003 16:36:11 -0000 1.1
+++ ToInteger.java 17 Dec 2003 22:13:51 -0000 1.2
@@ -59,6 +59,12 @@
import org.apache.commons.functor.UnaryFunction;
/**
+ * Converts a String value to an Integer, throwing
+ * an exception if no such conversion can be made.
+ *
+ * Trailing, [EMAIL PROTECTED] Character#isDigit digit} characters
+ * are ignored.
+ *
* @version $Revision$ $Date$
* @author Rodney Waldhoff
*/
1.4 +4 -2
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/TestSoccer.java
Index: TestSoccer.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/TestSoccer.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TestSoccer.java 3 Dec 2003 01:04:12 -0000 1.3
+++ TestSoccer.java 17 Dec 2003 22:13:51 -0000 1.4
@@ -77,6 +77,8 @@
}
public void testProcess() {
+ // for our soccer example, we want to select the second column of the
+ // line with the minimal difference between the seventh and ninth columns.
assertEquals(
"Aston_Villa",
DataMunger.process(getClass().getResourceAsStream("soccer.txt"),1,6,8));
1.2 +5 -2
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/IsInteger.java
Index: IsInteger.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/IsInteger.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- IsInteger.java 2 Dec 2003 16:36:11 -0000 1.1
+++ IsInteger.java 17 Dec 2003 22:13:51 -0000 1.2
@@ -59,6 +59,9 @@
import org.apache.commons.functor.UnaryPredicate;
/**
+ * Tests to true iff the input object can be converted to
+ * an Integer by [EMAIL PROTECTED] ToInteger}.
+ *
* @version $Revision$ $Date$
* @author Rodney Waldhoff
*/
1.2 +5 -2
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/Abs.java
Index: Abs.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/Abs.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Abs.java 2 Dec 2003 16:36:11 -0000 1.1
+++ Abs.java 17 Dec 2003 22:13:51 -0000 1.2
@@ -59,6 +59,9 @@
import org.apache.commons.functor.UnaryFunction;
/**
+ * Evaluates to the absolute Integer value of the Number-valued
+ * input parameter.
+ *
* @version $Revision$ $Date$
* @author Rodney Waldhoff
*/
1.4 +4 -2
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/TestWeather.java
Index: TestWeather.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/TestWeather.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TestWeather.java 3 Dec 2003 01:04:12 -0000 1.3
+++ TestWeather.java 17 Dec 2003 22:13:51 -0000 1.4
@@ -77,6 +77,8 @@
}
public void testProcess() {
+ // for our soccer example, we want to select the first column of the
+ // line with the minimal difference between the second and third
columns.
assertEquals(
"14",
DataMunger.process(getClass().getResourceAsStream("weather.txt"),0,1,2));
1.2 +5 -2
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/NthColumn.java
Index: NthColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/NthColumn.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- NthColumn.java 2 Dec 2003 16:36:11 -0000 1.1
+++ NthColumn.java 17 Dec 2003 22:13:51 -0000 1.2
@@ -61,6 +61,9 @@
import org.apache.commons.functor.UnaryFunction;
/**
+ * Evaluates the input String to extrace the nth whitespace
+ * delmited column.
+ *
* @version $Revision$ $Date$
* @author Rodney Waldhoff
*/
1.7 +17 -3
jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/DataMunger.java
Index: DataMunger.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/functor/src/test/org/apache/commons/functor/example/kata/four/DataMunger.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- DataMunger.java 17 Dec 2003 22:05:26 -0000 1.6
+++ DataMunger.java 17 Dec 2003 22:13:51 -0000 1.7
@@ -75,15 +75,24 @@
import org.apache.commons.functor.example.lines.Lines;
/**
+ * The real workhorse of this Kata excercise.
+ *
+ * DataMunger wires together various functors and exposes them
+ * as static utility methhods.
* @version $Revision$ $Date$
* @author Rodney Waldhoff
*/
public class DataMunger {
-
+ /** See [EMAIL PROTECTED] #process(Reader,int,int,int)} */
public static final Object process(final InputStream file, final int selected,
final int col1, final int col2) {
return process(new InputStreamReader(file),selected,col1,col2);
}
+ /**
+ * Processes each line of the given Reader, returning the <i>selected</i>
column for the
+ * line where the absolute difference between the integer value of <i>col1</i>
and <i>col2</i>
+ * is least.
+ */
public static final Object process(final Reader file, final int selected, final
int col1, final int col2) {
return NthColumn.instance(selected).evaluate(
Algorithms.inject(
@@ -115,6 +124,11 @@
);
}
+ /**
+ * A UnaryFunction that returns the absolute value of the difference
+ * between the Integers stored in the <i>col1</i> and <i>col2</i>th
+ * whitespace delimited columns of the input line (a String).
+ */
private static UnaryFunction absSpread(final int col1, final int col2) {
return Composite.function(
Abs.instance(),
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]