From 843329de434bb334d90927c4d22345373a388530 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Tue, 2 Jul 2019 18:05:22 -0400 Subject: Rename package root The package root is now bjc, not io.github.bculkin2442. --- .../github/bculkin2442/data/BooleanToggleTest.java | 38 +++++++++++ .../bculkin2442/data/CircularIteratorTest.java | 49 ++++++++++++++ .../bculkin2442/data/QueuedIteratorTest.java | 74 ++++++++++++++++++++++ 3 files changed, 161 insertions(+) create mode 100644 src/test/java/io/github/bculkin2442/data/BooleanToggleTest.java create mode 100644 src/test/java/io/github/bculkin2442/data/CircularIteratorTest.java create mode 100644 src/test/java/io/github/bculkin2442/data/QueuedIteratorTest.java (limited to 'src/test/java/io/github/bculkin2442/data') diff --git a/src/test/java/io/github/bculkin2442/data/BooleanToggleTest.java b/src/test/java/io/github/bculkin2442/data/BooleanToggleTest.java new file mode 100644 index 0000000..8211117 --- /dev/null +++ b/src/test/java/io/github/bculkin2442/data/BooleanToggleTest.java @@ -0,0 +1,38 @@ +package io.github.bculkin2442.data; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +import bjc.data.BooleanToggle; + +/** + * Test for boolean toggles. + * @author bjculkin + * + */ +public class BooleanToggleTest { + + /** + * Test that boolean toggles work right. + */ + @Test + public void test() { + BooleanToggle tog = new BooleanToggle(); + + // Check initial value is false. + assertEquals(false, tog.peek()); + // Check that 'get' returns the old value + assertEquals(false, tog.get()); + // Check that 'get' swaps the value + assertEquals(true, tog.peek()); + // Check that we can round-trip back. + assertEquals(true, tog.get()); + assertEquals(false, tog.peek()); + + tog.set(true); + + // Check set works + assertEquals(true, tog.peek()); + } +} diff --git a/src/test/java/io/github/bculkin2442/data/CircularIteratorTest.java b/src/test/java/io/github/bculkin2442/data/CircularIteratorTest.java new file mode 100644 index 0000000..80fbb54 --- /dev/null +++ b/src/test/java/io/github/bculkin2442/data/CircularIteratorTest.java @@ -0,0 +1,49 @@ +package io.github.bculkin2442.data; + +import java.util.Arrays; +import java.util.List; + +import org.junit.Test; + +import bjc.data.CircularIterator; + +import static io.github.bculkin2442.TestUtils.*; +/** + * Test for circular iterators., + * + * @author bjculkin + * + */ +public class CircularIteratorTest { + /** + * Test regular repetition of the entire iterator. + */ + @Test + public void testRegular() { + List lst = Arrays.asList("a", "b", "c"); + + CircularIterator itr = new CircularIterator<>(lst); + + // Check we get initial values correctly, and have more remaining + assertIteratorEquals(true, itr, "a", "b", "c"); + + // Check we repeat correctly, and can still repeat + assertIteratorEquals(true, itr, "a", "b", "c"); + } + + /** + * Test that the last element repeats correctly. + */ + @Test + public void testRepLast() { + List lst = Arrays.asList("a", "b", "c"); + + CircularIterator itr = new CircularIterator<>(lst, false); + + // Check we get initial values correctly, and have more remaining + assertIteratorEquals(true, itr, "a", "b", "c"); + + // Check we repeat correctly, and can still repeat + assertIteratorEquals(true, itr, "c", "c", "c"); + } +} diff --git a/src/test/java/io/github/bculkin2442/data/QueuedIteratorTest.java b/src/test/java/io/github/bculkin2442/data/QueuedIteratorTest.java new file mode 100644 index 0000000..0c1144b --- /dev/null +++ b/src/test/java/io/github/bculkin2442/data/QueuedIteratorTest.java @@ -0,0 +1,74 @@ +package io.github.bculkin2442.data; + +import static java.util.Arrays.asList; + +import org.junit.Test; + +import bjc.data.QueuedIterator; + +import static bjc.data.QueuedIterator.queued; +import static io.github.bculkin2442.TestUtils.*; + +/** + * Test of QueuedIterator. + * + * @author bjculkin + * + */ +public class QueuedIteratorTest { + + /** + * Test of functionality. + */ + @Test + public void test() { + assertIteratorEquals(false, queued()); + + assertIteratorEquals(false, queued(1, 2, 3), 1, 2, 3); + assertIteratorEquals(false, queued(asList(1, 2, 3), asList(3, 2, 1)), 1, 2, 3, 3, 2, 1); + + } + + /** + * Test of before() method. + */ + @Test + public void testBefore() { + QueuedIterator itr = queued(1, 2, 3); + + assertIteratorEquals(true, itr, 1, 2); + + itr.before(1, 2, 3); + + assertIteratorEquals(false, itr, 1, 2, 3, 3); + } + + /** + * Test of after() method. + */ + @Test + public void testAfter() { + QueuedIterator itr = queued(1, 2, 3); + + assertIteratorEquals(true, itr, 1, 2); + + itr.after(1, 2, 3); + + assertIteratorEquals(false, itr, 3, 1, 2, 3); + } + + /** + * Test of last() method. + */ + @Test + public void testLast() { + QueuedIterator itr = queued(1, 2, 3); + + assertIteratorEquals(true, itr, 1, 2); + + itr.after(4); + itr.last(1, 2, 3); + + assertIteratorEquals(false, itr, 3, 4, 1, 2, 3); + } +} -- cgit v1.2.3