@Generates private static <E> ImmutableMultiset<E> generateImmutableMultiset(E freshElement) { return ImmutableMultiset.of(freshElement); }
static <E> ImmutableMultiset<E> copyFromEntries( Collection<? extends Entry<? extends E>> entries) { if (entries.isEmpty()) { return of(); } else { return RegularImmutableMultiset.create(entries); } }
@VisibleForTesting ImmutableMultiset<E> buildJdkBacked() { if (contents.isEmpty()) { return of(); } return JdkBackedImmutableMultiset.create(contents.entrySet()); } }
public void testEquals() { new EqualsTester() .addEqualityGroup(ImmutableMultiset.of(), ImmutableMultiset.of()) .addEqualityGroup(ImmutableMultiset.of(1), ImmutableMultiset.of(1)) .addEqualityGroup(ImmutableMultiset.of(1, 1), ImmutableMultiset.of(1, 1)) .addEqualityGroup(ImmutableMultiset.of(1, 2, 1), ImmutableMultiset.of(2, 1, 1)) .testEquals(); }
public void testEquals_immutableMultiset() { Collection<String> c = ImmutableMultiset.of("a", "b", "a"); assertEquals(c, ImmutableMultiset.of("a", "b", "a")); assertEquals(c, ImmutableMultiset.of("a", "a", "b")); assertThat(c).isNotEqualTo(ImmutableMultiset.of("a", "b")); assertThat(c).isNotEqualTo(ImmutableMultiset.of("a", "b", "c", "d")); }
public void testCreation_arrayOfArray() { String[] array = new String[] {"a"}; Multiset<String[]> multiset = ImmutableMultiset.<String[]>of(array); Multiset<String[]> expected = HashMultiset.create(); expected.add(array); assertEquals(expected, multiset); }
public void testCreation_oneElement() { Multiset<String> multiset = ImmutableMultiset.of("a"); assertEquals(HashMultiset.create(asList("a")), multiset); }
public void testBuilderAddAllImmutableMultiset() { Multiset<String> a = ImmutableMultiset.of("a", "b", "b"); Multiset<String> b = ImmutableMultiset.of("c", "b"); ImmutableMultiset<String> multiset = new ImmutableMultiset.Builder<String>().addAll(a).addAll(b).build(); assertEquals(HashMultiset.create(asList("a", "b", "b", "b", "c")), multiset); }
@GwtIncompatible // SerializableTester public void testSerialization_entrySet() { Multiset<String> c = ImmutableMultiset.of("a", "b", "c"); SerializableTester.reserializeAndAssert(c.entrySet()); }
@GwtIncompatible // SerializableTester public void testSerialization_empty() { Collection<String> c = ImmutableMultiset.of(); assertSame(c, SerializableTester.reserialize(c)); }
@GwtIncompatible // SerializableTester public void testSerialization_multiple() { Collection<String> c = ImmutableMultiset.of("a", "b", "a"); Collection<String> copy = SerializableTester.reserializeAndAssert(c); assertThat(copy).containsExactly("a", "a", "b").inOrder(); }
@GwtIncompatible // SerializableTester public void testSerialization_asList() { ImmutableMultiset<String> multiset = ImmutableMultiset.of("a", "a", "b", "b", "b"); SerializableTester.reserializeAndAssert(multiset.asList()); }
@GwtIncompatible // SerializableTester public void testSerialization_elementSet() { Multiset<String> c = ImmutableMultiset.of("a", "b", "a"); Collection<String> copy = LenientSerializableTester.reserializeAndAssertLenient(c.elementSet()); assertThat(copy).containsExactly("a", "b").inOrder(); }
public void testToImmutableMultiset() { BiPredicate<ImmutableMultiset<String>, ImmutableMultiset<String>> equivalence = (ms1, ms2) -> ms1.equals(ms2) && ms1.entrySet().asList().equals(ms2.entrySet().asList()); CollectorTester.of(ImmutableMultiset.<String>toImmutableMultiset(), equivalence) .expectCollects(ImmutableMultiset.of()) .expectCollects( ImmutableMultiset.of("a", "a", "b", "c", "c", "c"), "a", "a", "b", "c", "c", "c"); }
public void testHighestCountFirst() { Multiset<String> multiset = HashMultiset.create(Arrays.asList("a", "a", "a", "b", "c", "c")); ImmutableMultiset<String> sortedMultiset = Multisets.copyHighestCountFirst(multiset); assertThat(sortedMultiset.entrySet()) .containsExactly( Multisets.immutableEntry("a", 3), Multisets.immutableEntry("c", 2), Multisets.immutableEntry("b", 1)) .inOrder(); assertThat(sortedMultiset).containsExactly("a", "a", "a", "c", "c", "b").inOrder(); assertThat(Multisets.copyHighestCountFirst(ImmutableMultiset.of())).isEmpty(); }
public void testAsList() { ImmutableMultiset<String> multiset = ImmutableMultiset.of("a", "a", "b", "b", "b"); ImmutableList<String> list = multiset.asList(); assertEquals(ImmutableList.of("a", "a", "b", "b", "b"), list); assertEquals(2, list.indexOf("b")); assertEquals(4, list.lastIndexOf("b")); }
@SuppressWarnings("deprecation") public void testUnmodifiableMultisetShortCircuit() { Multiset<String> mod = HashMultiset.create(); Multiset<String> unmod = Multisets.unmodifiableMultiset(mod); assertNotSame(mod, unmod); assertSame(unmod, Multisets.unmodifiableMultiset(unmod)); ImmutableMultiset<String> immutable = ImmutableMultiset.of("a", "a", "b", "a"); assertSame(immutable, Multisets.unmodifiableMultiset(immutable)); assertSame(immutable, Multisets.unmodifiableMultiset((Multiset<String>) immutable)); }
public void testFrequency_multiset() { Multiset<String> multiset = ImmutableMultiset.of("a", "b", "a", "c", "b", "a"); assertEquals(3, Iterables.frequency(multiset, "a")); assertEquals(2, Iterables.frequency(multiset, "b")); assertEquals(1, Iterables.frequency(multiset, "c")); assertEquals(0, Iterables.frequency(multiset, "d")); assertEquals(0, Iterables.frequency(multiset, 4.2)); assertEquals(0, Iterables.frequency(multiset, null)); }