diff options
author | Clark Tomlinson <fallen013@gmail.com> | 2015-03-31 14:50:23 -0400 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2015-04-07 13:30:29 +0200 |
commit | 1fb29ec546105857b1a20cbaac700dbcb6f79b1d (patch) | |
tree | b762bd29feb1b1b710e0609e2b28d1ebf8fd72a1 /apps/encryption | |
parent | c9ca068427e3adfcd7411dafbcc15632415d65d0 (diff) | |
download | nextcloud-server-1fb29ec546105857b1a20cbaac700dbcb6f79b1d.tar.gz nextcloud-server-1fb29ec546105857b1a20cbaac700dbcb6f79b1d.zip |
adding hook manager test
Diffstat (limited to 'apps/encryption')
-rw-r--r-- | apps/encryption/lib/hookmanager.php | 1 | ||||
-rw-r--r-- | apps/encryption/tests/lib/HookManagerTest.php | 74 |
2 files changed, 74 insertions, 1 deletions
diff --git a/apps/encryption/lib/hookmanager.php b/apps/encryption/lib/hookmanager.php index 9e6d9cd855c..e2b03d91bc8 100644 --- a/apps/encryption/lib/hookmanager.php +++ b/apps/encryption/lib/hookmanager.php @@ -40,7 +40,6 @@ class HookManager { return false; } $this->hookInstances[] = $instance; - return true; } } diff --git a/apps/encryption/tests/lib/HookManagerTest.php b/apps/encryption/tests/lib/HookManagerTest.php new file mode 100644 index 00000000000..3c360ff3504 --- /dev/null +++ b/apps/encryption/tests/lib/HookManagerTest.php @@ -0,0 +1,74 @@ +<?php +/** + * @author Clark Tomlinson <clark@owncloud.com> + * @since 3/31/15, 1:54 PM + * @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 <http://www.gnu.org/licenses/> + * + */ + + +namespace OCA\Encryption\Tests; + + +use OCA\Encryption\HookManager; +use Test\TestCase; + +class HookManagerTest extends TestCase { + + /** + * @var HookManager + */ + private static $instance; + + /** + * + */ + public function testRegisterHookWithArray() { + self::$instance->registerHook([ + $this->getMockBuilder('OCA\Encryption\Hooks\Contracts\IHook')->disableOriginalConstructor()->getMock(), + $this->getMockBuilder('OCA\Encryption\Hooks\Contracts\IHook')->disableOriginalConstructor()->getMock(), + $this->getMock('NotIHook') + ]); + + $hookInstances = \Test_Helper::invokePrivate(self::$instance, 'hookInstances'); + // Make sure our type checking works + $this->assertCount(2, $hookInstances); + } + + + /** + * + */ + public static function setUpBeforeClass() { + parent::setUpBeforeClass(); + // have to make instance static to preserve data between tests + self::$instance = new HookManager(); + + } + + /** + * + */ + public function testRegisterHooksWithInstance() { + $mock = $this->getMockBuilder('OCA\Encryption\Hooks\Contracts\IHook')->disableOriginalConstructor()->getMock(); + self::$instance->registerHook($mock); + + $hookInstances = \Test_Helper::invokePrivate(self::$instance, 'hookInstances'); + $this->assertCount(3, $hookInstances); + + } + +} |