summaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/camera/gallery/LruCacheUnitTests.java
blob: f699724c59f0dce505756fc0a4092e6134392aa6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package com.android.camera.gallery;

import android.test.AndroidTestCase;

public class LruCacheUnitTests extends AndroidTestCase {

    public void testPut() {
        LruCache<Integer, Integer> cache = new LruCache<Integer, Integer>(2);
        Integer key = Integer.valueOf(1);
        Integer value = Integer.valueOf(3);
        cache.put(key, value);
        assertEquals(value, cache.get(key));
    }

    public void testTracingInUsedObject() {
        LruCache<Integer, Integer> cache = new LruCache<Integer, Integer>(2);
        Integer key = Integer.valueOf(1);
        Integer value = new Integer(3);
        cache.put(key, value);
        for (int i = 0; i < 3; ++i) {
            cache.put(i + 10, i * i);
        }
        System.gc();
        assertEquals(value, cache.get(key));
    }

    public void testLruAlgorithm() {
        LruCache<Integer, Integer> cache = new LruCache<Integer, Integer>(2);
        cache.put(0, new Integer(0));
        for (int i = 0; i < 3; ++i) {
            cache.put(i + 1, i * i);
            cache.get(0);
        }
        System.gc();
        assertEquals(Integer.valueOf(0), cache.get(0));
    }
}