Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (C) 2008 The Guava Authors
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   * http://www.apache.org/licenses/LICENSE-2.0
   *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package com.google.common.collect.testing.google;
 
 import static com.google.common.collect.testing.features.CollectionFeature.SUPPORTS_ADD;
 import static com.google.common.collect.testing.features.CollectionFeature.SUPPORTS_ITERATOR_REMOVE;
 import static com.google.common.collect.testing.features.CollectionFeature.SUPPORTS_REMOVE;
 import static com.google.common.collect.testing.features.CollectionSize.ONE;
 import static com.google.common.collect.testing.features.CollectionSize.SEVERAL;
 import static com.google.common.collect.testing.features.CollectionSize.ZERO;
 import static com.google.common.collect.testing.google.MultisetFeature.ENTRIES_ARE_VIEWS;
 
 
Tests for Multiset.entrySet.

Author(s):
Jared Levy
 
 public class MultisetEntrySetTester<E> extends AbstractMultisetTester<E> {
 
   public void testEntrySet_clear() {
     getMultiset().entrySet().clear();
     assertTrue("multiset not empty after entrySet().clear()",
         getMultiset().isEmpty());
   }
 
     Iterator<Multiset.Entry<E>> iterator = getMultiset().entrySet().iterator();
     assertTrue(
         "non-empty multiset.entrySet() iterator.hasNext() returned false",
         iterator.hasNext());
     assertEquals("multiset.entrySet() iterator.next() returned incorrect entry",
         Multisets.immutableEntry(., 1), iterator.next());
     assertFalse(
         "size 1 multiset.entrySet() iterator.hasNext() returned true "
             + "after next()",
         iterator.hasNext());
     iterator.remove();
     assertTrue(
         "multiset isn't empty after multiset.entrySet() iterator.remove()",
         getMultiset().isEmpty());
   }
 
   @CollectionSize.Require(absent = )
   public void testEntrySet_removePresent() {
     assertTrue(
         "multiset.entrySet.remove(presentEntry) returned false",
         getMultiset().entrySet().remove(
             Multisets.immutableEntry(., 1)));
     assertFalse(
         "multiset contains element after removing its entry",
         getMultiset().contains(.));
   }
 
   @CollectionSize.Require(absent = )
   public void testEntrySet_removeAbsent() {
     assertFalse(
         "multiset.entrySet.remove(missingEntry) returned true",
         getMultiset().entrySet().remove(
             Multisets.immutableEntry(., 2)));
     assertTrue(
         "multiset didn't contain element after removing a missing entry",
         getMultiset().contains(.));
   }
 
   @CollectionSize.Require(absent = )
   public void testEntrySet_removeAllPresent() {
     assertTrue(
         "multiset.entrySet.removeAll(presentEntry) returned false",
        getMultiset().entrySet().removeAll(
            Collections.singleton(Multisets.immutableEntry(., 1))));
        "multiset contains element after removing its entry",
        getMultiset().contains(.));
  }
  @CollectionSize.Require(absent = )
  public void testEntrySet_removeAllAbsent() {
        "multiset.entrySet.remove(missingEntry) returned true",
        getMultiset().entrySet().removeAll(
            Collections.singleton(Multisets.immutableEntry(., 2))));
    assertTrue(
        "multiset didn't contain element after removing a missing entry",
        getMultiset().contains(.));
  }
  public void testEntrySet_retainAllPresent() {
        "multiset.entrySet.retainAll(presentEntry) returned false",
        getMultiset().entrySet().retainAll(
            Collections.singleton(Multisets.immutableEntry(., 1))));
    assertTrue(
        "multiset doesn't contains element after retaining its entry",
        getMultiset().contains(.));
  }
  public void testEntrySet_retainAllAbsent() {
    assertTrue(
        "multiset.entrySet.retainAll(missingEntry) returned true",
        getMultiset().entrySet().retainAll(
            Collections.singleton(Multisets.immutableEntry(., 2))));
        "multiset contains element after retaining a different entry",
        getMultiset().contains(.));
  }
  
  public void testEntryViewReflectsRemove() {
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    assertEquals(2, entry.getCount());
    assertEquals(0, entry.getCount());
  }
  
  public void testEntryReflectsIteratorRemove() {
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    Iterator<E> itr = getMultiset().iterator();
    itr.next();
    itr.remove();
    assertEquals(2, entry.getCount());
    itr.next();
    itr.remove();
    itr.next();
    itr.remove();
    assertEquals(0, entry.getCount());
  }
  
  public void testEntryReflectsClear() {
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    getMultiset().clear();
    assertEquals(0, entry.getCount());
  }
  
  public void testEntryReflectsEntrySetClear() {
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    assertEquals(0, entry.getCount());
  }
  
    Iterator<Multiset.Entry<E>> entryItr = getMultiset().entrySet().iterator();
    Multiset.Entry<E> entry = entryItr.next();
    entryItr.remove();
    assertEquals(0, entry.getCount());
  }
  
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    assertEquals(0, entry.getCount());
  }
  
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    Iterator<E> elementItr = getMultiset().elementSet().iterator();
    elementItr.next();
    elementItr.remove();
    assertEquals(0, entry.getCount());
  }
  
  public void testEntryReflectsRemoveThenAdd() {
    Multiset.Entry<E> entry = Iterables.getOnlyElement(getMultiset().entrySet());
    assertEquals(3, entry.getCount());
    assertEquals(2, entry.getCount());
    assertEquals(0, entry.getCount());
    getMultiset().add(., 2);
    assertEquals(2, entry.getCount());
  }
  
  public void testToString() {
  }
New to GrepCode? Check out our FAQ X