From 0aea3b65cc504643183569ad70e55f4f8769ea32 Mon Sep 17 00:00:00 2001 From: "Benjamin J. Culkin" Date: Thu, 6 Dec 2018 21:31:57 -0400 Subject: Begin conversion to iterator --- .../bjc/utils/test/ioutils/CLTokenizerTest.java | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 clformat/src/test/java/bjc/utils/test/ioutils/CLTokenizerTest.java (limited to 'clformat/src/test/java') diff --git a/clformat/src/test/java/bjc/utils/test/ioutils/CLTokenizerTest.java b/clformat/src/test/java/bjc/utils/test/ioutils/CLTokenizerTest.java new file mode 100644 index 0000000..a66ffe1 --- /dev/null +++ b/clformat/src/test/java/bjc/utils/test/ioutils/CLTokenizerTest.java @@ -0,0 +1,47 @@ +package bjc.utils.test.ioutils; + +import java.io.IOException; +import java.util.Iterator; + +import org.junit.Test; + +import bjc.utils.ioutils.format.CLTokenizer; + +// Static imports + +import static java.util.Arrays.asList; + +import static org.junit.Assert.assertEquals; + +/** + * Tests for CL format strings. + * + * @author EVE + * + */ +@SuppressWarnings("javadoc") +public class CLTokenizerTest { + @Test + public void testTokenizer() { + assertIteratorEquals(tokenize(""), ""); + assertIteratorEquals(tokenize("hello"), "hello"); + assertIteratorEquals(tokenize("hello olleh"), "hello olleh"); + assertIteratorEquals(tokenize("A ~A"), "A ", "~A"); + + assertIteratorEquals(tokenize("~3,'0D"), "~3,'0D"); + assertIteratorEquals(tokenize("~,,'|,2:D"), "~,,'|,2:D"); + assertIteratorEquals(tokenize("~3,,,' ,2:R"), "~3,,,' ,2:R"); + + assertIteratorEquals(tokenize("~@[print level = ~D~]~@[print length = ~D~]"), "~@[", "print level = ", "~D", "~]", "~@[", "print length = ", "~D", "~]"); + } + + private static Iterator tokenize(String inp) { + return new CLTokenizer(inp); + } + + private static void assertIteratorEquals(Iterator src, T... vals) { + for (T val : vals) { + assertEquals(val, src.next()); + } + } +} -- cgit v1.2.3