From 4540fd0b261c5214d7b631b63662d9c8ad35b264 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Mon, 18 Sep 2023 09:55:28 +0800 Subject: [PATCH] + Add case for the buildProgramActionsMap and getNormalActions method. --- module/program/tao.php | 1 - module/program/test/program.class.php | 14 +++++++++++ .../test/tao/buildprogramactionsmap.php | 25 +++++++++++++++++++ module/program/test/tao/getbasedatalist.php | 1 + 4 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 module/program/test/tao/buildprogramactionsmap.php diff --git a/module/program/tao.php b/module/program/tao.php index 31612914b8..d540699783 100644 --- a/module/program/tao.php +++ b/module/program/tao.php @@ -59,7 +59,6 @@ class programTao extends programModel protected function buildProgramActionsMap(object $program): array { if($program->type == 'program' && !str_contains(",{$this->app->user->view->programs},", ",$program->id,")) return array(); - if($program->type == 'project') $this->loadModel('project'); $actionsMap = array(); diff --git a/module/program/test/program.class.php b/module/program/test/program.class.php index caa684585a..a4f56e0667 100644 --- a/module/program/test/program.class.php +++ b/module/program/test/program.class.php @@ -469,6 +469,20 @@ class programTest return $this->program->getByID($programID); } + /** + * 构建项目视角中项目的操作数据。 + * Build actions map for project. + * + * @param int $programID + * @access public + * @return array + */ + public function buildProgramActionsMapTest(int $programID): array + { + $program = $this->program->getByID($programID); + return $this->program->buildProgramActionsMap($program); + } + /** * Test getNormalActions method. * diff --git a/module/program/test/tao/buildprogramactionsmap.php b/module/program/test/tao/buildprogramactionsmap.php new file mode 100644 index 0000000000..96d39ecd7c --- /dev/null +++ b/module/program/test/tao/buildprogramactionsmap.php @@ -0,0 +1,25 @@ +#!/usr/bin/env php +gen(5); +zdTable('project')->config('program')->gen(40); +su('admin'); + +/** + +title=测试 programTao::buildProgramActionsMap(); +timeout=0 +cid=1 + +*/ + +$objectIdList = array(1, 2, 11, 60, 100); + +$programTester = new programTest(); +r($programTester->buildProgramActionsMapTest($objectIdList[0])) && p('0:name') && e('close'); // 测试生成项目集id为1的操作按钮数据。 +r($programTester->buildProgramActionsMapTest($objectIdList[1])) && p('0:name') && e('close'); // 测试生成项目集id为2的操作按钮数据。 +r($programTester->buildProgramActionsMapTest($objectIdList[2])) && p('0:name') && e('close'); // 测试生成敏捷项目的操作按钮数据。 +r($programTester->buildProgramActionsMapTest($objectIdList[3])) && p('0:name') && e('close'); // 测试生成瀑布项目的操作按钮数据。 +r($programTester->buildProgramActionsMapTest($objectIdList[4])) && p('0:name') && e('close'); // 测试生成看板项目的操作按钮数据。 diff --git a/module/program/test/tao/getbasedatalist.php b/module/program/test/tao/getbasedatalist.php index aa0ce3d707..b03509c4bd 100644 --- a/module/program/test/tao/getbasedatalist.php +++ b/module/program/test/tao/getbasedatalist.php @@ -3,6 +3,7 @@ include dirname(__FILE__, 5) . '/test/lib/init.php'; include dirname(__FILE__, 2) . '/program.class.php'; +zdTable('team')->gen(5); zdTable('project')->config('program')->gen(40); su('admin');