| package com.googlecode.aviator.utils; |
| |
| |
| import org.junit.Before; |
| import org.junit.Test; |
| |
| import static org.junit.Assert.*; |
| |
| |
| public class LRUMapUnitTest { |
| |
| private LRUMap<Integer, Integer> map; |
| |
| |
| @Before |
| public void setUp() { |
| this.map = new LRUMap<Integer, Integer>(10); |
| } |
| |
| |
| @Test |
| public void testPutGet() { |
| assertTrue(map.isEmpty()); |
| assertEquals(0, map.size()); |
| for (int i = 0; i < 5; i++) { |
| assertNull(this.map.get(i)); |
| this.map.put(i, i); |
| assertEquals(i, this.map.get(i)); |
| } |
| assertEquals(5, map.size()); |
| } |
| |
| |
| @Test |
| public void testLRU() { |
| for (int i = 0; i < 20; i++) { |
| assertNull(this.map.get(i)); |
| this.map.put(i, i); |
| assertEquals(i, this.map.get(i)); |
| } |
| assertEquals(10, map.size()); |
| for (int i = 0; i < 10; i++) |
| assertNull(this.map.get(0)); |
| for (int i = 10; i < 11; i++) |
| assertEquals(i, this.map.get(i)); |
| assertEquals(10, map.size()); |
| |
| } |
| |
| } |