diff options
| -rw-r--r-- | base/src/test/java/bjc/utils/funcutils/IteratorUtilsTest.java | 27 | ||||
| -rw-r--r-- | base/src/test/java/bjc/utils/funcutils/StringUtilsTest.java | 46 |
2 files changed, 73 insertions, 0 deletions
diff --git a/base/src/test/java/bjc/utils/funcutils/IteratorUtilsTest.java b/base/src/test/java/bjc/utils/funcutils/IteratorUtilsTest.java new file mode 100644 index 0000000..54e1044 --- /dev/null +++ b/base/src/test/java/bjc/utils/funcutils/IteratorUtilsTest.java @@ -0,0 +1,27 @@ +package bjc.utils.funcutils; + +import java.util.Arrays; +import java.util.List; +import org.junit.Test; + +import static bjc.utils.funcutils.IteratorUtils.*; +import static bjc.utils.funcutils.TestUtils.assertIteratorEquals; + +import static java.util.Arrays.asList; + +import static org.junit.Assert.assertEquals; + +/** + * Test IteratorUtils functionality. + * + * @author Ben Culkin + */ +public class IteratorUtilsTest { + /** + * Test the chain() method works correctly. + */ + @Test + public void testChain() { + assertIteratorEquals(chain(I(asList("a b", "b c")), (arg) -> I(asList(arg.split(" ")))), "a", "b", "b", "c"); + } +} diff --git a/base/src/test/java/bjc/utils/funcutils/StringUtilsTest.java b/base/src/test/java/bjc/utils/funcutils/StringUtilsTest.java new file mode 100644 index 0000000..560b85d --- /dev/null +++ b/base/src/test/java/bjc/utils/funcutils/StringUtilsTest.java @@ -0,0 +1,46 @@ +package bjc.utils.funcutils; + +import java.io.StringReader; + +import java.util.Scanner; + +import org.junit.Test; + +import static bjc.utils.funcutils.StringUtils.readLines; +import static bjc.utils.funcutils.TestUtils.assertIteratorEquals; + +import static org.junit.Assert.assertEquals; + +/** + * Tests of stuff in StringUtils. + * + * @author Ben Culkin + */ +public class StringUtilsTest { + @Test + public void testReadLines() { + assertReadLines("", ""); + + assertReadLines("hallo there", "hallo there"); + + assertReadLines("hallo there\na second line", "hallo there", "a second line"); + + assertReadLines("hallo there \\\na continued line", "hallo there a continued line"); + + assertReadLines("hallo there\\\\\na second line", "hallo there\\", "a second line"); + + assertReadLines("a\n\nb", "a", "", "b"); + } + + private static void assertReadLinesOpts(String inp, String... outp) { + StringReader sr = new StringReader(inp); + Scanner scn = new Scanner(sr); + assertIteratorEquals(readLines(scn), outp); + } + + private static void assertReadLines(String inp, String... outp) { + StringReader sr = new StringReader(inp); + Scanner scn = new Scanner(sr); + assertIteratorEquals(readLines(scn), outp); + } +} |
