From fa6bfe8837c5f22e724df97c7049d60c1bb904ff Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 28 May 2013 17:21:44 +0200 Subject: [PATCH] didn't mean to commit this yet --- tests/lib/user/backend.php | 99 ----------- tests/lib/user/database.php | 44 ----- tests/lib/user/dummy.php | 27 --- tests/lib/user/manager.php | 181 -------------------- tests/lib/user/user.php | 319 ------------------------------------ 5 files changed, 670 deletions(-) delete mode 100644 tests/lib/user/backend.php delete mode 100644 tests/lib/user/database.php delete mode 100644 tests/lib/user/dummy.php delete mode 100644 tests/lib/user/manager.php delete mode 100644 tests/lib/user/user.php diff --git a/tests/lib/user/backend.php b/tests/lib/user/backend.php deleted file mode 100644 index 40674424c9..0000000000 --- a/tests/lib/user/backend.php +++ /dev/null @@ -1,99 +0,0 @@ -. -* -*/ - -/** - * 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 fe7d87c44d..0000000000 --- a/tests/lib/user/database.php +++ /dev/null @@ -1,44 +0,0 @@ -. -* -*/ - -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 e417fd9760..0000000000 --- a/tests/lib/user/dummy.php +++ /dev/null @@ -1,27 +0,0 @@ -. -* -*/ - -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 401ff70297..0000000000 --- a/tests/lib/user/manager.php +++ /dev/null @@ -1,181 +0,0 @@ - - * 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 ad03bd5748..0000000000 --- a/tests/lib/user/user.php +++ /dev/null @@ -1,319 +0,0 @@ - - * 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); - } -}