assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); assertIteratorIsUnmodifiable(collection.iterator()); assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection);
private static <T> void assertUnmodifiableIterableInTandem( Iterable<T> unmodifiable, Iterable<T> modifiable) { UnmodifiableCollectionTests.assertIteratorIsUnmodifiable(unmodifiable.iterator()); UnmodifiableCollectionTests.assertIteratorsInOrder( unmodifiable.iterator(), modifiable.iterator()); }
assertMultimapRemainsUnmodified(multimap, originalEntries); assertMultimapRemainsUnmodified(multimap, originalEntries); assertSetIsUnmodifiable( multimap.asMap().entrySet(), Maps.immutableEntry(sampleKey, sampleValueAsCollection)); assertMultimapRemainsUnmodified(multimap, originalEntries); if (!multimap.isEmpty()) { Collection<V> values = multimap.asMap().entrySet().iterator().next().getValue(); assertCollectionIsUnmodifiable(values, sampleValue); assertCollectionIsUnmodifiable(multimap.entries(), Maps.immutableEntry(sampleKey, sampleValue)); assertMultimapRemainsUnmodified(multimap, originalEntries); assertMapEntryIsUnmodifiable(entry); assertMultimapRemainsUnmodified(multimap, originalEntries); assertMultisetIsUnmodifiable(multimap.keys(), sampleKey); assertMultimapRemainsUnmodified(multimap, originalEntries); assertSetIsUnmodifiable(multimap.keySet(), sampleKey); assertMultimapRemainsUnmodified(multimap, originalEntries); assertCollectionIsUnmodifiable(multimap.get(key), sampleValue); assertMultimapRemainsUnmodified(multimap, originalEntries);
assertCollectionsAreEquivalent(multiset, copy); assertCollectionIsUnmodifiable(multiset, sampleElement); assertCollectionsAreEquivalent(multiset, copy); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(multiset, copy); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(multiset, copy); assertCollectionsAreEquivalent(multiset, copy); assertSetIsUnmodifiable(multiset.elementSet(), sampleElement); assertCollectionsAreEquivalent(multiset, copy); assertSetIsUnmodifiable( multiset.entrySet(), new Multiset.Entry<E>() { assertCollectionsAreEquivalent(multiset, copy);
private static <E> void assertCollectionsAreEquivalent( Collection<E> expected, Collection<E> actual) { assertIteratorsInOrder(expected.iterator(), actual.iterator()); }
public void testMultisetWrites() { Multiset<String> multiset = ImmutableMultiset.of("a", "b", "a"); UnmodifiableCollectionTests.assertMultisetIsUnmodifiable(multiset, "test"); }
/** * Verifies that a set is immutable. * * <p>A set is considered immutable if: * * <ol> * <li>All its mutation methods result in UnsupportedOperationException, and do not change the * underlying contents. * <li>All methods that return objects that can indirectly mutate the set throw * UnsupportedOperationException when those mutators are called. * </ol> * * @param set the presumed-immutable set * @param sampleElement an element of the same type as that contained by {@code set}. {@code set} * may or may not have {@code sampleElement} as a member. */ public static <E> void assertSetIsUnmodifiable(Set<E> set, E sampleElement) { assertCollectionIsUnmodifiable(set, sampleElement); }
public void testMultimapWrites() { Multimap<String, Integer> multimap = createMultimap(); UnmodifiableCollectionTests.assertMultimapIsUnmodifiable(multimap, "bar", 2); }
assertCollectionsAreEquivalent(multiset, copy); assertCollectionIsUnmodifiable(multiset, sampleElement); assertCollectionsAreEquivalent(multiset, copy); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(multiset, copy); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(multiset, copy); assertCollectionsAreEquivalent(multiset, copy); assertSetIsUnmodifiable(multiset.elementSet(), sampleElement); assertCollectionsAreEquivalent(multiset, copy); assertSetIsUnmodifiable( multiset.entrySet(), new Multiset.Entry<E>() { assertCollectionsAreEquivalent(multiset, copy);
private static <K, V> void assertMultimapRemainsUnmodified( Multimap<K, V> expected, List<Entry<K, V>> actual) { assertIteratorsInOrder(expected.entries().iterator(), actual.iterator()); } }
public void testMultisetWrites() { Multiset<String> multiset = ImmutableSortedMultiset.of("a", "b", "a"); UnmodifiableCollectionTests.assertMultisetIsUnmodifiable(multiset, "test"); }
/** * Verifies that a set is immutable. * * <p>A set is considered immutable if: * * <ol> * <li>All its mutation methods result in UnsupportedOperationException, and do not change the * underlying contents. * <li>All methods that return objects that can indirectly mutate the set throw * UnsupportedOperationException when those mutators are called. * </ol> * * @param set the presumed-immutable set * @param sampleElement an element of the same type as that contained by {@code set}. {@code set} * may or may not have {@code sampleElement} as a member. */ public static <E> void assertSetIsUnmodifiable(Set<E> set, E sampleElement) { assertCollectionIsUnmodifiable(set, sampleElement); }
public void testEmptyMultimapWrites() { Multimap<String, Integer> multimap = ImmutableListMultimap.of(); UnmodifiableCollectionTests.assertMultimapIsUnmodifiable(multimap, "foo", 1); }
assertMultimapRemainsUnmodified(multimap, originalEntries); assertMultimapRemainsUnmodified(multimap, originalEntries); assertSetIsUnmodifiable( multimap.asMap().entrySet(), Maps.immutableEntry(sampleKey, sampleValueAsCollection)); assertMultimapRemainsUnmodified(multimap, originalEntries); if (!multimap.isEmpty()) { Collection<V> values = multimap.asMap().entrySet().iterator().next().getValue(); assertCollectionIsUnmodifiable(values, sampleValue); assertCollectionIsUnmodifiable(multimap.entries(), Maps.immutableEntry(sampleKey, sampleValue)); assertMultimapRemainsUnmodified(multimap, originalEntries); assertMapEntryIsUnmodifiable(entry); assertMultimapRemainsUnmodified(multimap, originalEntries); assertMultisetIsUnmodifiable(multimap.keys(), sampleKey); assertMultimapRemainsUnmodified(multimap, originalEntries); assertSetIsUnmodifiable(multimap.keySet(), sampleKey); assertMultimapRemainsUnmodified(multimap, originalEntries); assertCollectionIsUnmodifiable(multimap.get(key), sampleValue); assertMultimapRemainsUnmodified(multimap, originalEntries);
final E sampleElement) { Multiset<E> copy = LinkedHashMultiset.create(multiset); assertCollectionsAreEquivalent(multiset, copy); assertCollectionIsUnmodifiable(multiset, sampleElement); assertCollectionsAreEquivalent(multiset, copy); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(multiset, copy); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(multiset, copy); assertCollectionsAreEquivalent(multiset, copy); assertSetIsUnmodifiable(multiset.elementSet(), sampleElement); assertCollectionsAreEquivalent(multiset, copy); assertSetIsUnmodifiable( multiset.entrySet(), new Multiset.Entry<E>() { @Override assertCollectionsAreEquivalent(multiset, copy);
assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); assertIteratorIsUnmodifiable(collection.iterator()); assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection); } catch (UnsupportedOperationException expected) { assertCollectionsAreEquivalent(copy, collection);
private static <T> void assertUnmodifiableIterableInTandem( Iterable<T> unmodifiable, Iterable<T> modifiable) { UnmodifiableCollectionTests.assertIteratorIsUnmodifiable( unmodifiable.iterator()); UnmodifiableCollectionTests.assertIteratorsInOrder( unmodifiable.iterator(), modifiable.iterator()); }
private static <E> void assertCollectionsAreEquivalent( Collection<E> expected, Collection<E> actual) { assertIteratorsInOrder(expected.iterator(), actual.iterator()); }
public void testMultisetWrites() { Multiset<String> multiset = ImmutableSortedMultiset.of("a", "b", "a"); UnmodifiableCollectionTests.assertMultisetIsUnmodifiable(multiset, "test"); }
/** * Verifies that a set is immutable. * * <p>A set is considered immutable if: * <ol> * <li>All its mutation methods result in UnsupportedOperationException, and * do not change the underlying contents. * <li>All methods that return objects that can indirectly mutate the * set throw UnsupportedOperationException when those mutators * are called. * </ol> * * @param set the presumed-immutable set * @param sampleElement an element of the same type as that contained by * {@code set}. {@code set} may or may not have {@code sampleElement} as a * member. */ public static <E> void assertSetIsUnmodifiable( Set<E> set, E sampleElement) { assertCollectionIsUnmodifiable(set, sampleElement); }