* [misc] Enhance unit tests for kanbanModel::addSpaceMembers() method

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
liugang
2025-09-25 11:29:58 +08:00
co-authored by Claude
parent 7cea369333
commit a9618dd6d8
+30 -25
View File
@@ -1,37 +1,42 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/kanban.unittest.class.php';
su('admin');
zenData('kanbanspace')->gen(2);
/**
title=测试 kanbanModel->addSpaceMembers();
timeout=0
cid=1
title=测试 kanbanModel::addSpaceMembers();
cid=0
- 查看添加成员后的看板空间1字段
- 属性whitelist @,user3,po15,,admin,po1,dev1,qa1
- 属性team @,user3,po15,,admin,po1,dev1,qa1
- 查看添加成员后的看板空间2字段
- 属性whitelist @,user4,po16,,admin,po1,dev1,qa1
- 属性team @,user4,po16,,admin,po1,dev1,qa1
- 测试步骤1:正常添加成员到whitelist >> 期望成功添加新成员
- 测试步骤2:正常添加成员到team >> 期望成功添加新成员
- 测试步骤3:重复添加已存在成员 >> 期望不重复添加
- 测试步骤4:添加空成员数组 >> 期望无任何变化
- 测试步骤5:处理不存在的空间ID >> 期望无操作且无报错
- 测试步骤6:测试边界值情况 >> 期望正确处理特殊输入
- 测试步骤7:验证成员添加的完整性 >> 期望所有新成员都被正确添加
*/
global $tester;
$tester->loadModel('kanban');
$members = array('admin', 'po1', 'dev1', 'qa1');
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/kanban.unittest.class.php';
$tester->kanban->addSpaceMembers(1, 'whitelist', $members);
$tester->kanban->addSpaceMembers(1, 'team', $members);
$tester->kanban->addSpaceMembers(2, 'whitelist', $members);
$tester->kanban->addSpaceMembers(2, 'team', $members);
$table = zenData('kanbanspace');
$table->id->range('1-3');
$table->name->range('测试空间1,测试空间2,测试空间3');
$table->type->range('private,cooperation,public');
$table->owner->range('admin,user1,user2');
$table->team->range('user3,po15,user4');
$table->whitelist->range('user3,po15,user4');
$table->status->range('active{3}');
$table->gen(3);
$space1 = $tester->kanban->getSpaceById(1);
$space2 = $tester->kanban->getSpaceById(2);
su('admin');
r($space1) && p('whitelist|team', '|') && e(',user3,po15,,admin,po1,dev1,qa1|,user3,po15,,admin,po1,dev1,qa1'); // 查看添加成员后的看板空间1字段
r($space2) && p('whitelist|team', '|') && e(',user4,po16,,admin,po1,dev1,qa1|,user4,po16,,admin,po1,dev1,qa1'); // 查看添加成员后的看板空间2字段
$kanbanTest = new kanbanTest();
r($kanbanTest->addSpaceMembersTest(1, 'whitelist', array('admin', 'po1', 'dev1', 'qa1'))) && p('fieldValue') && e('user3,admin,po1,dev1,qa1');
r($kanbanTest->addSpaceMembersTest(2, 'team', array('admin', 'po1', 'dev1', 'qa1'))) && p('fieldValue') && e('po15,admin,po1,dev1,qa1');
r($kanbanTest->addSpaceMembersTest(1, 'whitelist', array('admin', 'user3'))) && p('fieldValue') && e('user3,admin,po1,dev1,qa1');
r($kanbanTest->addSpaceMembersTest(3, 'team', array())) && p('fieldValue') && e('user4');
r($kanbanTest->addSpaceMembersTest(999, 'whitelist', array('test1', 'test2'))) && p('fieldValue') && e('~~');
r($kanbanTest->addSpaceMembersTest(1, 'team', array('specialuser', '', 'normaluser'))) && p('fieldValue') && e('user3,specialuser,,normaluser');
r($kanbanTest->addSpaceMembersTest(3, 'whitelist', array('newuser1', 'newuser2', 'newuser3'))) && p('fieldValue') && e('user4,newuser1,newuser2,newuser3');