Class HashCodeAndEqualsSafeSet
- java.lang.Object
-
- org.mockito.internal.util.collections.HashCodeAndEqualsSafeSet
-
- All Implemented Interfaces:
java.lang.Iterable<java.lang.Object>
,java.util.Collection<java.lang.Object>
,java.util.Set<java.lang.Object>
public class HashCodeAndEqualsSafeSet extends java.lang.Object implements java.util.Set<java.lang.Object>
hashCode and equals safe hash based set.Useful for holding mocks that have un-stubbable hashCode or equals method, meaning that in this scenario the real code is always called and will most probably cause an
NullPointerException
.This collection wraps the mock in an augmented type
HashCodeAndEqualsMockWrapper
that have his own implementation.- See Also:
HashCodeAndEqualsMockWrapper
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.HashSet<HashCodeAndEqualsMockWrapper>
backingHashSet
-
Constructor Summary
Constructors Constructor Description HashCodeAndEqualsSafeSet()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(java.lang.Object mock)
boolean
addAll(java.util.Collection<?> mocks)
private java.util.HashSet<HashCodeAndEqualsMockWrapper>
asWrappedMocks(java.util.Collection<?> mocks)
void
clear()
java.lang.Object
clone()
boolean
contains(java.lang.Object mock)
boolean
containsAll(java.util.Collection<?> mocks)
boolean
equals(java.lang.Object o)
int
hashCode()
boolean
isEmpty()
java.util.Iterator<java.lang.Object>
iterator()
static HashCodeAndEqualsSafeSet
of(java.lang.Iterable<java.lang.Object> objects)
static HashCodeAndEqualsSafeSet
of(java.lang.Object... mocks)
boolean
remove(java.lang.Object mock)
boolean
removeAll(java.util.Collection<?> mocks)
boolean
retainAll(java.util.Collection<?> mocks)
int
size()
java.lang.Object[]
toArray()
<T> T[]
toArray(T[] typedArray)
java.lang.String
toString()
private <T> T[]
unwrapTo(T[] array)
-
-
-
Field Detail
-
backingHashSet
private final java.util.HashSet<HashCodeAndEqualsMockWrapper> backingHashSet
-
-
Method Detail
-
iterator
public java.util.Iterator<java.lang.Object> iterator()
- Specified by:
iterator
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
iterator
in interfacejava.lang.Iterable<java.lang.Object>
- Specified by:
iterator
in interfacejava.util.Set<java.lang.Object>
-
size
public int size()
- Specified by:
size
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
size
in interfacejava.util.Set<java.lang.Object>
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
isEmpty
in interfacejava.util.Set<java.lang.Object>
-
contains
public boolean contains(java.lang.Object mock)
- Specified by:
contains
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
contains
in interfacejava.util.Set<java.lang.Object>
-
add
public boolean add(java.lang.Object mock)
- Specified by:
add
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
add
in interfacejava.util.Set<java.lang.Object>
-
remove
public boolean remove(java.lang.Object mock)
- Specified by:
remove
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
remove
in interfacejava.util.Set<java.lang.Object>
-
clear
public void clear()
- Specified by:
clear
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
clear
in interfacejava.util.Set<java.lang.Object>
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
- Overrides:
clone
in classjava.lang.Object
- Throws:
java.lang.CloneNotSupportedException
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
equals
in interfacejava.util.Set<java.lang.Object>
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
hashCode
in interfacejava.util.Set<java.lang.Object>
- Overrides:
hashCode
in classjava.lang.Object
-
toArray
public java.lang.Object[] toArray()
- Specified by:
toArray
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
toArray
in interfacejava.util.Set<java.lang.Object>
-
toArray
public <T> T[] toArray(T[] typedArray)
- Specified by:
toArray
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
toArray
in interfacejava.util.Set<java.lang.Object>
-
unwrapTo
private <T> T[] unwrapTo(T[] array)
-
removeAll
public boolean removeAll(java.util.Collection<?> mocks)
- Specified by:
removeAll
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
removeAll
in interfacejava.util.Set<java.lang.Object>
-
containsAll
public boolean containsAll(java.util.Collection<?> mocks)
- Specified by:
containsAll
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
containsAll
in interfacejava.util.Set<java.lang.Object>
-
addAll
public boolean addAll(java.util.Collection<?> mocks)
- Specified by:
addAll
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
addAll
in interfacejava.util.Set<java.lang.Object>
-
retainAll
public boolean retainAll(java.util.Collection<?> mocks)
- Specified by:
retainAll
in interfacejava.util.Collection<java.lang.Object>
- Specified by:
retainAll
in interfacejava.util.Set<java.lang.Object>
-
asWrappedMocks
private java.util.HashSet<HashCodeAndEqualsMockWrapper> asWrappedMocks(java.util.Collection<?> mocks)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
of
public static HashCodeAndEqualsSafeSet of(java.lang.Object... mocks)
-
of
public static HashCodeAndEqualsSafeSet of(java.lang.Iterable<java.lang.Object> objects)
-
-