diff options
Diffstat (limited to 'src/test/java/bjc/everge/ControlledStringTest.java')
| -rw-r--r-- | src/test/java/bjc/everge/ControlledStringTest.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/test/java/bjc/everge/ControlledStringTest.java b/src/test/java/bjc/everge/ControlledStringTest.java new file mode 100644 index 0000000..8d76354 --- /dev/null +++ b/src/test/java/bjc/everge/ControlledStringTest.java @@ -0,0 +1,42 @@ +package bjc.everge; + +import bjc.everge.ControlledString.Control; + +import org.junit.Test; + +import static bjc.everge.ControlledString.Control.C; +import static bjc.everge.TestUtils.*; + +import static org.junit.Assert.*; + +/** + * Test for ControlledString. + * + * @author Ben Culkin + */ +public class ControlledStringTest { + @Test + public void testNoControls() { + assertIsControl("a", "a"); + assertIsControl("abc", "abc"); + } + + @Test + public void testSimpleControls() { + assertIsControl("//a//", "", C("a")); + assertIsControl("//a;b//", "", C("a"), C("b")); + assertIsControl("//a;b;c//", "", C("a"), C("b"), C("c")); + } + + @Test + public void testArgedControls() { + assertIsControl("//a/b//", "", C("a", "b")); + assertIsControl("//a/b;c//", "", C("a", "b"), C("c")); + assertIsControl("//a/b;c/1/2//", "", C("a", "b"), C("c", "1", "2")); + } + + @Test + public void testMixedControls() { + assertIsControl("//a//b", "b", C("a")); + } +} |
