Added unit tests for external cache folder

This commit is contained in:
Vincent Petry 2014-03-24 14:32:04 +01:00
parent 10c9b8eb99
commit 1e39719926
1 changed files with 51 additions and 0 deletions

View File

@ -226,4 +226,55 @@ class Filesystem extends \PHPUnit_Framework_TestCase {
$path = $arguments['path'];
$this->assertEquals($path, \OC\Files\Filesystem::normalizePath($path)); //the path passed to the hook should already be normalized
}
/**
* Test that the default cache dir is part of the user's home
*/
public function testMountDefaultCacheDir() {
$userId = uniqid('user_');
$oldCachePath = \OC_Config::getValue('cache_path', '');
// no cache path configured
\OC_Config::setValue('cache_path', '');
\OC_User::createUser($userId, $userId);
\OC\Files\Filesystem::initMountPoints($userId);
$this->assertEquals(
'/' . $userId . '/',
\OC\Files\Filesystem::getMountPoint('/' . $userId . '/cache')
);
list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath('/' . $userId . '/cache');
$this->assertInstanceOf('\OC\Files\Storage\Home', $storage);
$this->assertEquals('cache', $internalPath);
\OC_User::deleteUser($userId);
\OC_Config::setValue('cache_path', $oldCachePath);
}
/**
* Test that an external cache is mounted into
* the user's home
*/
public function testMountExternalCacheDir() {
$userId = uniqid('user_');
$oldCachePath = \OC_Config::getValue('cache_path', '');
// set cache path to temp dir
$cachePath = \OC_Helper::tmpFolder() . '/extcache';
\OC_Config::setValue('cache_path', $cachePath);
\OC_User::createUser($userId, $userId);
\OC\Files\Filesystem::initMountPoints($userId);
$this->assertEquals(
'/' . $userId . '/cache/',
\OC\Files\Filesystem::getMountPoint('/' . $userId . '/cache')
);
list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath('/' . $userId . '/cache');
$this->assertInstanceOf('\OC\Files\Storage\Local', $storage);
$this->assertEquals('', $internalPath);
\OC_User::deleteUser($userId);
\OC_Config::setValue('cache_path', $oldCachePath);
}
}