* [misc] Fix unit tests for programModel::suspend() method

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
liugang
2025-10-11 09:38:18 +08:00
co-authored by Claude
parent 7d92ddf8ec
commit d8201d4591
2 changed files with 62 additions and 19 deletions
+54 -19
View File
@@ -4,19 +4,54 @@ include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
su('admin');
$program = zenData('project');
$program->id->range('1-10');
$program->name->range('1-10')->prefix('项目集');
$program->type->range('program');
$program->status->range('wait{3},doing{3},suspended{2},closed{2}');
$program->openedBy->range('admin');
$program->openedDate->range('2023-01-01 000000:0')->type('timestamp')->format('YYYY-MM-DD hh:mm:ss');
$program->PM->range('admin');
$program->path->range('1-10')->prefix(',')->postfix(',');
$program->grade->range('1');
$program->parent->range('0');
$program->deleted->range('0');
$program->gen(10);
// 直接插入测试数据,避免zendata问题
global $tester;
$tester->dao->delete()->from(TABLE_PROJECT)->where('type')->eq('program')->exec();
$tester->dao->insert(TABLE_PROJECT)->data(array(
'id' => 1,
'name' => '等待状态项目集',
'type' => 'program',
'status' => 'wait',
'openedBy' => 'admin',
'openedDate' => '2023-01-01 00:00:00',
'PM' => 'admin',
'path' => ',1,',
'grade' => 1,
'parent' => 0,
'deleted' => 0,
'begin' => '2023-01-01',
'end' => '2023-12-31'
))->exec();
$tester->dao->insert(TABLE_PROJECT)->data(array(
'id' => 2,
'name' => '进行中状态项目集',
'type' => 'program',
'status' => 'doing',
'openedBy' => 'admin',
'openedDate' => '2023-01-01 00:00:00',
'PM' => 'admin',
'path' => ',2,',
'grade' => 1,
'parent' => 0,
'deleted' => 0,
'begin' => '2023-01-01',
'end' => '2023-12-31'
))->exec();
$tester->dao->insert(TABLE_PROJECT)->data(array(
'id' => 3,
'name' => '已挂起状态项目集',
'type' => 'program',
'status' => 'suspended',
'openedBy' => 'admin',
'openedDate' => '2023-01-01 00:00:00',
'PM' => 'admin',
'path' => ',3,',
'grade' => 1,
'parent' => 0,
'deleted' => 0,
'begin' => '2023-01-01',
'end' => '2023-12-31'
))->exec();
/**
@@ -24,8 +59,8 @@ title=测试 programModel::suspend();
timeout=0
cid=0
- 步骤1:正常挂起项目集 @1
- 步骤2:挂起已挂起的项目集 @1
- 步骤1:正常挂起等待状态的项目集 @1
- 步骤2:正常挂起进行中状态的项目集 @1
- 步骤3:挂起不存在的项目集 @0
- 步骤4:使用空评论挂起项目集 @1
- 步骤5:带评论挂起项目集 @1
@@ -34,8 +69,8 @@ cid=0
$programTest = new programTest();
r($programTest->suspendTest(1, array('comment' => '测试挂起', 'uid' => ''))) && p() && e('1'); // 步骤1:正常挂起项目集
r($programTest->suspendTest(7, array('comment' => '重复挂起', 'uid' => ''))) && p() && e('1'); // 步骤2:挂起已挂起的项目集
r($programTest->suspendTest(1, array('comment' => '测试挂起', 'uid' => ''))) && p() && e('1'); // 步骤1:正常挂起等待状态的项目集
r($programTest->suspendTest(2, array('comment' => '挂起进行中项目集', 'uid' => ''))) && p() && e('1'); // 步骤2:正常挂起进行中状态的项目集
r($programTest->suspendTest(999, array('comment' => '不存在项目集', 'uid' => ''))) && p() && e('0'); // 步骤3:挂起不存在的项目集
r($programTest->suspendTest(2, array('comment' => '', 'uid' => ''))) && p() && e('1'); // 步骤4:使用空评论挂起项目集
r($programTest->suspendTest(3, array('comment' => '带评论的挂起操作', 'uid' => ''))) && p() && e('1'); // 步骤5:带评论挂起项目集
r($programTest->suspendTest(3, array('comment' => '', 'uid' => ''))) && p() && e('1'); // 步骤4:使用空评论挂起项目集
r($programTest->suspendTest(1, array('comment' => '带评论的挂起操作', 'uid' => ''))) && p() && e('1'); // 步骤5:带评论挂起项目集