diff --git a/src/test/java/org/apache/commons/collections4/map/MultiKeyMapTest.java b/src/test/java/org/apache/commons/collections4/map/MultiKeyMapTest.java index 9c5238b3e5..c532dba3cf 100644 --- a/src/test/java/org/apache/commons/collections4/map/MultiKeyMapTest.java +++ b/src/test/java/org/apache/commons/collections4/map/MultiKeyMapTest.java @@ -489,6 +489,45 @@ void testMultiKeyRemoveAll4() { } } + @Test + void testClassCastExceptionOnNonMultiKey() { + final MultiKeyMap map = new MultiKeyMap<>(); + final Object nonMultiKey = "test"; + assertThrows(ClassCastException.class, () -> map.put((MultiKey) nonMultiKey, "value")); + } + + @Test + void testMultiKeyMapNullMap() { + assertThrows(NullPointerException.class, () -> MultiKeyMap.multiKeyMap(null)); + } + + @Test + void testMultiKeyRemoveAll_ReturnsTrueWhenEntriesRemoved() { + resetFull(); + final MultiKeyMap multimap = getMap(); + assertEquals(12, multimap.size()); + + final boolean result = multimap.removeAll(I1); + assertEquals(8, multimap.size()); + assertTrue(result); + + for (final MapIterator, V> it = multimap.mapIterator(); it.hasNext();) { + final MultiKey key = it.next(); + assertFalse(I1.equals(key.getKey(0))); + } + } + + @Test + void testMultiKeyRemoveAll_ReturnsFalseWhenNoEntriesRemoved() { + resetFull(); + final MultiKeyMap multimap = getMap(); + assertEquals(12, multimap.size()); + + final boolean result = multimap.removeAll(new Object()); + assertEquals(12, multimap.size()); + assertFalse(result); + } + @Test @SuppressWarnings("unchecked") void testNullHandling() { diff --git a/src/test/java/org/apache/commons/collections4/queue/CircularFifoQueueTest.java b/src/test/java/org/apache/commons/collections4/queue/CircularFifoQueueTest.java index 35340d6e27..b477bb4407 100644 --- a/src/test/java/org/apache/commons/collections4/queue/CircularFifoQueueTest.java +++ b/src/test/java/org/apache/commons/collections4/queue/CircularFifoQueueTest.java @@ -451,6 +451,26 @@ void testRepeatedSerialization() throws Exception { // writeExternalFormToDisk((java.io.Serializable) getCollection(), "src/test/resources/data/test/CircularFifoQueue.fullCollection.version4.obj"); // } + @Test + void testAddAlwaysReturnsTrue() { + final CircularFifoQueue queue = new CircularFifoQueue<>(3); + queue.add((E) "1"); + queue.add((E) "2"); + queue.add((E) "3"); + assertTrue(queue.add((E) "4")); + assertTrue(queue.add((E) "5")); + } + + @Test + void testIsEmpty() { + final CircularFifoQueue queue = new CircularFifoQueue<>(10); + assertTrue(queue.isEmpty()); + queue.add("test"); + assertFalse(queue.isEmpty()); + queue.remove("test"); + assertTrue(queue.isEmpty()); + } + /** * Runs through the regular verifications, but also verifies that * the buffer contains the same elements in the same sequence as the