Elgg\Cache\LRUCacheTest::testLeastUsedItemGetsDropped PHP Method

testLeastUsedItemGetsDropped() public method

    public function testLeastUsedItemGetsDropped()
    {
        $pool = new LRUCache(2);
        $pool->set('foo1', 10);
        $pool->set('foo2', 25);
        $this->assertEquals(25, $pool->get('foo2'));
        $pool->set('foo2', 20);
        $this->assertEquals(20, $pool->get('foo2'));
        $this->assertEquals(10, $pool->get('foo1'));
        // foo2 was least recently read
        $pool->set('foo3', 30);
        $this->assertEquals(null, $pool->get('foo2'));
        $this->assertFalse(isset($pool['foo2']));
        $this->assertEquals(10, $pool->get('foo1'));
        $this->assertEquals(30, $pool->get('foo3'));
        $this->assertEquals(2, $pool->size());
    }