@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationTriConsumerPutValue() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new TriConsumer<String, Object, Object>() { @Override public void accept(final String s, final Object o, final Object o2) { original.putValue("c", "other"); } }, null); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationTriConsumerPut() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new TriConsumer<String, Object, Object>() { @Override public void accept(final String s, final Object o, final Object o2) { original.putValue("c", "other"); } }, null); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationTriConsumerClear() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new TriConsumer<String, Object, Object>() { @Override public void accept(final String s, final Object o, final Object o2) { original.clear(); } }, null); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationBiConsumerPut() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new BiConsumer<String, Object>() { @Override public void accept(final String s, final Object o) { original.putValue("c", "other"); } }); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationBiConsumerPutValue() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new BiConsumer<String, Object>() { @Override public void accept(final String s, final Object o) { original.putValue("c", "other"); } }); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationBiConsumerRemove() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new BiConsumer<String, Object>() { @Override public void accept(final String s, final Object o) { original.remove("a"); } }); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationBiConsumerClear() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new BiConsumer<String, Object>() { @Override public void accept(final String s, final Object o) { original.clear(); } }); }
@Test(expected = ConcurrentModificationException.class) public void testConcurrentModificationTriConsumerRemove() { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "aaa"); original.forEach(new TriConsumer<String, Object, Object>() { @Override public void accept(final String s, final Object o, final Object o2) { original.remove("a"); } }, null); }
@Test public void testForEachBiConsumer() throws Exception { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "avalue"); original.putValue("B", "Bvalue"); original.putValue("3", "3value"); original.forEach(new BiConsumer<String, String>() { int count = 0; @Override public void accept(final String key, final String value) { assertEquals("key", key, original.getKeyAt(count)); assertEquals("val", value, original.getValueAt(count)); count++; assertTrue("count should not exceed size but was " + count, count <= original.size()); } }); }
@Test public void testForEachTriConsumer() throws Exception { final SortedArrayStringMap original = new SortedArrayStringMap(); original.putValue("a", "avalue"); original.putValue("B", "Bvalue"); original.putValue("3", "3value"); final State state = new State(); state.data = original; original.forEach(COUNTER, state); assertEquals(state.count, original.size()); } }