From 56170dd825bd67653007832121069a1aa5ad6528 Mon Sep 17 00:00:00 2001 From: Thomas Müller Date: Thu, 19 Nov 2015 16:13:54 +0100 Subject: Further unit test suite tweats --- tests/lib/files/storage/homestoragequota.php | 79 ++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 tests/lib/files/storage/homestoragequota.php (limited to 'tests/lib/files') diff --git a/tests/lib/files/storage/homestoragequota.php b/tests/lib/files/storage/homestoragequota.php new file mode 100644 index 00000000000..49e8f499efd --- /dev/null +++ b/tests/lib/files/storage/homestoragequota.php @@ -0,0 +1,79 @@ + + * + * @copyright Copyright (c) 2015, ownCloud, Inc. + * @license AGPL-3.0 + * + * This code is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License, version 3, + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License, version 3, + * along with this program. If not, see + * + */ + +namespace Test\Files\Storage; + +/** + * Class HomeStorageQuota + * + * @group DB + */ +class HomeStorageQuota extends \Test\TestCase { + /** + * Tests that the home storage is not wrapped when no quota exists. + */ + function testHomeStorageWrapperWithoutQuota() { + $user1 = $this->getUniqueID(); + \OC_User::createUser($user1, 'test'); + \OC::$server->getConfig()->setUserValue($user1, 'files', 'quota', 'none'); + \OC_User::setUserId($user1); + + \OC_Util::setupFS($user1); + + $userMount = \OC\Files\Filesystem::getMountManager()->find('/' . $user1 . '/'); + $this->assertNotNull($userMount); + $this->assertNotInstanceOf('\OC\Files\Storage\Wrapper\Quota', $userMount->getStorage()); + + // clean up + \OC_User::setUserId(''); + \OC_User::deleteUser($user1); + \OC::$server->getConfig()->deleteAllUserValues($user1); + \OC_Util::tearDownFS(); + } + + /** + * Tests that the home storage is not wrapped when no quota exists. + */ + function testHomeStorageWrapperWithQuota() { + $user1 = $this->getUniqueID(); + \OC_User::createUser($user1, 'test'); + \OC::$server->getConfig()->setUserValue($user1, 'files', 'quota', '1024'); + \OC_User::setUserId($user1); + + \OC_Util::setupFS($user1); + + $userMount = \OC\Files\Filesystem::getMountManager()->find('/' . $user1 . '/'); + $this->assertNotNull($userMount); + $this->assertTrue($userMount->getStorage()->instanceOfStorage('\OC\Files\Storage\Wrapper\Quota')); + + // ensure that root wasn't wrapped + $rootMount = \OC\Files\Filesystem::getMountManager()->find('/'); + $this->assertNotNull($rootMount); + $this->assertNotInstanceOf('\OC\Files\Storage\Wrapper\Quota', $rootMount->getStorage()); + + // clean up + \OC_User::setUserId(''); + \OC_User::deleteUser($user1); + \OC::$server->getConfig()->deleteAllUserValues($user1); + \OC_Util::tearDownFS(); + } + +} -- cgit v1.2.3