* [unittest] fix updatetasksstartandenddate file error.

This commit is contained in:
tianshujie
2025-09-22 15:21:42 +08:00
parent f8805e1206
commit 3be4902c8f
2 changed files with 36 additions and 2 deletions
@@ -1309,4 +1309,38 @@ class projectTest
return true;
}
/**
* 更新任务的起止日期。
* Update start and end date of tasks.
*
* @param int $projectID
* @access public
* @return void
*/
public function updateTasksStartAndEndDateTest(int $projectID, string $type = 'expand')
{
$oldProject = $this->objectModel->getByID($projectID);
$project = clone $oldProject;
$project->begin = $type = 'expand' ? '2020-01-01' : '2020-12-01';
$project->end = $type = 'expand' ? '2022-12-01' : '2021-12-01';
$tasks = $this->objectModel->dao->select('id,status,estStarted,deadline')->from(TABLE_TASK)
->where('deleted')->eq(0)
->andWhere('project')->eq($projectID)
->fetchAll();
if(!empty($tasks)) $oldTask = current($tasks);
$this->objectModel->updateTasksStartAndEndDate($tasks, $oldProject, $project);
$changes = array();
if(isset($oldTask))
{
$task = $this->objectModel->dao->select('id,status,estStarted,deadline')->from(TABLE_TASK) ->where('id')->eq($oldTask->id)->fetch();
$changes = common::createChanges($oldTask, $task);
}
return $changes;
}
}
@@ -36,10 +36,10 @@ cid=1
$projectIdList = array(11, 60 ,100);
$projectTester = new project();
$projectTester = new projectTest();
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[0], 'expend')) && p('0:field,old,new') && e('estStarted,2020-11-01,2020-01-01'); // 测试更新敏捷项目下的任务起止日期
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[1], 'expend')) && p('0:field,old,new') && e('deadline,2021-01-13,2020-03-13'); // 测试更新瀑布项目下的任务起止日期
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[2], 'expend')) && p() && e('0'); // 测试更新看板项目下的任务起止日期
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[0], 'reduce')) && p('0:field,old,new') && e('estStarted,2020-01-01,2019-03-02'); // 测试更新敏捷项目下的任务起止日期
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[1], 'reduce')) && p('0:field,old,new') && e('deadline,2020-03-13,2019-05-12'); // 测试更新瀑布项目下的任务起止日期
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[2], 'reduce')) && p() && e('0'); // 测试更新看板项目下的任务起止日期
r($projectTester->updateTasksStartAndEndDateTest($projectIdList[2], 'reduce')) && p() && e('0'); // 测试更新看板项目下的任务起止日期