summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Culkin <scorpress@gmail.com>2020-11-08 19:50:55 -0500
committerBen Culkin <scorpress@gmail.com>2020-11-08 19:50:55 -0500
commitbbddfcafec1b72972e1f925048ddbe715411798d (patch)
tree763c9a4ea515503a0a6030a13424c5c8d77bea7e
parent169c7404bef2838d86c49f721e0f6e7e06938db1 (diff)
Add some additional tests
-rw-r--r--src/main/java/bjc/data/ArrayIterator.java3
-rw-r--r--src/main/java/bjc/data/BooleanToggle.java15
-rw-r--r--src/test/java/bjc/data/ArrayIteratorTest.java33
-rw-r--r--src/test/java/bjc/data/BooleanToggleTest.java8
-rw-r--r--src/test/java/bjc/data/CircularIteratorTest.java15
5 files changed, 58 insertions, 16 deletions
diff --git a/src/main/java/bjc/data/ArrayIterator.java b/src/main/java/bjc/data/ArrayIterator.java
index 6d11a1d..c5f68cc 100644
--- a/src/main/java/bjc/data/ArrayIterator.java
+++ b/src/main/java/bjc/data/ArrayIterator.java
@@ -34,8 +34,7 @@ public class ArrayIterator<T> implements Iterator<T> {
@SuppressWarnings("unchecked")
@Override
public T next() {
- if (idx >= arr.length)
- return null;
+ if (idx >= arr.length) return null;
return (T) (arr[idx++]);
}
diff --git a/src/main/java/bjc/data/BooleanToggle.java b/src/main/java/bjc/data/BooleanToggle.java
index 3e41d6d..e0286d4 100644
--- a/src/main/java/bjc/data/BooleanToggle.java
+++ b/src/main/java/bjc/data/BooleanToggle.java
@@ -59,19 +59,14 @@ public class BooleanToggle implements Toggle<Boolean> {
@Override
public boolean equals(final Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (!(obj instanceof BooleanToggle))
- return false;
+ if (this == obj) return true;
+ if (obj == null) return false;
+ if (!(obj instanceof BooleanToggle)) return false;
final BooleanToggle other = (BooleanToggle) obj;
- if (val != other.val)
- return false;
-
- return true;
+ if (val != other.val) return false;
+ else return true;
}
@Override
diff --git a/src/test/java/bjc/data/ArrayIteratorTest.java b/src/test/java/bjc/data/ArrayIteratorTest.java
new file mode 100644
index 0000000..223eea2
--- /dev/null
+++ b/src/test/java/bjc/data/ArrayIteratorTest.java
@@ -0,0 +1,33 @@
+/**
+ *
+ */
+package bjc.data;
+
+import static org.junit.Assert.*;
+
+import org.junit.*;
+
+/**
+ * Test ArrayIterator
+ * @author Ben Culkin
+ *
+ */
+public class ArrayIteratorTest {
+
+ /**
+ * Test ArrayIterator
+ */
+ @Test
+ public void test() {
+ ArrayIterator<String> itr = new ArrayIterator<>("a", "b", "c");
+
+ assertTrue(itr.hasNext());
+ assertEquals("a", itr.next());
+ assertEquals("b", itr.next());
+ assertEquals("c", itr.next());
+
+ assertFalse(itr.hasNext());
+ assertNull(itr.next());
+ }
+
+}
diff --git a/src/test/java/bjc/data/BooleanToggleTest.java b/src/test/java/bjc/data/BooleanToggleTest.java
index bd75a41..0b0937f 100644
--- a/src/test/java/bjc/data/BooleanToggleTest.java
+++ b/src/test/java/bjc/data/BooleanToggleTest.java
@@ -1,6 +1,6 @@
package bjc.data;
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.*;
import org.junit.Test;
@@ -40,6 +40,12 @@ public class BooleanToggleTest {
assertEquals(tog, tog2);
assertEquals(tog.hashCode(), tog2.hashCode());
+ // Swap toggle
+ tog2.get();
+
+ assertNotEquals(tog.hashCode(), tog2.hashCode());
+ assertNotEquals(tog, tog2);
+
// Test toString
assertEquals("true", tog.toString());
}
diff --git a/src/test/java/bjc/data/CircularIteratorTest.java b/src/test/java/bjc/data/CircularIteratorTest.java
index dfe2a17..8091e1c 100644
--- a/src/test/java/bjc/data/CircularIteratorTest.java
+++ b/src/test/java/bjc/data/CircularIteratorTest.java
@@ -1,9 +1,7 @@
package bjc.data;
import static bjc.TestUtils.*;
-
-import java.util.Arrays;
-import java.util.List;
+import java.util.*;
import org.junit.Test;
@@ -45,4 +43,15 @@ public class CircularIteratorTest {
// Check we repeat correctly, and can still repeat
assertIteratorEquals(true, itr, "c", "c", "c");
}
+
+ /**
+ * Test that remove throws an exception.
+ */
+ @Test(expected = UnsupportedOperationException.class)
+ public void testRemove() {
+ Iterator<String> arrayItr = new ArrayIterator<>("a", "b");
+ CircularIterator<String> itr = new CircularIterator<>(() -> arrayItr);
+
+ itr.remove();
+ }
}