Jamm\Memory\Tests\TestMemoryObject::test_save PHP Method

test_save() public method

public test_save ( )
    public function test_save()
    {
        //Save 100
        $call = $this->mem->save(__METHOD__ . 's1', 100);
        $this->assertTrue($call);
        $this->assertEquals($this->mem->read(__METHOD__ . 's1'), 100);
        //Save 100 with ttl 10
        $this->assertTrue($this->mem->save(__METHOD__ . 's2', 100, 10));
        $this->assertEquals($this->mem->read(__METHOD__ . 's2', $ttl_left), 100);
        $this->assertEquals($ttl_left, 10);
        //Save float key
        $key = microtime(true) * 100;
        $this->assertTrue($this->mem->save($key, 100, 12));
        $check = $this->mem->read($key, $ttl_left);
        $this->assertEquals($check, 100);
        $this->assertEquals($ttl_left, 12);
        //Save negative float key
        $key = -10.12;
        $this->assertTrue($this->mem->save($key, 100, 10));
        $check = $this->mem->read($key, $ttl_left);
        $this->assertEquals($check, 100);
        $this->assertEquals($ttl_left, 10);
        //Save with float ttl
        $call = $this->mem->save(__METHOD__ . 's21', 100, 1.0E-6);
        $this->assertTrue($call);
        $check = $this->mem->read(__METHOD__ . 's21', $ttl_left);
        $this->assertEquals($check, 100);
        //Save with string ttl
        $call = $this->mem->save(__METHOD__ . 's22', 100, 'stringttl');
        $this->assertTrue($call);
        $check = $this->mem->read(__METHOD__ . 's22', $ttl_left);
        $this->assertEquals($check, 100);
        //Save with tag
        $call = $this->mem->save(__METHOD__ . 's3', 100, 10, 'tag');
        $this->assertTrue($call);
        $check = $this->mem->read(__METHOD__ . 's3', $ttl_left);
        $this->assertEquals($check, 100);
        $this->assertEquals($ttl_left, 10);
        //Save with array of tags
        $call = $this->mem->save(__METHOD__ . 's4', array('z' => 1), 10, array('tag', 'tag1'));
        $this->assertTrue($call);
        $check = $this->mem->read(__METHOD__ . 's4', $ttl_left);
        $this->assertEquals($check, array('z' => 1));
        $this->assertEquals($ttl_left, 10);
    }