diff --git a/module/programplan/test/model/istopstage.php b/module/programplan/test/model/istopstage.php index 955e4a8740..367482a5e6 100755 --- a/module/programplan/test/model/istopstage.php +++ b/module/programplan/test/model/istopstage.php @@ -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 \ No newline at end of file diff --git a/module/programplan/test/model/yaml/project_istopstage.yaml b/module/programplan/test/model/yaml/project_istopstage.yaml new file mode 100644 index 0000000000..b82c969d82 --- /dev/null +++ b/module/programplan/test/model/yaml/project_istopstage.yaml @@ -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 \ No newline at end of file