* [misc] Enhance unit tests for programplanModel::isTopStage() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -3,12 +3,17 @@
|
||||
|
||||
/**
|
||||
|
||||
title=测试programplanModel->isTopStage();
|
||||
title=测试 programplanModel::isTopStage();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 测试id为2判断是否为顶级阶段 @1
|
||||
- 测试id为4判断是否为顶级阶段 @0
|
||||
- 测试id为5判断是否为顶级阶段 @1
|
||||
- 测试父项目类型为project的阶段ID=3 @1
|
||||
- 测试父项目类型为project的阶段ID=5 @1
|
||||
- 测试父项目类型为stage的阶段ID=7 @0
|
||||
- 测试不存在的阶段ID=999 @0
|
||||
- 测试无效的阶段ID=0 @0
|
||||
- 测试父项目类型为stage的阶段ID=8 @0
|
||||
- 测试负数的阶段ID=-1 @0
|
||||
|
||||
*/
|
||||
|
||||
@@ -18,10 +23,21 @@ include dirname(__FILE__, 2) . '/lib/programplan.unittest.class.php';
|
||||
zenData('user')->gen(5);
|
||||
su('admin');
|
||||
|
||||
zenData('project')->loadYaml('istopstage')->gen(5);
|
||||
$projectTable = zenData('project');
|
||||
$projectTable->id->range('1-10');
|
||||
$projectTable->type->range('program{1},project{1},stage{1},project{1},stage{3},sprint{1},stage{2}');
|
||||
$projectTable->parent->range('0{1},0{1},2{1},0{1},4{1},2{1},3{1},6{1},7{1},8{1}');
|
||||
$projectTable->name->range('项目集1,项目1,阶段1,项目2,阶段2,阶段3,阶段4,阶段5,阶段6,阶段7');
|
||||
$projectTable->status->range('wait{2},doing{4},suspended{2},closed{2}');
|
||||
$projectTable->deleted->range('0');
|
||||
$projectTable->gen(10);
|
||||
|
||||
$plan = new programplanTest();
|
||||
$programplanTest = new programplanTest();
|
||||
|
||||
r($plan->isTopStageTest(2)) && p('') && e('1'); // 测试id为2判断是否为顶级阶段
|
||||
r($plan->isTopStageTest(4)) && p('') && e('0'); // 测试id为4判断是否为顶级阶段
|
||||
r($plan->isTopStageTest(5)) && p('') && e('1'); // 测试id为5判断是否为顶级阶段
|
||||
r($programplanTest->isTopStageTest(3)) && p('') && e('1'); // 测试父项目类型为project的阶段ID=3
|
||||
r($programplanTest->isTopStageTest(5)) && p('') && e('1'); // 测试父项目类型为project的阶段ID=5
|
||||
r($programplanTest->isTopStageTest(7)) && p('') && e('0'); // 测试父项目类型为stage的阶段ID=7
|
||||
r($programplanTest->isTopStageTest(999)) && p('') && e('0'); // 测试不存在的阶段ID=999
|
||||
r($programplanTest->isTopStageTest(0)) && p('') && e('0'); // 测试无效的阶段ID=0
|
||||
r($programplanTest->isTopStageTest(8)) && p('') && e('0'); // 测试父项目类型为stage的阶段ID=8
|
||||
r($programplanTest->isTopStageTest(-1)) && p('') && e('0'); // 测试负数的阶段ID=-1
|
||||
@@ -0,0 +1,33 @@
|
||||
---
|
||||
title: project table for isTopStage method test
|
||||
author: Claude
|
||||
version: "1.0"
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
range: 1-10
|
||||
- field: project
|
||||
range: 0{3},1{2},2{2},3{1},4{1},5{1}
|
||||
- field: type
|
||||
range: program{3},project{3},stage{3},sprint{1}
|
||||
- field: parent
|
||||
range: 0{3},1{3},2{2},3{1},4{1}
|
||||
- field: name
|
||||
fields:
|
||||
- field: name1
|
||||
range: 顶级项目集{3},子项目{3},子阶段{3},迭代{1}
|
||||
- field: name2
|
||||
range: 1-10
|
||||
- field: path
|
||||
fields:
|
||||
- field: path1
|
||||
prefix: ","
|
||||
range: 1-10
|
||||
- field: path2
|
||||
prefix: ","
|
||||
range: "[]{3},11-100"
|
||||
postfix: ","
|
||||
- field: status
|
||||
range: wait{2},doing{4},suspended{2},closed{2}
|
||||
- field: deleted
|
||||
range: 0
|
||||
Reference in New Issue
Block a user