Skip to content

Commit

Permalink
fix primitive hash map values collections remove for special key zero
Browse files Browse the repository at this point in the history
  • Loading branch information
mohrezaei committed Jul 12, 2021
1 parent e49c474 commit 72915de
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1264,6 +1264,9 @@ public class <name1><name2>HashMap extends AbstractMutable<name2>ValuesMap imple
{
<name1><name2>HashMap.this.removeKey(EMPTY_KEY);
}
}
if (<name1><name2>HashMap.this.sentinelValues != null)
{
if (<name1><name2>HashMap.this.sentinelValues.containsOneKey && <(equals.(type2))({item}, {<name1><name2>HashMap.this.sentinelValues.oneValue})>)
{
<name1><name2>HashMap.this.removeKey(REMOVED_KEY);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,16 @@ public class <name1><name2>HashMapValuesTest extends AbstractMutable<name2>Colle
Assert.assertFalse(map.contains(<(literal.(type2))("2")>));
Assert.assertFalse(map.contains(<(literal.(type2))("3")>));
Assert.assertTrue(map.isEmpty());

map = <name1><name2>HashMap.newWithKeysValues(<["0", "2", "3"]:keyValue(); separator=", ">);
collection = map.values();
Assert.assertTrue(collection.removeAll(<(literal.(type2))("0")>, <(literal.(type2))("5")>));
Assert.assertFalse(collection.contains(<(literal.(type2))("0")>));
Assert.assertTrue(collection.contains(<(literal.(type2))("2")>));
Assert.assertTrue(collection.contains(<(literal.(type2))("3")>));
Assert.assertFalse(map.contains(<(literal.(type2))("0")>));
Assert.assertTrue(map.contains(<(literal.(type2))("2")>));
Assert.assertTrue(map.contains(<(literal.(type2))("3")>));
}

@Override
Expand Down

0 comments on commit 72915de

Please sign in to comment.