diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/lib/encryption/utiltest.php | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/lib/encryption/utiltest.php b/tests/lib/encryption/utiltest.php index 00a9ab9c578..672f9ff5e97 100644 --- a/tests/lib/encryption/utiltest.php +++ b/tests/lib/encryption/utiltest.php @@ -98,4 +98,39 @@ class UtilTest extends TestCase { $u->createHeader($header, $em); } + /** + * @dataProvider providePathsForTestIsExcluded + */ + public function testIsEcluded($path, $expected) { + $this->userManager + ->expects($this->any()) + ->method('userExists') + ->will($this->returnCallback(array($this, 'isExcludedCallback'))); + + $u = new Util($this->view, $this->userManager); + + $this->assertSame($expected, + $u->isExcluded($path) + ); + } + + public function providePathsForTestIsExcluded() { + return array( + array('files_encryption/foo.txt', true), + array('test/foo.txt', false), + array('/user1/files_encryption/foo.txt', true), + array('/user1/files/foo.txt', false), + + ); + } + + public function isExcludedCallback() { + $args = func_get_args(); + if ($args[0] === 'user1') { + return true; + } + + return false; + } + } |