+ Add unit test of programplan::isClickable().

This commit is contained in:
xushenjie
2023-05-10 12:04:50 +00:00
parent 60a9446b77
commit b94d136906
3 changed files with 209 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
su('admin');
function initData()
{
zdTable('project')->config('project')->gen(5);
zdTable('project')->config('stage')->gen(5, $isClear = false);
$task = zdTable('task');
$task->execution->range('1-10');
$task->gen(10);
}
/**
title=测试 programplanModel::isClickable();
cid=1
pid=1
*/
initData();
global $tester;
$programplan = $tester->loadModel('programplan');
$emptyStage = new stdclass();
$stage = $programplan->getByID(6);
r($programplan::isClickable($emptyStage, $action = 'close')) && p() && e('1'); // 判断阶段为空时,是否有关闭的点击操作权限
r($programplan::isClickable($emptyStage, $action = 'create')) && p() && e('1'); // 判断阶段为空时,是否有创建的点击操作权限
r($programplan::isClickable($stage, $action = 'close')) && p() && e('1'); // 判断阶段不为空时,是否有关闭的点击操作权限
r($programplan::isClickable($stage, $action = 'create')) && p() && e('0'); // 判断阶段不为空并且该阶段下有任务,是否有创建的点击操作权限
@@ -0,0 +1,87 @@
title: table zt_project
author: xushenjie
version: "1.0"
fields:
- field: id
range: 1-100
- field: project
range: 0
- field: model
range: waterfall
- field: type
range: 'project'
- field: name
range: 1-100
prefix: '瀑布项目'
- field: desc
prefix: '瀑布项目描述'
range: 1-100
- field: status
range: wait,doing,suspended,closed
- field: lifetime
range:
- field: budget
range: 900000-1:100
- field: budgetUnit
range: CNY,USD
- field: attribute
range:
- field: percent
range: 1-100:R
- field: milestone
range: 0
- field: output
range:
- field: auth
range: "extend"
- field: parent
range: 1-10
- field: path
fields:
- field: path1
prefix: ","
range: 1-10
- field: path2
prefix: ","
range: 11-100
postfix: ","
- field: grade
range: "2"
- field: code
range: 1-10000
prefix: "project"
- field: begin
range: "(-3M)-(+M):1D"
type: timestamp
format: "YY/MM/DD"
postfix: "\t"
- field: end
range: "(+5w)-(+2M):1D"
type: timestamp
format: "YY/MM/DD"
postfix: "\t"
- field: PO
range:
- field: PM
range:
- field: QD
range:
- field: RD
range:
- field: team
range:
- field: acl
range: open,private,program
- field: order
range: 5-10000:5
- field: openedBy
range: "admin"
- field: openedVersion
range: "18.4"
- field: openedDate
range: "(-3M)-(+M):1D"
type: timestamp
format: "YY/MM/DD"
postfix: "\t"
- field: deleted
range: 0
@@ -0,0 +1,88 @@
title: table zt_project
author: xushenjie
version: "1.0"
fields:
- field: id
range: 6-10
- field: project
range: 1
- field: model
range:
- field: type
range: 'stage'
- field: name
range: 需求,设计,开发,测试,发布,总结评审
prefix: 阶段-
- field: desc
prefix: '阶段描述'
range: 1-100
- field: status
range: wait,doing,suspended
- field: lifetime
range:
- field: budget
range: 900000-1:100
- field: budgetUnit
range: CNY,USD
- field: attribute
range: request,design,dev,qa,release,review
- field: percent
range: 1-100:R
- field: milestone
range: 1
- field: output
range:
- field: auth
range: "extend"
- field: parent
range: 1-10
- field: path
fields:
- field: path1
prefix: ","
range: 5-10
- field: path2
prefix: ","
range: 6-10
postfix: ","
- field: grade
range: "2"
- field: code
range:
- field: begin
range: "(-3M)-(+M):1D"
type: timestamp
format: "YY/MM/DD"
postfix: "\t"
- field: end
range: "(+5w)-(+2M):1D"
type: timestamp
format: "YY/MM/DD"
postfix: "\t"
- field: PO
range:
- field: PM
range:
- field: QD
range:
- field: RD
range:
- field: team
range: 需求,设计,开发,测试,发布,总结评审
- field: version
range: 1
- field: acl
range: open,private,program
- field: order
range: 5-10000:5
- field: openedBy
range: "admin"
- field: openedVersion
range: "18.4"
- field: openedDate
range: "(-3M)-(+M):1D"
type: timestamp
format: "YY/MM/DD"
postfix: "\t"
- field: deleted
range: 0