Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (C) 2013 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.CollectionSize.SEVERAL;
 import static com.google.common.collect.testing.features.CollectionSize.ZERO;
 import static com.google.common.collect.testing.features.MapFeature.ALLOWS_NULL_QUERIES;
 import static com.google.common.collect.testing.features.MapFeature.ALLOWS_NULL_VALUES;
 import static com.google.common.collect.testing.features.MapFeature.SUPPORTS_PUT;
 import static com.google.common.collect.testing.features.MapFeature.SUPPORTS_REMOVE;
 import static org.truth0.Truth.ASSERT;
 
 
Tests for Multimap.asMap().get(Object).

Author(s):
Louis Wasserman
 
 public class MultimapAsMapGetTester<K, V> extends AbstractMultimapTester<K, V, Multimap<K, V>> {
   
   public void testPropagatesRemoveToMultimap() {
     resetContainer(
         Helpers.mapEntry(sampleKeys().sampleValues().),
         Helpers.mapEntry(sampleKeys().sampleValues().),
         Helpers.mapEntry(sampleKeys().sampleValues().));
     Collection<V> result = multimap().asMap().get(sampleKeys().);
     assertTrue(result.remove(sampleValues().));
     assertEquals(2, multimap().size());
   }
   
   @CollectionSize.Require(absent = )
     Collection<V> result = multimap().asMap().get(sampleKeys().);
     assertTrue(result.remove(sampleValues().));
     assertGet(sampleKeys().);
   }
 
   @CollectionSize.Require(absent = )
   public void testPropagatesClearToMultimap() {
     Collection<V> result = multimap().asMap().get(sampleKeys().);
     result.clear();
     assertGet(sampleKeys().);
     .that(result).isEmpty();
   }
   
   @CollectionSize.Require(absent = )
   public void testAddNullValue() {
     Collection<V> result = multimap().asMap().get(sampleKeys().);
     assertTrue(result.add(null));
   }
   
   @CollectionSize.Require(absent = )
   public void testRemoveNullValue() {
     Collection<V> result = multimap().asMap().get(sampleKeys().);
     assertFalse(result.remove(null));
   }
   
   @CollectionSize.Require(absent = )
   @MapFeature.Require(value = , absent = )
   public void testAddNullValueUnsupported() {
     Collection<V> result = multimap().asMap().get(sampleKeys().);
     try {
       result.add(null);
       fail("Expected NullPointerException");
     } catch (NullPointerException expected) {}
   }
 
   @CollectionSize.Require(absent = )
  public void testPropagatesAddToMultimap() {
    Collection<V> result = multimap().asMap().get(sampleKeys().);
    result.add(sampleValues().);
        .has().exactly(sampleValues().sampleValues().);
  }
  @CollectionSize.Require(absent = )
    int oldSize = getNumElements();
    K k0 = sampleKeys().;
    V v0 = sampleValues().;
    Collection<V> result = multimap().asMap().get(k0);
    assertTrue(result.remove(v0));
    .that(result).isEmpty();
    V v1 = sampleValues().;
    V v2 = sampleValues().;
    assertTrue(result.add(v1));
    assertTrue(result.add(v2));
    .that(result).has().exactly(v1v2);
    .that(multimap().get(k0)).has().exactly(v1v2);
    assertTrue(multimap().containsEntry(k0v2));
    assertEquals(oldSize + 1, multimap().size());
  }
  
  @CollectionSize.Require(absent = )
  public void testReflectsMultimapRemove() {
    Collection<V> result = multimap().asMap().get(sampleKeys().);
    .that(result).isEmpty();
  }
New to GrepCode? Check out our FAQ X