| | <?php |
| |
|
| | require_once __DIR__.'/../../Base.php'; |
| |
|
| | use Kanboard\Core\Security\Role; |
| | use Kanboard\Core\User\UserProfile; |
| | use Kanboard\User\LdapUserProvider; |
| | use Kanboard\User\DatabaseUserProvider; |
| |
|
| | class UserProfileTest extends Base |
| | { |
| | public function testInitializeLocalUser() |
| | { |
| | $userProfile = new UserProfile($this->container); |
| | $user = new DatabaseUserProvider(array('id' => 1)); |
| |
|
| | $this->assertTrue($userProfile->initialize($user)); |
| | $this->assertNotEmpty($_SESSION['user']); |
| | $this->assertEquals('admin', $_SESSION['user']['username']); |
| | } |
| |
|
| | public function testInitializeLocalUserNotFound() |
| | { |
| | $userProfile = new UserProfile($this->container); |
| | $user = new DatabaseUserProvider(array('id' => 2)); |
| |
|
| | $this->assertFalse($userProfile->initialize($user)); |
| | $this->assertFalse(isset($_SESSION['user'])); |
| | } |
| |
|
| | public function testInitializeRemoteUser() |
| | { |
| | $userProfile = new UserProfile($this->container); |
| | $user = new LdapUserProvider('ldapId', 'bob', 'Bob', '', Role::APP_MANAGER, array()); |
| |
|
| | $this->assertTrue($userProfile->initialize($user)); |
| | $this->assertNotEmpty($_SESSION['user']); |
| | $this->assertEquals(2, $_SESSION['user']['id']); |
| | $this->assertEquals('bob', $_SESSION['user']['username']); |
| | $this->assertEquals(Role::APP_MANAGER, $_SESSION['user']['role']); |
| |
|
| | $user = new LdapUserProvider('ldapId', 'bob', 'Bob', '', Role::APP_MANAGER, array()); |
| |
|
| | $this->assertTrue($userProfile->initialize($user)); |
| | $this->assertNotEmpty($_SESSION['user']); |
| | $this->assertEquals(2, $_SESSION['user']['id']); |
| | $this->assertEquals('bob', $_SESSION['user']['username']); |
| | } |
| |
|
| | public function testAssignRemoteUser() |
| | { |
| | $userProfile = new UserProfile($this->container); |
| | $user = new LdapUserProvider('ldapId', 'bob', 'Bob', '', Role::APP_MANAGER, array()); |
| |
|
| | $this->assertTrue($userProfile->assign(1, $user)); |
| | $this->assertNotEmpty($_SESSION['user']); |
| | $this->assertEquals(1, $_SESSION['user']['id']); |
| | $this->assertEquals('admin', $_SESSION['user']['username']); |
| | $this->assertEquals('Bob', $_SESSION['user']['name']); |
| | $this->assertEquals('', $_SESSION['user']['email']); |
| | $this->assertEquals(Role::APP_MANAGER, $_SESSION['user']['role']); |
| | } |
| | } |
| |
|