public void testPutCauseEviction(){
  List<String> log=new ArrayList<String>();
  LruCache<String,String> cache=newRemovalLogCache(log);
  cache.put("a","A");
  cache.put("b","B");
  cache.put("c","C");
  cache.put("b","B2");
  assertEquals(Arrays.asList("b=B>B2"),log);
  assertSnapshot(cache,"a","A","c","C","b","B2");
}

public void testPutCauseEviction ( ) { List < String > log = new ArrayList < String > ( ) ; LruCache < String , String > cache = newRemovalLogCache ( log ) ; cache . put ( "a" , "A" ) ; cache . put ( "b" , "B" ) ; cache . put ( "c" , "C" ) ; cache . put ( "b" , "B2" ) ; assertEquals ( Arrays . asList ( "b=B>B2" ) , log ) ; assertSnapshot ( cache , "a" , "A" , "c" , "C" , "b" , "B2" ) ; }
replacing the value for a key doesn ' t cause an eviction but it does bring the replaced entry to the front of the queue .
