+ Add design::getAffectedScope unit test.

This commit is contained in:
tianshujie
2023-12-15 16:17:13 +08:00
parent 83bac0ad6e
commit bfbaa73259
3 changed files with 58 additions and 0 deletions
+17
View File
@@ -293,4 +293,21 @@ class designTest
if(dao::isError()) return dao::getError();
return $designs;
}
/**
* 获取设计变更后受影响的任务。
* Get affected tasks after design changed.
*
* @param int $designID
* @access public
* @return array
*/
public function getAffectedScopeTest(int $designID = 0): array
{
$design = $this->objectModel->getByID($designID);
if(!$design) $design = new stdclass();
$design = $this->objectModel->getAffectedScope($design);
return isset($design->tasks) ? $design->tasks : array();
}
}
+30
View File
@@ -0,0 +1,30 @@
#!/usr/bin/env php
<?php
/**
title=测试 designModel->getAffectedScope();
cid=1
- 测试设计ID为0时,受影响的任务信息 @0
- 测试设计ID为1时,受影响的任务信息
- 第1条的id属性 @4
- 第1条的name属性 @关联设计的任务4
- 第1条的design属性 @1
- 测试设计ID为2时,受影响的任务信息 @0
- 测试设计ID不存在时,受影响的任务信息 @0
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/design.class.php';
zdTable('design')->config('design')->gen(2);
zdTable('task')->config('task')->gen(5);
$idList = array(0, 1, 2, 3);
$designTester = new designTest();
r($designTester->getAffectedScopeTest($idList[0])) && p() && e('0'); // 测试设计ID为0时,受影响的任务信息
r($designTester->getAffectedScopeTest($idList[1])) && p('1:id,name,design') && e('4,关联设计的任务4,1'); // 测试设计ID为1时,受影响的任务信息
r($designTester->getAffectedScopeTest($idList[2])) && p() && e('0'); // 测试设计ID为2时,受影响的任务信息
r($designTester->getAffectedScopeTest($idList[3])) && p() && e('0'); // 测试设计ID不存在时,受影响的任务信息
+11
View File
@@ -0,0 +1,11 @@
title: zt_task
author: Shujie Tian
version: 1.0.0
fields:
- field: id
range: 1-100
- field: name
range: 1-100
prefix: '关联设计的任务'
- field: design
range: 1