aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2013-05-28 17:21:44 +0200
committerRobin Appelman <icewind@owncloud.com>2013-05-28 17:21:44 +0200
commitfa6bfe8837c5f22e724df97c7049d60c1bb904ff (patch)
treee33dd76c10f0002f2e8d41c5c35827e9804d6f7c /tests
parent4b4b447e2adfa383cd702b175af248900e1438fe (diff)
downloadnextcloud-server-fa6bfe8837c5f22e724df97c7049d60c1bb904ff.tar.gz
nextcloud-server-fa6bfe8837c5f22e724df97c7049d60c1bb904ff.zip
didn't mean to commit this yet
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/user/backend.php99
-rw-r--r--tests/lib/user/database.php44
-rw-r--r--tests/lib/user/dummy.php27
-rw-r--r--tests/lib/user/manager.php181
-rw-r--r--tests/lib/user/user.php319
5 files changed, 0 insertions, 670 deletions
diff --git a/tests/lib/user/backend.php b/tests/lib/user/backend.php
deleted file mode 100644
index 40674424c96..00000000000
--- a/tests/lib/user/backend.php
+++ /dev/null
@@ -1,99 +0,0 @@
-<?php
-/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* This library is free software; you can redistribute it and/or
-* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
-* License as published by the Free Software Foundation; either
-* version 3 of the License, or any later version.
-*
-* This library 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
-
-/**
- * Abstract class to provide the basis of backend-specific unit test classes.
- *
- * All subclasses MUST assign a backend property in setUp() which implements
- * user operations (add, remove, etc.). Test methods in this class will then be
- * run on each separate subclass and backend therein.
- *
- * For an example see /tests/lib/user/dummy.php
- */
-
-abstract class Test_User_Backend extends PHPUnit_Framework_TestCase {
- /**
- * @var OC_User_Backend $backend
- */
- protected $backend;
-
- /**
- * get a new unique user name
- * test cases can override this in order to clean up created user
- * @return array
- */
- public function getUser() {
- return uniqid('test_');
- }
-
- public function testAddRemove() {
- //get the number of groups we start with, in case there are exising groups
- $startCount=count($this->backend->getUsers());
-
- $name1=$this->getUser();
- $name2=$this->getUser();
- $this->backend->createUser($name1, '');
- $count=count($this->backend->getUsers())-$startCount;
- $this->assertEquals(1, $count);
- $this->assertTrue((array_search($name1, $this->backend->getUsers())!==false));
- $this->assertFalse((array_search($name2, $this->backend->getUsers())!==false));
- $this->backend->createUser($name2, '');
- $count=count($this->backend->getUsers())-$startCount;
- $this->assertEquals(2, $count);
- $this->assertTrue((array_search($name1, $this->backend->getUsers())!==false));
- $this->assertTrue((array_search($name2, $this->backend->getUsers())!==false));
-
- $this->backend->deleteUser($name2);
- $count=count($this->backend->getUsers())-$startCount;
- $this->assertEquals(1, $count);
- $this->assertTrue((array_search($name1, $this->backend->getUsers())!==false));
- $this->assertFalse((array_search($name2, $this->backend->getUsers())!==false));
- }
-
- public function testLogin() {
- $name1=$this->getUser();
- $name2=$this->getUser();
-
- $this->assertFalse($this->backend->userExists($name1));
- $this->assertFalse($this->backend->userExists($name2));
-
- $this->backend->createUser($name1, 'pass1');
- $this->backend->createUser($name2, 'pass2');
-
- $this->assertTrue($this->backend->userExists($name1));
- $this->assertTrue($this->backend->userExists($name2));
-
- $this->assertTrue($this->backend->checkPassword($name1, 'pass1'));
- $this->assertTrue($this->backend->checkPassword($name2, 'pass2'));
-
- $this->assertFalse($this->backend->checkPassword($name1, 'pass2'));
- $this->assertFalse($this->backend->checkPassword($name2, 'pass1'));
-
- $this->assertFalse($this->backend->checkPassword($name1, 'dummy'));
- $this->assertFalse($this->backend->checkPassword($name2, 'foobar'));
-
- $this->backend->setPassword($name1, 'newpass1');
- $this->assertFalse($this->backend->checkPassword($name1, 'pass1'));
- $this->assertTrue($this->backend->checkPassword($name1, 'newpass1'));
- $this->assertFalse($this->backend->checkPassword($name2, 'newpass1'));
- }
-}
diff --git a/tests/lib/user/database.php b/tests/lib/user/database.php
deleted file mode 100644
index fe7d87c44de..00000000000
--- a/tests/lib/user/database.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* This library is free software; you can redistribute it and/or
-* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
-* License as published by the Free Software Foundation; either
-* version 3 of the License, or any later version.
-*
-* This library 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
-
-class Test_User_Database extends Test_User_Backend {
- /**
- * get a new unique user name
- * test cases can override this in order to clean up created user
- * @return array
- */
- public function getUser() {
- $user=uniqid('test_');
- $this->users[]=$user;
- return $user;
- }
-
- public function setUp() {
- $this->backend=new OC_User_Dummy();
- }
-
- public function tearDown() {
- foreach($this->users as $user) {
- $this->backend->deleteUser($user);
- }
- }
-}
diff --git a/tests/lib/user/dummy.php b/tests/lib/user/dummy.php
deleted file mode 100644
index e417fd97603..00000000000
--- a/tests/lib/user/dummy.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* ownCloud
-*
-* @author Robin Appelman
-* @copyright 2012 Robin Appelman icewind@owncloud.com
-*
-* This library is free software; you can redistribute it and/or
-* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
-* License as published by the Free Software Foundation; either
-* version 3 of the License, or any later version.
-*
-* This library 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
-*
-*/
-
-class Test_User_Dummy extends Test_User_Backend {
- public function setUp() {
- $this->backend=new OC_User_Dummy();
- }
-}
diff --git a/tests/lib/user/manager.php b/tests/lib/user/manager.php
deleted file mode 100644
index 401ff70297e..00000000000
--- a/tests/lib/user/manager.php
+++ /dev/null
@@ -1,181 +0,0 @@
-<?php
-
-/**
- * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
- */
-
-namespace Test\User;
-
-class Manager extends \PHPUnit_Framework_TestCase {
- public function testUserExistsSingleBackendExists() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(true));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend);
-
- $this->assertTrue($manager->userExists('foo'));
- }
-
- public function testUserExistsSingleBackendNotExists() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(false));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend);
-
- $this->assertFalse($manager->userExists('foo'));
- }
-
- public function testUserExistsNoBackends() {
- $manager = new \OC\User\Manager();
-
- $this->assertFalse($manager->userExists('foo'));
- }
-
- public function testUserExistsTwoBackendsSecondExists() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend1
- */
- $backend1 = $this->getMock('\OC_User_Dummy');
- $backend1->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(false));
-
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend2
- */
- $backend2 = $this->getMock('\OC_User_Dummy');
- $backend2->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(true));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend1);
- $manager->registerBackend($backend2);
-
- $this->assertTrue($manager->userExists('foo'));
- }
-
- public function testUserExistsTwoBackendsFirstExists() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend1
- */
- $backend1 = $this->getMock('\OC_User_Dummy');
- $backend1->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(true));
-
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend2
- */
- $backend2 = $this->getMock('\OC_User_Dummy');
- $backend2->expects($this->never())
- ->method('userExists');
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend1);
- $manager->registerBackend($backend2);
-
- $this->assertTrue($manager->userExists('foo'));
- }
-
- public function testGetOneBackendExists() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(true));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend);
-
- $this->assertEquals('foo', $manager->get('foo')->getUID());
- }
-
- public function testGetOneBackendNotExists() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('userExists')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue(false));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend);
-
- $this->assertEquals(null, $manager->get('foo'));
- }
-
- public function testSearchOneBackend() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('getUsers')
- ->with($this->equalTo('fo'))
- ->will($this->returnValue(array('foo', 'afoo')));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend);
-
- $result = $manager->search('fo');
- $this->assertEquals(2, count($result));
- $this->assertEquals('afoo', $result[0]->getUID());
- $this->assertEquals('foo', $result[1]->getUID());
- }
-
- public function testSearchTwoBackendLimitOffset() {
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend1
- */
- $backend1 = $this->getMock('\OC_User_Dummy');
- $backend1->expects($this->once())
- ->method('getUsers')
- ->with($this->equalTo('fo'), $this->equalTo(3), $this->equalTo(1))
- ->will($this->returnValue(array('foo1', 'foo2')));
-
- /**
- * @var \OC_User_Dummy | \PHPUnit_Framework_MockObject_MockObject $backend2
- */
- $backend2 = $this->getMock('\OC_User_Dummy');
- $backend2->expects($this->once())
- ->method('getUsers')
- ->with($this->equalTo('fo'), $this->equalTo(1), $this->equalTo(0))
- ->will($this->returnValue(array('foo3')));
-
- $manager = new \OC\User\Manager();
- $manager->registerBackend($backend1);
- $manager->registerBackend($backend2);
-
- $result = $manager->search('fo', 3, 1);
- $this->assertEquals(3, count($result));
- $this->assertEquals('foo1', $result[0]->getUID());
- $this->assertEquals('foo2', $result[1]->getUID());
- $this->assertEquals('foo3', $result[2]->getUID());
- }
-}
diff --git a/tests/lib/user/user.php b/tests/lib/user/user.php
deleted file mode 100644
index ad03bd57483..00000000000
--- a/tests/lib/user/user.php
+++ /dev/null
@@ -1,319 +0,0 @@
-<?php
-
-/**
- * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
- */
-
-namespace Test\User;
-
-use OC\Hooks\PublicEmitter;
-
-class User extends \PHPUnit_Framework_TestCase {
- public function testDisplayName() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Backend');
- $backend->expects($this->once())
- ->method('getDisplayName')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue('Foo'));
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->with($this->equalTo(\OC_USER_BACKEND_GET_DISPLAYNAME))
- ->will($this->returnValue(true));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertEquals('Foo', $user->getDisplayName());
- }
-
- public function testDisplayNameNotSupported() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Backend');
- $backend->expects($this->never())
- ->method('getDisplayName');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->with($this->equalTo(\OC_USER_BACKEND_GET_DISPLAYNAME))
- ->will($this->returnValue(false));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertEquals('foo', $user->getDisplayName());
- }
-
- public function testSetPassword() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('setPassword')
- ->with($this->equalTo('foo'), $this->equalTo('bar'));
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnCallback(function ($actions) {
- if ($actions === \OC_USER_BACKEND_SET_PASSWORD) {
- return true;
- } else {
- return false;
- }
- }));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertTrue($user->setPassword('bar'));
- }
-
- public function testSetPasswordNotSupported() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->never())
- ->method('setPassword');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnValue(false));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertFalse($user->setPassword('bar'));
- }
-
- public function testDelete() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('deleteUser')
- ->with($this->equalTo('foo'));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertTrue($user->delete());
- }
-
- public function testCheckPassword() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('checkPassword')
- ->with($this->equalTo('foo'), $this->equalTo('bar'))
- ->will($this->returnValue(true));
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnCallback(function ($actions) {
- if ($actions === \OC_USER_BACKEND_CHECK_PASSWORD) {
- return true;
- } else {
- return false;
- }
- }));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertTrue($user->checkPassword('bar'));
- }
-
- public function testCheckPasswordNotSupported() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->never())
- ->method('checkPassword');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnValue(false));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertFalse($user->checkPassword('bar'));
- }
-
- public function testGetHome() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('getHome')
- ->with($this->equalTo('foo'))
- ->will($this->returnValue('/home/foo'));
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnCallback(function ($actions) {
- if ($actions === \OC_USER_BACKEND_GET_HOME) {
- return true;
- } else {
- return false;
- }
- }));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertEquals('/home/foo', $user->getHome());
- }
-
- public function testGetHomeNotSupported() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->never())
- ->method('getHome');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnValue(false));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertEquals(\OC_Config::getValue("datadirectory", \OC::$SERVERROOT . "/data") . '/foo', $user->getHome());
- }
-
- public function testCanChangePassword() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnCallback(function ($actions) {
- if ($actions === \OC_USER_BACKEND_SET_PASSWORD) {
- return true;
- } else {
- return false;
- }
- }));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertTrue($user->canChangePassword());
- }
-
- public function testCanChangePasswordNotSupported() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnValue(false));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertFalse($user->canChangePassword());
- }
-
- public function testCanChangeDisplayName() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnCallback(function ($actions) {
- if ($actions === \OC_USER_BACKEND_SET_DISPLAYNAME) {
- return true;
- } else {
- return false;
- }
- }));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertTrue($user->canChangeDisplayName());
- }
-
- public function testCanChangeDisplayNameNotSupported() {
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnValue(false));
-
- $user = new \OC\User\User('foo', $backend);
- $this->assertFalse($user->canChangeDisplayName());
- }
-
- public function testSetPasswordHooks() {
- $hooksCalled = 0;
- $test = $this;
-
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('setPassword');
-
- /**
- * @param \OC\User\User $user
- * @param string $password
- */
- $hook = function ($user, $password) use ($test, &$hooksCalled) {
- $hooksCalled++;
- $test->assertEquals('foo', $user->getUID());
- $test->assertEquals('bar', $password);
- };
-
- $emitter = new PublicEmitter();
- $emitter->listen('\OC\User', 'preSetPassword', $hook);
- $emitter->listen('\OC\User', 'postSetPassword', $hook);
-
- $backend->expects($this->any())
- ->method('implementsActions')
- ->will($this->returnCallback(function ($actions) {
- if ($actions === \OC_USER_BACKEND_SET_PASSWORD) {
- return true;
- } else {
- return false;
- }
- }));
-
- $user = new \OC\User\User('foo', $backend, $emitter);
-
- $user->setPassword('bar');
- $this->assertEquals(2, $hooksCalled);
- }
-
- public function testDeleteHooks() {
- $hooksCalled = 0;
- $test = $this;
-
- /**
- * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
- */
- $backend = $this->getMock('\OC_User_Dummy');
- $backend->expects($this->once())
- ->method('deleteUser');
-
- /**
- * @param \OC\User\User $user
- */
- $hook = function ($user) use ($test, &$hooksCalled) {
- $hooksCalled++;
- $test->assertEquals('foo', $user->getUID());
- };
-
- $emitter = new PublicEmitter();
- $emitter->listen('\OC\User', 'preDelete', $hook);
- $emitter->listen('\OC\User', 'postDelete', $hook);
-
- $user = new \OC\User\User('foo', $backend, $emitter);
- $this->assertTrue($user->delete());
- $this->assertEquals(2, $hooksCalled);
- }
-}