commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Vahrst (JIRA)" <>
Subject [jira] [Created] (COLLECTIONS-444) SetUniqueList may become inconsistent
Date Mon, 25 Feb 2013 16:10:13 GMT
Thomas Vahrst created COLLECTIONS-444:

             Summary: SetUniqueList may become inconsistent
                 Key: COLLECTIONS-444
             Project: Commons Collections
          Issue Type: Bug
          Components: List
    Affects Versions: 3.2.1
            Reporter: Thomas Vahrst

I found this bug during my work on issue COLLECTIONS-310 : 

When you 'set' an element to a position that contains this element, it is removed from the
internal set. This leads to the situation that 
- invocing get() returns the element
- invocing contains() returns false.

Extending the existing test method for set:
   public void testSet() {
        final SetUniqueList<E> lset = new SetUniqueList<E>(new ArrayList<E>(),
new HashSet<E>());

        // Duplicate element
        final E obj1 = (E) new Integer(1);
        final E obj2 = (E) new Integer(2);
        final E obj3 = (E) new Integer(3);

        lset.set(0, obj1);
        assertEquals(2, lset.size());
        assertSame(obj1, lset.get(0));
        assertSame(obj2, lset.get(1));

        assertTrue(lset.contains(obj1));  // fails !


This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message