Author: msahyoun Date: Wed Dec 25 13:02:45 2019 New Revision: 1871969 URL: http://svn.apache.org/viewvc?rev=1871969&view=rev Log: PDFBOX-4669: add passing test for removal of direct objects
Modified: pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/COSArrayListTest.java Modified: pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/COSArrayListTest.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/COSArrayListTest.java?rev=1871969&r1=1871968&r2=1871969&view=diff ============================================================================== --- pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/COSArrayListTest.java (original) +++ pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/common/COSArrayListTest.java Wed Dec 25 13:02:45 2019 @@ -289,4 +289,28 @@ public class COSArrayListTest { // this call should fail assertThrows(UnsupportedOperationException.class, () -> cosArrayList.remove(toBeRemoved)); } + + @Test + public void removeDirectObject() { + + COSArrayList<String> cosArrayList = new COSArrayList<>(); + + // add a string to the COSArrayList + // with a duplicate entry + cosArrayList.add("A"); + cosArrayList.add("A"); + cosArrayList.add("B"); + cosArrayList.add("C"); + + assertTrue("List size shall be 4", cosArrayList.size() == 4); + assertTrue("Internal COSArray size shall be 4", cosArrayList.toList().size() == 4); + + ArrayList<String> toBeRemoved = new ArrayList<>(); + toBeRemoved.add("A"); + + cosArrayList.removeAll(toBeRemoved); + + assertTrue("List size shall be 2", cosArrayList.size() == 2); + assertTrue("Internal COSArray size shall be 2", cosArrayList.toList().size() == 2); + } } \ No newline at end of file