From 0875144941ec683efc69733d42298a8c5e8f425c Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Fri, 6 Jan 2023 10:05:48 +0800 Subject: [PATCH] * Add test case. --- test/class/program.class.php | 13 +++++++++ test/model/program/accessdenied.php | 21 ++++++++++++++ test/model/program/savestate.php | 44 +++++++++++++++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 test/model/program/accessdenied.php create mode 100644 test/model/program/savestate.php diff --git a/test/class/program.class.php b/test/class/program.class.php index 8e5592024d..3078f1ed6a 100644 --- a/test/class/program.class.php +++ b/test/class/program.class.php @@ -374,4 +374,17 @@ class programTest { return $this->program->getStakeholders($programID, $orderBy); } + + /** + * Test save state. + * + * @param int $programID + * @param array $programs + * @access public + * @return array + */ + public function saveStateTest($programID = 0, $programs = array()) + { + return $this->program->saveState($programID, $programs); + } } diff --git a/test/model/program/accessdenied.php b/test/model/program/accessdenied.php new file mode 100644 index 0000000000..414a058e13 --- /dev/null +++ b/test/model/program/accessdenied.php @@ -0,0 +1,21 @@ +#!/usr/bin/env php +> html + +*/ + +global $tester; +$tester->loadModel('program'); +ob_start(); +$tester->program->accessDenied(); +$result = ob_get_clean(); + +r(substr($result, 1, 4)) && p() && e('html'); // 权限不足跳转 diff --git a/test/model/program/savestate.php b/test/model/program/savestate.php new file mode 100644 index 0000000000..b4aa6666df --- /dev/null +++ b/test/model/program/savestate.php @@ -0,0 +1,44 @@ +#!/usr/bin/env php +id->range('1,2'); +$program->name->range('父项目集1,父项目集2'); +$program->type->range('program'); +$program->budget->range('900000,899900'); +$program->path->range('1,2')->prefix(',')->postfix(','); +$program->begin->range('20220112 000000:0')->type('timestamp')->format('YY/MM/DD'); +$program->end->range('20220212 000000:0')->type('timestamp')->format('YY/MM/DD'); +$program->gen(2); + +su('admin'); +/** + +title=测试 programModel::saveState(); +cid=1 +pid=1 + +项目集存在且正常访问 >> html +项目集不存在 >> 0 +项目集存在,但不在可以查看的项目集列表 >> 1 +项目集存在,且在可以查看的项目集列表 >> 2 +项目集不存在,且有可以查看的项目集列表 >> 2 + +*/ + +$programTester = new programTest(); +ob_start(); +$programTester->saveStateTest(1); +$program1 = ob_get_clean(); +$program2 = $programTester->saveStateTest(0); +$program3 = $programTester->saveStateTest(1, array(1 => '')); +$program4 = $programTester->saveStateTest(3, array(2 => '')); +$program5 = $programTester->saveStateTest(0, array(2 => '')); + +r(substr($program1, 1, 4)) && p() && e('html'); // 项目集存在且正常访问 +r($program2) && p() && e('0'); // 项目集不存在 +r($program3) && p() && e('1'); // 项目集存在,但不在可以查看的项目集列表 +r($program4) && p() && e('2'); // 项目集存在,且在可以查看的项目集列表 +r($program5) && p() && e('2'); // 项目集不存在,且有可以查看的项目集列表