View Javadoc
1   /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10   * software distributed under the License is distributed on an "AS IS"
11   * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12   * or implied. See the License for the specific language governing
13   * permissions and limitations under the License.
14   */
15  
16  package org.kuali.student.common.util;
17  
18  
19  import org.junit.Assert;
20  import org.junit.Before;
21  import org.junit.Test;
22  
23  public class TestLRUMap {
24  
25  	private LRUMap<String,String> cache;
26  
27  	@Before
28  	public void setup() {
29  		cache = new LRUMap<String,String>(3);
30  		cache.put("key-1", "value-1");
31  		cache.put("key-2", "value-2");
32  		cache.put("key-3", "value-3");
33  	}
34  	
35  	@Test
36  	public void testDefaultMaximumEntries() throws Exception {
37  		cache = new LRUMap<String,String>();
38  		for(int i=0; i<60; i++) {
39  			cache.put("key-"+i, "value-"+i);
40  		}
41  		Assert.assertEquals(50, cache.size());
42  	}
43  
44  	@Test
45  	public void testRemoveEldestEntry() throws Exception {
46  		cache.put("key-4", "value-4");
47  		Assert.assertEquals(3, cache.size());
48  		Assert.assertNull(cache.get("key-1"));
49  	}
50  	
51  }