+ Add test case for buildActionList method.

This commit is contained in:
tianshujie
2023-06-06 13:55:25 +08:00
parent 96b1f09cb2
commit 5394ea57cd
3 changed files with 67 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/project.class.php';
su('admin');
zdTable('project')->config('project')->gen(7);
/**
title=测试 projectModel->buildActionList();
timeout=0
cid=1
*/
$projectIdList = range(2, 7);
$projectTester = new Project();
r($projectTester->buildActionListObject($projectIdList[0])) && p() && e('start'); // 设置敏捷项目的操作按钮
r($projectTester->buildActionListObject($projectIdList[1])) && p() && e('close'); // 设置瀑布项目的操作按钮
r($projectTester->buildActionListObject($projectIdList[2])) && p() && e('start'); // 设置看板项目的操作按钮
r($projectTester->buildActionListObject($projectIdList[3])) && p() && e('active'); // 设置融合敏捷项目的操作按钮
r($projectTester->buildActionListObject($projectIdList[4])) && p() && e('close'); // 设置融合瀑布项目的操作按钮
r($projectTester->buildActionListObject($projectIdList[5], 'lite')) && p() && e('start'); // 设置迅捷页面的看板项目的操作按钮
@@ -0,0 +1,24 @@
title: zt_project
author: Shujie Tian
version: "1.0"
fields:
- field: id
range: 1-7
- field: project
range: 0
- field: model
range: '[],scrum,waterfall,kanban,agileplus,waterfallplus,kanban'
- field: type
range: 'program,project{6}'
- field: status
range: 'doing,wait,doing,suspended,closed'
- field: parent
range: '0,1{5}'
- field: path
range: '`,1,`, `,1,2,`, `,1,3,`, `,1,4,`, `,1,5,`, `,1,6,`, `,7,`'
- field: hasProduct
range: '1{5},0'
- field: name
range: '项目集,敏捷项目,瀑布项目,看板项目,融合敏捷项目,融合瀑布项目,迅捷项目'
- field: vision
range: 'rnd{6},lite'
+18
View File
@@ -267,4 +267,22 @@ class Project
return true;
}
/**
* 根据项目状态和权限生成列表中操作列按钮。
* Build table action menu for project browse page.
*
* @param int $projectID
* @param string $vision
* @access public
* @return string
*/
public function buildActionListObject(int $projectID, string $vision = 'rnd')
{
$this->project->config->vision = $vision;
$project = $this->project->getByID($projectID);
$actions = $this->project->buildActionList($project);
return current($actions);
}
}