Horde_Vfs_TestBase::_quota PHP Method

_quota() protected method

Structure after test: test/ dir1/ file1: content1_1 file2: __FILE__ dir2/ file1: content1
protected _quota ( )
    protected function _quota()
    {
        $used = 18 + filesize(__FILE__);
        self::$vfs->setQuota(18 + filesize(__FILE__) + 10);
        try {
            self::$vfs->writeData('', 'file1', '12345678901');
            $this->fail('Writing over quota should throw an exception');
        } catch (Horde_Vfs_Exception $e) {
        }
        self::$vfs->writeData('', 'file1', '1234567890');
        $this->assertTrue(self::$vfs->exists('', 'file1'));
        $this->assertEquals(array('limit' => $used + 10, 'usage' => $used + 10), self::$vfs->getQuota());
        try {
            self::$vfs->writeData('', 'file2', '1');
            $this->fail('Writing over quota should throw an exception');
        } catch (Horde_Vfs_Exception $e) {
        }
        self::$vfs->deleteFile('', 'file1');
        $this->assertFalse(self::$vfs->exists('', 'file1'));
        $this->assertEquals(array('limit' => $used + 10, 'usage' => $used), self::$vfs->getQuota());
        self::$vfs->writeData('', 'file2', '1');
        $this->assertEquals(array('limit' => $used + 10, 'usage' => $used + 1), self::$vfs->getQuota());
        self::$vfs->writeData('', 'file2', '12345');
        $this->assertEquals(array('limit' => $used + 10, 'usage' => $used + 5), self::$vfs->getQuota());
        self::$vfs->writeData('', 'file2', '123');
        $this->assertEquals(array('limit' => $used + 10, 'usage' => $used + 3), self::$vfs->getQuota());
        self::$vfs->setQuota(-1);
        try {
            self::$vfs->getQuota();
            $this->fail('Quota should be unset and throw an exception.');
        } catch (Horde_Vfs_Exception $e) {
        }
        self::$vfs->deleteFile('', 'file2');
    }