|
|
<?php |
|
|
|
|
|
require_once __DIR__.'/../../Base.php'; |
|
|
|
|
|
use Kanboard\Core\Security\Role; |
|
|
use Kanboard\Core\User\UserSync; |
|
|
use Kanboard\User\LdapUserProvider; |
|
|
|
|
|
class UserSyncTest extends Base |
|
|
{ |
|
|
public function testSynchronizeNewUser() |
|
|
{ |
|
|
$user = new LdapUserProvider('ldapId', 'bob', 'Bob', '', Role::APP_MANAGER, array()); |
|
|
$userSync = new UserSync($this->container); |
|
|
$result = $userSync->synchronize($user); |
|
|
$profile = array( |
|
|
'id' => 2, |
|
|
'username' => 'bob', |
|
|
'name' => 'Bob', |
|
|
'email' => '', |
|
|
'role' => Role::APP_MANAGER, |
|
|
'is_ldap_user' => 1, |
|
|
); |
|
|
|
|
|
foreach ($profile as $key => $value) { |
|
|
$this->assertEquals($value, $result[$key]); |
|
|
} |
|
|
} |
|
|
|
|
|
public function testSynchronizeExistingUser() |
|
|
{ |
|
|
$userSync = new UserSync($this->container); |
|
|
$user = new LdapUserProvider('ldapId', 'admin', 'Admin', 'email@localhost', Role::APP_MANAGER, array()); |
|
|
|
|
|
$profile = array( |
|
|
'id' => 1, |
|
|
'username' => 'admin', |
|
|
'name' => 'Admin', |
|
|
'email' => 'email@localhost', |
|
|
'role' => Role::APP_MANAGER, |
|
|
); |
|
|
|
|
|
$result = $userSync->synchronize($user); |
|
|
foreach ($profile as $key => $value) { |
|
|
$this->assertEquals($value, $result[$key]); |
|
|
} |
|
|
|
|
|
$user = new LdapUserProvider('ldapId', 'admin', '', '', Role::APP_ADMIN, array()); |
|
|
|
|
|
$profile = array( |
|
|
'id' => 1, |
|
|
'username' => 'admin', |
|
|
'name' => 'Admin', |
|
|
'email' => 'email@localhost', |
|
|
'role' => Role::APP_ADMIN, |
|
|
); |
|
|
|
|
|
$result = $userSync->synchronize($user); |
|
|
foreach ($profile as $key => $value) { |
|
|
$this->assertEquals($value, $result[$key]); |
|
|
} |
|
|
} |
|
|
} |
|
|
|