From a4c0eb17569457784faa06ed0b65a319f7ec2f78 Mon Sep 17 00:00:00 2001 From: Florin Peter Date: Fri, 17 May 2013 01:07:26 +0200 Subject: [PATCH] improved tests --- apps/files_encryption/tests/crypt.php | 17 +++++++++++++++- apps/files_encryption/tests/keymanager.php | 23 ++++++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/apps/files_encryption/tests/crypt.php b/apps/files_encryption/tests/crypt.php index 1caa9ea7da..bfb5ca0ec8 100755 --- a/apps/files_encryption/tests/crypt.php +++ b/apps/files_encryption/tests/crypt.php @@ -62,8 +62,17 @@ class Test_Crypt extends \PHPUnit_Framework_TestCase { // Filesystem related hooks \OCA\Encryption\Helper::registerFilesystemHooks(); + // Filesystem related hooks + \OCA\Encryption\Helper::registerUserHooks(); + \OC_FileProxy::register(new OCA\Encryption\Proxy()); + // remember files_trashbin state + $this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); + + // we don't want to tests with app files_trashbin enabled + \OC_App::disable('files_trashbin'); + \OC_Util::tearDownFS(); \OC_User::setUserId(''); \OC\Files\Filesystem::tearDown(); @@ -78,6 +87,13 @@ class Test_Crypt extends \PHPUnit_Framework_TestCase { function tearDown() { \OC_FileProxy::clearProxies(); + + // reset app files_trashbin + if ($this->stateFilesTrashbin) { + OC_App::enable('files_trashbin'); + } else { + OC_App::disable('files_trashbin'); + } } function testGenerateKey() { @@ -686,7 +702,6 @@ class Test_Crypt extends \PHPUnit_Framework_TestCase { $this->assertEquals( $this->dataLong, $newDecrypt ); // tear down - $view->unlink( $newFolder . '/' . $newFilename ); $view->unlink( $newFolder ); } diff --git a/apps/files_encryption/tests/keymanager.php b/apps/files_encryption/tests/keymanager.php index 28452d779c..3f6b936373 100644 --- a/apps/files_encryption/tests/keymanager.php +++ b/apps/files_encryption/tests/keymanager.php @@ -57,6 +57,12 @@ class Test_Keymanager extends \PHPUnit_Framework_TestCase { \OC_FileProxy::register(new OCA\Encryption\Proxy()); + // remember files_trashbin state + $this->stateFilesTrashbin = OC_App::isEnabled('files_trashbin'); + + // we don't want to tests with app files_trashbin enabled + \OC_App::disable('files_trashbin'); + \OC_Util::tearDownFS(); \OC_User::setUserId(''); \OC\Files\Filesystem::tearDown(); @@ -72,6 +78,13 @@ class Test_Keymanager extends \PHPUnit_Framework_TestCase { \OC_FileProxy::$enabled = true; \OC_FileProxy::clearProxies(); + + // reset app files_trashbin + if ($this->stateFilesTrashbin) { + OC_App::enable('files_trashbin'); + } else { + OC_App::disable('files_trashbin'); + } } function testGetPrivateKey() { @@ -116,6 +129,16 @@ class Test_Keymanager extends \PHPUnit_Framework_TestCase { //$view = new \OC_FilesystemView( '/' . $this->userId . '/files_encryption/keyfiles' ); Encryption\Keymanager::setFileKey( $this->view, $file, $this->userId, $key['key'] ); + + // Disable encryption proxy to prevent recursive calls + $proxyStatus = \OC_FileProxy::$enabled; + \OC_FileProxy::$enabled = true; + + // cleanup + $this->view->unlink('/'.$this->userId . '/files/' . $file); + + // Re-enable proxy - our work is done + \OC_FileProxy::$enabled = $proxyStatus; }