Browse Source

Correctly restore previous root mount point after testing

tags/v8.0.0alpha1
Joas Schilling 9 years ago
parent
commit
6625d5c88f

+ 12
- 2
apps/files/tests/ajax_rename.php View File

@@ -34,7 +34,14 @@ class Test_OC_Files_App_Rename extends \PHPUnit_Framework_TestCase {
*/
private $files;

function setUp() {
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');

// mock OC_L10n
if (!self::$user) {
self::$user = uniqid();
@@ -59,10 +66,13 @@ class Test_OC_Files_App_Rename extends \PHPUnit_Framework_TestCase {
$this->files = new \OCA\Files\App($viewMock, $l10nMock);
}

function tearDown() {
protected function tearDown() {
$result = \OC_User::deleteUser(self::$user);
$this->assertTrue($result);
\OC\Files\Filesystem::tearDown();
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

/**

+ 11
- 0
tests/lib/cache/file.php View File

@@ -23,8 +23,12 @@
namespace Test\Cache;

class FileCache extends \Test_Cache {
/** @var string */
private $user;
/** @var string */
private $datadir;
/** @var \OC\Files\Storage\Storage */
private $storage;

function skip() {
//$this->skipUnless(OC_User::isLoggedIn());
@@ -42,6 +46,7 @@ class FileCache extends \Test_Cache {
//}

//set up temporary storage
$this->storage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::clearMounts();
$storage = new \OC\Files\Storage\Temporary(array());
\OC\Files\Filesystem::mount($storage,array(),'/');
@@ -68,5 +73,11 @@ class FileCache extends \Test_Cache {
public function tearDown() {
\OC_User::setUserId($this->user);
\OC_Config::setValue('cachedirectory', $this->datadir);

// Restore the original mount point
\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($this->storage, array(), '/');

parent::tearDown();
}
}

+ 12
- 0
tests/lib/cache/usercache.php View File

@@ -23,8 +23,12 @@
namespace Test\Cache;

class UserCache extends \Test_Cache {
/** @var string */
private $user;
/** @var string */
private $datadir;
/** @var \OC\Files\Storage\Storage */
private $storage;

public function setUp() {
//clear all proxies and hooks so we can do clean testing
@@ -38,6 +42,7 @@ class UserCache extends \Test_Cache {
//}

//set up temporary storage
$this->storage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::clearMounts();
$storage = new \OC\Files\Storage\Temporary(array());
\OC\Files\Filesystem::mount($storage,array(),'/');
@@ -63,5 +68,12 @@ class UserCache extends \Test_Cache {

public function tearDown() {
\OC_User::setUserId($this->user);
\OC_Config::setValue('cachedirectory', $this->datadir);

// Restore the original mount point
\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($this->storage, array(), '/');

parent::tearDown();
}
}

+ 14
- 1
tests/lib/files/cache/updater.php View File

@@ -33,7 +33,13 @@ class Updater extends \PHPUnit_Framework_TestCase {
*/
protected $updater;

public function setUp() {
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

$this->originalStorage = Filesystem::getStorage('/');
$this->storage = new Temporary(array());
Filesystem::clearMounts();
Filesystem::mount($this->storage, array(), '/');
@@ -42,6 +48,13 @@ class Updater extends \PHPUnit_Framework_TestCase {
$this->cache = $this->storage->getCache();
}

protected function tearDown() {
Filesystem::clearMounts();
Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

public function testNewFile() {
$this->storage->file_put_contents('foo.txt', 'bar');
$this->assertFalse($this->cache->inCache('foo.txt'));

+ 7
- 2
tests/lib/files/cache/updaterlegacy.php View File

@@ -29,6 +29,9 @@ class UpdaterLegacy extends \PHPUnit_Framework_TestCase {
*/
private $cache;

/** @var \OC\Files\Storage\Storage */
private $originalStorage;

private static $user;

public function setUp() {
@@ -51,7 +54,8 @@ class UpdaterLegacy extends \PHPUnit_Framework_TestCase {
$this->scanner->scan('');
$this->cache = $this->storage->getCache();

\OC\Files\Filesystem::tearDown();
$this->originalStorage = Filesystem::getStorage('/');
Filesystem::tearDown();
if (!self::$user) {
self::$user = uniqid();
}
@@ -59,7 +63,7 @@ class UpdaterLegacy extends \PHPUnit_Framework_TestCase {
\OC_User::createUser(self::$user, 'password');
\OC_User::setUserId(self::$user);

\OC\Files\Filesystem::init(self::$user, '/' . self::$user . '/files');
Filesystem::init(self::$user, '/' . self::$user . '/files');

Filesystem::clearMounts();
Filesystem::mount($this->storage, array(), '/' . self::$user . '/files');
@@ -74,6 +78,7 @@ class UpdaterLegacy extends \PHPUnit_Framework_TestCase {
$result = \OC_User::deleteUser(self::$user);
$this->assertTrue($result);
Filesystem::tearDown();
Filesystem::mount($this->originalStorage, array(), '/');
// reset app files_encryption
if ($this->stateFilesEncryption) {
\OC_App::enable('files_encryption');

+ 13
- 2
tests/lib/files/cache/watcher.php View File

@@ -15,16 +15,27 @@ class Watcher extends \PHPUnit_Framework_TestCase {
*/
private $storages = array();

public function setUp() {
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::clearMounts();
}

public function tearDown() {
protected function tearDown() {
foreach ($this->storages as $storage) {
$cache = $storage->getCache();
$ids = $cache->getAll();
$cache->clear();
}

\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

/**

+ 12
- 3
tests/lib/files/etagtest.php View File

@@ -11,7 +11,7 @@ namespace Test\Files;
use OC\Files\Filesystem;
use OCP\Share;

class EtagTest extends \PHPUnit_Framework_TestCase {
class EtagTest extends \Test\TestCase {
private $datadir;

private $tmpDir;
@@ -23,7 +23,12 @@ class EtagTest extends \PHPUnit_Framework_TestCase {
*/
private $userBackend;

public function setUp() {
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

\OC_Hook::clear('OC_Filesystem', 'setup');
\OCP\Util::connectHook('OC_Filesystem', 'setup', '\OC\Files\Storage\Shared', 'setup');
\OCP\Share::registerBackend('file', 'OC_Share_Backend_File');
@@ -37,13 +42,17 @@ class EtagTest extends \PHPUnit_Framework_TestCase {

$this->userBackend = new \OC_User_Dummy();
\OC_User::useBackend($this->userBackend);
$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
\OC_Util::tearDownFS();
}

public function tearDown() {
protected function tearDown() {
\OC_Config::setValue('datadirectory', $this->datadir);
\OC_User::setUserId($this->uid);
\OC_Util::setupFS($this->uid);
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

public function testNewUser() {

+ 14
- 7
tests/lib/files/filesystem.php View File

@@ -22,12 +22,15 @@

namespace Test\Files;

class Filesystem extends \PHPUnit_Framework_TestCase {
class Filesystem extends \Test\TestCase {
/**
* @var array tmpDirs
*/
private $tmpDirs = array();

/** @var \OC\Files\Storage\Storage */
private $originalStorage;

/**
* @return array
*/
@@ -37,19 +40,23 @@ class Filesystem extends \PHPUnit_Framework_TestCase {
return array('datadir' => $dir);
}

public function tearDown() {
protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
\OC_User::setUserId('');
\OC\Files\Filesystem::clearMounts();
}

protected function tearDown() {
foreach ($this->tmpDirs as $dir) {
\OC_Helper::rmdirr($dir);
}
\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');
\OC_User::setUserId('');
}

public function setUp() {
\OC_User::setUserId('');
\OC\Files\Filesystem::clearMounts();
}

public function testMount() {
\OC\Files\Filesystem::mount('\OC\Files\Storage\Local', self::getStorageData(), '/');
$this->assertEquals('/', \OC\Files\Filesystem::getMountPoint('/'));

+ 12
- 2
tests/lib/files/node/integration.php View File

@@ -20,6 +20,9 @@ class IntegrationTests extends \PHPUnit_Framework_TestCase {
*/
private $root;

/** @var \OC\Files\Storage\Storage */
private $originalStorage;

/**
* @var \OC\Files\Storage\Storage[]
*/
@@ -30,7 +33,10 @@ class IntegrationTests extends \PHPUnit_Framework_TestCase {
*/
private $view;

public function setUp() {
protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::init('', '');
\OC\Files\Filesystem::clearMounts();
$manager = \OC\Files\Filesystem::getMountManager();
@@ -54,11 +60,15 @@ class IntegrationTests extends \PHPUnit_Framework_TestCase {
$this->root->mount($subStorage, '/substorage/');
}

public function tearDown() {
protected function tearDown() {
foreach ($this->storages as $storage) {
$storage->getCache()->clear();
}
\OC\Files\Filesystem::clearMounts();

\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

public function testBasicFile() {

+ 17
- 1
tests/lib/files/utils/scanner.php View File

@@ -38,7 +38,23 @@ class TestScanner extends \OC\Files\Utils\Scanner {
}
}

class Scanner extends \PHPUnit_Framework_TestCase {

class Scanner extends \Test\TestCase {
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
}

protected function tearDown() {
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

public function testReuseExistingRoot() {
$storage = new Temporary(array());
$mount = new Mount($storage, '');

+ 14
- 2
tests/lib/files/view.php View File

@@ -22,9 +22,15 @@ class View extends \PHPUnit_Framework_TestCase {
private $storages = array();
private $user;

/** @var \OC\Files\Storage\Storage */
private $tempStorage;

public function setUp() {
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

\OC_User::clearBackends();
\OC_User::useBackend(new \OC_User_Dummy());

@@ -33,12 +39,13 @@ class View extends \PHPUnit_Framework_TestCase {
$this->user = \OC_User::getUser();
\OC_User::setUserId('test');

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::clearMounts();

$this->tempStorage = null;
}

public function tearDown() {
protected function tearDown() {
\OC_User::setUserId($this->user);
foreach ($this->storages as $storage) {
$cache = $storage->getCache();
@@ -49,6 +56,11 @@ class View extends \PHPUnit_Framework_TestCase {
if ($this->tempStorage && !\OC_Util::runningOnWindows()) {
system('rm -rf ' . escapeshellarg($this->tempStorage->getDataDir()));
}

\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

/**

+ 15
- 4
tests/lib/helperstorage.php View File

@@ -9,14 +9,22 @@
/**
* Test the storage functions of OC_Helper
*/
class Test_Helper_Storage extends PHPUnit_Framework_TestCase {

class Test_Helper_Storage extends \Test\TestCase {
/** @var string */
private $user;
/** @var \OC\Files\Storage\Storage */
private $storageMock;
/** @var \OC\Files\Storage\Storage */
private $storage;

protected function setUp() {
parent::setUp();

public function setUp() {
$this->user = 'user_' . uniqid();
$this->user = $this->getUniqueID('user_');
\OC_User::createUser($this->user, $this->user);

$this->storage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::tearDown();
\OC_User::setUserId($this->user);
\OC\Files\Filesystem::init($this->user, '/' . $this->user . '/files');
@@ -25,7 +33,7 @@ class Test_Helper_Storage extends PHPUnit_Framework_TestCase {
$this->storageMock = null;
}

public function tearDown() {
protected function tearDown() {
$this->user = null;

if ($this->storageMock) {
@@ -33,10 +41,13 @@ class Test_Helper_Storage extends PHPUnit_Framework_TestCase {
$this->storageMock = null;
}
\OC\Files\Filesystem::tearDown();
\OC\Files\Filesystem::mount($this->storage, array(), '/');

\OC_User::setUserId('');
\OC_User::deleteUser($this->user);
\OC_Preferences::deleteUser($this->user);

parent::tearDown();
}

/**

+ 22
- 14
tests/lib/migrate.php View File

@@ -11,6 +11,28 @@ class Test_Migrate extends PHPUnit_Framework_TestCase {
public $users;
public $tmpfiles = array();

/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');
}

protected function tearDown() {
$u = new OC_User();
foreach($this->users as $user) {
$u->deleteUser($user);
}
foreach($this->tmpfiles as $file) {
\OC_Helper::rmdirr($file);
}

\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');
parent::tearDown();
}

/**
* Generates a test user and sets up their file system
* @return string the test users id
@@ -73,18 +95,4 @@ class Test_Migrate extends PHPUnit_Framework_TestCase {
// Validate the export
$this->validateUserExport($user2, $user, json_decode($export)->data);
}

public function tearDown() {
$u = new OC_User();
foreach($this->users as $user) {
$u->deleteUser($user);
}
foreach($this->tmpfiles as $file) {
\OC_Helper::rmdirr($file);
}
}




}

+ 23
- 15
tests/lib/preview.php View File

@@ -8,7 +8,7 @@

namespace Test;

class Preview extends \PHPUnit_Framework_TestCase {
class Preview extends \Test\TestCase {

/**
* @var string
@@ -20,14 +20,34 @@ class Preview extends \PHPUnit_Framework_TestCase {
*/
private $rootView;

public function setUp() {
$this->user = $this->initFS();
/** @var \OC\Files\Storage\Storage */
private $originalStorage;

protected function setUp() {
parent::setUp();

$this->originalStorage = \OC\Files\Filesystem::getStorage('/');

// create a new user with his own filesystem view
// this gets called by each test in this test class
$this->user = $this->getUniqueID();
\OC_User::setUserId($this->user);
\OC\Files\Filesystem::init($this->user, '/' . $this->user . '/files');

\OC\Files\Filesystem::mount('OC\Files\Storage\Temporary', array(), '/');

$this->rootView = new \OC\Files\View('');
$this->rootView->mkdir('/'.$this->user);
$this->rootView->mkdir('/'.$this->user.'/files');
}

protected function tearDown() {
\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($this->originalStorage, array(), '/');

parent::tearDown();
}

public function testIsPreviewDeleted() {

$sampleFile = '/'.$this->user.'/files/test.txt';
@@ -184,16 +204,4 @@ class Preview extends \PHPUnit_Framework_TestCase {
$this->assertEquals($this->user . '/' . \OC\Preview::THUMBNAILS_FOLDER . '/' . $fileId . '/150-150.png', $isCached);
}
*/

private function initFS() {
// create a new user with his own filesystem view
// this gets called by each test in this test class
$user=uniqid();
\OC_User::setUserId($user);
\OC\Files\Filesystem::init($user, '/'.$user.'/files');

\OC\Files\Filesystem::mount('OC\Files\Storage\Temporary', array(), '/');
return $user;
}
}

+ 5
- 0
tests/lib/streamwrappers.php View File

@@ -65,7 +65,9 @@ class Test_StreamWrappers extends PHPUnit_Framework_TestCase {
}

public function testOC() {
$originalStorage = \OC\Files\Filesystem::getStorage('/');
\OC\Files\Filesystem::clearMounts();

$storage = new \OC\Files\Storage\Temporary(array());
$storage->file_put_contents('foo.txt', 'asd');
\OC\Files\Filesystem::mount($storage, array(), '/');
@@ -91,5 +93,8 @@ class Test_StreamWrappers extends PHPUnit_Framework_TestCase {

unlink('oc:///foo.txt');
$this->assertEquals(array('.', '..', 'bar.txt'), scandir('oc:///'));

\OC\Files\Filesystem::clearMounts();
\OC\Files\Filesystem::mount($originalStorage, array(), '/');
}
}

Loading…
Cancel
Save