152 lines
4.8 KiB
PHP
Executable File
152 lines
4.8 KiB
PHP
Executable File
<?php
|
|
|
|
/*
|
|
* This file is part of the mingyoung/dingtalk.
|
|
*
|
|
* (c) 张铭阳 <mingyoungcheung@gmail.com>
|
|
*
|
|
* This source file is subject to the MIT license that is bundled
|
|
* with this source code in the file LICENSE.
|
|
*/
|
|
|
|
namespace EasyDingTalk\Tests\User;
|
|
|
|
use EasyDingTalk\Tests\TestCase;
|
|
use EasyDingTalk\User\Client;
|
|
|
|
class ClientTest extends TestCase
|
|
{
|
|
/** @test */
|
|
public function get()
|
|
{
|
|
$this->make(Client::class)->get('mingyoung')
|
|
->assertUri('user/get')->assertQuery(['userid' => 'mingyoung', 'lang' => null]);
|
|
|
|
$this->make(Client::class)->get('mingyoung', 'zh-CN')
|
|
->assertUri('user/get')->assertQuery(['userid' => 'mingyoung', 'lang' => 'zh-CN']);
|
|
}
|
|
|
|
/** @test */
|
|
public function getUserIds()
|
|
{
|
|
$this->make(Client::class)->getUserIds('123')
|
|
->assertUri('user/getDeptMember')->assertQuery(['deptId' => '123']);
|
|
}
|
|
|
|
/** @test */
|
|
public function getUsers()
|
|
{
|
|
$this->make(Client::class)->getUsers('123', 10, 20)
|
|
->assertUri('user/simplelist')->assertQuery(['department_id' => '123', 'offset' => 10, 'size' => 20, 'order' => null, 'lang' => null]);
|
|
}
|
|
|
|
/** @test */
|
|
public function getDetailedUsers()
|
|
{
|
|
$this->make(Client::class)->getDetailedUsers('123', 10, 20)
|
|
->assertUri('user/listbypage')->assertQuery(['department_id' => '123', 'offset' => 10, 'size' => 20, 'order' => null, 'lang' => null]);
|
|
}
|
|
|
|
/** @test */
|
|
public function administrators()
|
|
{
|
|
$this->make(Client::class)->administrators()
|
|
->assertUri('user/get_admin');
|
|
}
|
|
|
|
/** @test */
|
|
public function administratorScope()
|
|
{
|
|
$this->make(Client::class)->administratorScope('mingyoung')
|
|
->assertUri('topapi/user/get_admin_scope')->assertQuery(['userid' => 'mingyoung']);
|
|
}
|
|
|
|
/** @test */
|
|
public function getUseridByUnionid()
|
|
{
|
|
$this->make(Client::class)->getUseridByUnionid('mingyoung')
|
|
->assertUri('user/getUseridByUnionid')->assertQuery(['unionid' => 'mingyoung']);
|
|
}
|
|
|
|
/** @test */
|
|
public function create()
|
|
{
|
|
$this->make(Client::class)->create(['userid' => 'mingyoung', 'name' => 'MINGYOUNG'])
|
|
->assertUri('user/create')->assertPostJson([
|
|
'userid' => 'mingyoung', 'name' => 'MINGYOUNG',
|
|
]);
|
|
}
|
|
|
|
/** @test */
|
|
public function update()
|
|
{
|
|
$this->make(Client::class)->update('mingyoung', ['name' => 'MINGYOUNG'])
|
|
->assertUri('user/update')->assertPostJson([
|
|
'userid' => 'mingyoung',
|
|
'name' => 'MINGYOUNG',
|
|
]);
|
|
}
|
|
|
|
/** @test */
|
|
public function delete()
|
|
{
|
|
$this->make(Client::class)->delete('mingyoung')
|
|
->assertUri('user/delete')->assertQuery(['userid' => 'mingyoung']);
|
|
}
|
|
|
|
/** @test */
|
|
public function getUserByCode()
|
|
{
|
|
$this->make(Client::class)->getUserByCode('code')
|
|
->assertUri('user/getuserinfo')->assertQuery(['code' => 'code']);
|
|
}
|
|
|
|
/** @test */
|
|
public function addRoles()
|
|
{
|
|
$this->make(Client::class)->addRoles('user1,user2', 'role1,role2')
|
|
->assertUri('topapi/role/addrolesforemps')->assertPostJson(['userIds' => 'user1,user2', 'roleIds' => 'role1,role2']);
|
|
|
|
$this->make(Client::class)->addRoles(['user1', 'user2'], ['role1', 'role2'])
|
|
->assertUri('topapi/role/addrolesforemps')->assertPostJson(['userIds' => 'user1,user2', 'roleIds' => 'role1,role2']);
|
|
}
|
|
|
|
/** @test */
|
|
public function removeRoles()
|
|
{
|
|
$this->make(Client::class)->removeRoles('user1,user2', 'role1,role2')
|
|
->assertUri('topapi/role/removerolesforemps')->assertPostJson(['userIds' => 'user1,user2', 'roleIds' => 'role1,role2']);
|
|
|
|
$this->make(Client::class)->removeRoles(['user1', 'user2'], ['role1', 'role2'])
|
|
->assertUri('topapi/role/removerolesforemps')->assertPostJson(['userIds' => 'user1,user2', 'roleIds' => 'role1,role2']);
|
|
}
|
|
|
|
/** @test */
|
|
public function getUserCount()
|
|
{
|
|
$this->make(Client::class)->getCount()
|
|
->assertUri('user/get_org_user_count')->assertQuery(['onlyActive' => 0]);
|
|
}
|
|
|
|
/** @test */
|
|
public function getActivatedCount()
|
|
{
|
|
$this->make(Client::class)->getActivatedCount()
|
|
->assertUri('user/get_org_user_count')->assertQuery(['onlyActive' => 1]);
|
|
}
|
|
|
|
/** @test */
|
|
public function getUserIdByPhone()
|
|
{
|
|
$this->make(Client::class)->getUserIdByPhone()
|
|
->assertUri('user/get_by_mobile')->assertQuery(['phone' => '18888888888']);
|
|
}
|
|
|
|
/** @test */
|
|
public function getInactiveUsers()
|
|
{
|
|
$this->make(Client::class)->getInactiveUsers()
|
|
->assertUri('topapi/inactive/user/get')->assertQuery(['query_date' => '20190808', 'offset' => 0, 'size' => 100]);
|
|
}
|
|
}
|