From ce8a364f46a4124b190cef7a09b402c7ead22634 Mon Sep 17 00:00:00 2001 From: nik Date: Mon, 15 Feb 2016 12:55:19 +0300 Subject: [PATCH] added test on LockFreeCopyOnWriteArrayList --- .../intellij/util/containers/ContainerUtilTest.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/platform/platform-tests/testSrc/com/intellij/util/containers/ContainerUtilTest.java b/platform/platform-tests/testSrc/com/intellij/util/containers/ContainerUtilTest.java index 172afcafe4aa..c314f14fa168 100644 --- a/platform/platform-tests/testSrc/com/intellij/util/containers/ContainerUtilTest.java +++ b/platform/platform-tests/testSrc/com/intellij/util/containers/ContainerUtilTest.java @@ -252,6 +252,16 @@ public class ContainerUtilTest extends TestCase { assertSame(EmptyIterator.getInstance(), iterator); } + public void testIdenticalItemsInLockFreeCOW() { + List list = ContainerUtil.createLockFreeCopyOnWriteList(Arrays.asList("a", "b")); + list.add("a"); + assertEquals(3, list.size()); + list.remove("a"); + assertEquals(2, list.size()); + list.remove("a"); + assertEquals(1, list.size()); + } + public void testLockFreeCOWIteratorRemove() { List seq = Arrays.asList("0", "1", "2", "3", "4"); LockFreeCopyOnWriteArrayList my = (LockFreeCopyOnWriteArrayList)ContainerUtil.createLockFreeCopyOnWriteList(seq);