diff --git a/module/metric/test/lib/metric.unittest.class.php b/module/metric/test/lib/metric.unittest.class.php index deef11add3..6abb21c27c 100644 --- a/module/metric/test/lib/metric.unittest.class.php +++ b/module/metric/test/lib/metric.unittest.class.php @@ -638,4 +638,19 @@ class metricTest // 验证方法是否正确执行,通过返回成功标志 return true; } + + /** + * Test getWaterfullProjectPairs method. + * + * @param string $vision + * @access public + * @return mixed + */ + public function getWaterfullProjectPairsTest($vision = 'rnd') + { + $result = $this->objectModel->getWaterfullProjectPairs($vision); + if(dao::isError()) return dao::getError(); + + return $result; + } } \ No newline at end of file diff --git a/module/metric/test/model/getwaterfullprojectpairs.php b/module/metric/test/model/getwaterfullprojectpairs.php new file mode 100755 index 0000000000..143cc74ac8 --- /dev/null +++ b/module/metric/test/model/getwaterfullprojectpairs.php @@ -0,0 +1,31 @@ +#!/usr/bin/env php +loadYaml('project_getwaterfullprojectpairs')->gen(20); + +su('admin'); + +$metricTest = new metricTest(); + +r(count($metricTest->getWaterfullProjectPairsTest('rnd'))) && p() && e('4'); // 步骤1:查询rnd视域瀑布项目数量 +r(count($metricTest->getWaterfullProjectPairsTest('ops'))) && p() && e('0'); // 步骤2:查询ops视域瀑布项目数量 +r(count($metricTest->getWaterfullProjectPairsTest('lite'))) && p() && e('0'); // 步骤3:查询lite视域瀑布项目数量 +r(count($metricTest->getWaterfullProjectPairsTest('test'))) && p() && e('0'); // 步骤4:查询test视域瀑布项目数量 +r(count($metricTest->getWaterfullProjectPairsTest('notexist'))) && p() && e('0'); // 步骤5:查询不存在视域瀑布项目数量 \ No newline at end of file diff --git a/module/metric/test/model/yaml/project_getwaterfullprojectpairs.yaml b/module/metric/test/model/yaml/project_getwaterfullprojectpairs.yaml new file mode 100644 index 0000000000..556c5d374b --- /dev/null +++ b/module/metric/test/model/yaml/project_getwaterfullprojectpairs.yaml @@ -0,0 +1,70 @@ +--- +title: 测试getWaterfullProjectPairs方法的project表数据 +desc: 包含不同项目模型和视域的测试数据 + +fields: +- field: id + note: 项目ID + range: 1-20 + prefix: "" + postfix: "" + +- field: name + note: 项目名称 + range: '瀑布项目1,瀑布项目2,瀑布项目3,敏捷项目1,敏捷项目2,看板项目1,瀑布项目4,瀑布项目5,瀑布增强项目1,瀑布增强项目2,已删除瀑布项目,瀑布项目6,其他项目1,其他项目2,瀑布项目7,研发瀑布项目,运维瀑布项目,测试瀑布项目,瀑布增强项目3,空视域瀑布项目' + +- field: code + note: 项目代码 + range: 'P001,P002,P003,P004,P005,P006,P007,P008,P009,P010,P011,P012,P013,P014,P015,P016,P017,P018,P019,P020' + +- field: type + note: 项目类型 + range: 'project{18},sprint{1},ops{1}' + +- field: model + note: 项目模型 + range: 'waterfall{10},waterfallplus{5},scrum{3},kanban{2}' + +- field: vision + note: 项目视域 + range: 'rnd{8},ops{3},lite{3},{2},unknown{1},multi{1},test{1},rndlite{1}' + +- field: deleted + note: 是否删除 + range: '0{19},1{1}' + +- field: status + note: 项目状态 + range: 'wait{5},doing{8},suspended{2},closed{5}' + +- field: begin + note: 开始日期 + range: '2024-01-01,2024-02-01,2024-03-01,2024-04-01,2024-05-01,2024-06-01,2024-07-01,2024-08-01,2024-09-01,2024-10-01,2024-11-01,2024-12-01,2023-01-01,2023-06-01,2023-12-01,2024-01-15,2024-02-15,2024-03-15,2024-04-15,2024-05-15' + +- field: end + note: 结束日期 + range: '2024-06-30,2024-07-31,2024-08-31,2024-09-30,2024-10-31,2024-11-30,2024-12-31,2025-01-31,2025-02-28,2025-03-31,2025-04-30,2025-05-31,2023-12-31,2024-01-31,2024-06-30,2024-07-15,2024-08-15,2024-09-15,2024-10-15,2024-11-15' + +- field: days + note: 项目天数 + range: 180,181,184,183,184,181,184,184,182,181,180,181,365,31,182,181,184,183,184,183 + +- field: parent + note: 父项目ID + range: '0{18},1,1' + +- field: path + note: 项目路径 + range: ',1,,2,,3,,4,,5,,6,,7,,8,,9,,10,,11,,12,,13,,14,,15,,16,,17,,18,,1,1,,1,1,' + +- field: grade + note: 项目等级 + range: '1{18},2,2' + +- field: pri + note: 优先级 + range: '1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4' + +- field: desc + note: 项目描述 + range: '这是一个瀑布模型项目,这是一个瀑布模型项目,这是一个瀑布模型项目,这是一个敏捷项目,这是一个敏捷项目,这是一个看板项目,这是一个瀑布模型项目,这是一个瀑布模型项目,这是一个瀑布增强项目,这是一个瀑布增强项目,这是已删除的瀑布项目,这是一个瀑布模型项目,这是其他类型项目,这是其他类型项目,这是一个瀑布模型项目,研发视域瀑布项目,运维视域瀑布项目,测试视域瀑布项目,这是一个瀑布增强项目,空视域瀑布项目' \ No newline at end of file