Files
Phraseanet/tests/Alchemy/Tests/Phrasea/Model/Manager/UserManagerTest.php
Nicolas Le Goff 4cc82af980 Fix settings
2014-02-19 17:29:26 +01:00

40 lines
1.7 KiB
PHP

<?php
namespace Alchemy\Tests\Phrasea\Model\Manager;
class UserManagerTest extends \PhraseanetTestCase
{
public function testNewUser()
{
$user = self::$DI['app']['model.user-manager']->create();
$this->assertInstanceOf('\Alchemy\Phrasea\Model\Entities\User', $user);
}
public function testDeleteUser()
{
$user = self::$DI['app']['manipulator.user']->createUser('login', 'password');
self::$DI['app']['manipulator.user']->logQuery($user, 'a query');
self::$DI['app']['manipulator.user']->setUserSetting($user, 'setting', false);
self::$DI['app']['manipulator.user']->setNotificationSetting($user, 'setting', false);
self::$DI['app']['model.user-manager']->delete($user);
$this->assertTrue($user->isDeleted());
$this->assertNull($user->getEmail());
$this->assertEquals('(#deleted_', substr($user->getLogin(), 0, 10));
$user = self::$DI['app']['manipulator.user']->getRepository()->findOneByLogin('(#deleted_login');
$this->assertEquals(0, $user->getSettings()->count());
$this->assertEquals(0, $user->getNotificationSettings()->count());
$this->assertEquals(0, $user->getQueries()->count());
}
public function testUpdateUser()
{
$template = self::$DI['app']['manipulator.user']->createUser('template'.uniqid(), 'password');
self::$DI['app']['model.user-manager']->update($template);
$user = self::$DI['app']['manipulator.user']->createUser('login'.uniqid(), 'password');
$user->setModelOf($template);
self::$DI['app']['model.user-manager']->update($user);
$this->assertNotNull($user->getPassword());
$this->assertNotNull($user->getModelOf());
}
}