From e6b85b927e1ebc84c276fac499f4f3fc854ed369 Mon Sep 17 00:00:00 2001 From: caoyanyi Date: Mon, 8 May 2023 11:05:06 +0800 Subject: [PATCH] * Modify test case. --- module/execution/model.php | 2 -- module/project/test/project.class.php | 18 ++++++++++++ module/project/test/tao/createproduct.php | 34 +++++++++++------------ 3 files changed, 34 insertions(+), 20 deletions(-) diff --git a/module/execution/model.php b/module/execution/model.php index 5a3b2cef7e..bc05d638ce 100755 --- a/module/execution/model.php +++ b/module/execution/model.php @@ -1767,7 +1767,6 @@ class executionModel extends model ->andWhere('vision')->eq($this->config->vision) ->beginIF($type == 'all')->andWhere('type')->in('sprint,stage,kanban')->fi() ->beginIF($type != 'all')->andWhere('type')->eq($type)->fi() - ->beginIF($projectID)->andWhere('project')->eq($projectID)->fi() ->beginIF($status == 'undone')->andWhere('status')->notIN('done,closed')->fi() ->beginIF($status != 'all' and $status != 'undone')->andWhere('status')->in($status)->fi() ->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->sprints)->fi() @@ -1820,7 +1819,6 @@ class executionModel extends model ->orWhere('t2.account')->eq($this->app->user->account) ->markRight(1) ->andWhere('t1.type')->in('sprint,stage,kanban') - ->beginIF($projectID)->andWhere('t1.project')->eq($projectID)->fi() ->orderBy('t1.order_desc') ->beginIF($limit)->limit($limit)->fi() ->fetchAll('id'); diff --git a/module/project/test/project.class.php b/module/project/test/project.class.php index 05aa216d19..238a34e4f3 100644 --- a/module/project/test/project.class.php +++ b/module/project/test/project.class.php @@ -252,4 +252,22 @@ class Project $projects = $this->project->fetchProjectListByQuery($queryType, $param, $orderBy, 15, ''); return $projects; } + + /** + * testCreateProduct + * + * @param int $projectID + * @param object $project + * @param object $postData + * @param object $program + * @access public + * @return string|array + */ + public function testCreateProduct($projectID, $project, $postData, $program) + { + $result = $this->project->createProduct($projectID, $project, $postData, $program); + if(!$result) return dao::getError(); + + return '1'; + } } diff --git a/module/project/test/tao/createproduct.php b/module/project/test/tao/createproduct.php index c39df607c9..442cabed7b 100755 --- a/module/project/test/tao/createproduct.php +++ b/module/project/test/tao/createproduct.php @@ -12,24 +12,15 @@ $program->code->range('项目集代号'); $program->desc->range('测试项目集'); $program->gen(1); +zdTable('team')->gen(0); +zdTable('product')->gen(0); + /** title=测试 projectModel->create(); timeout=0 cid=1 -- 执行projectClass模块的create方法,参数是$normalProject, $postData属性name @测试新增项目一 - -- 执行projectClass模块的create方法,参数是$emptyNameProject, $postData @『项目名称』不能为空。 - -- 执行projectClass模块的create方法,参数是$emptyEndProject, $postData @『计划完成』不能为空。 - -- 执行projectClass模块的create方法,参数是$beginGtEndProject, $postData @『计划完成』应当大于『2022-02-07』。 - -- 执行projectClass模块的create方法,参数是$emptyBeginProject, $postData @『计划开始』不能为空。 - - - */ global $tester; @@ -54,16 +45,23 @@ $project->hasProduct = 1; $project->openedBy = 'admin'; $project->openedDate = '2023-01-01'; +$emptyNameProject = clone $project; +unset($emptyNameProject->name); + +$hasProductProject = clone $project; +$hasProductProject->hasProduct = 1; +$hasProductProject->name = '测试新增产品一'; + $postData = new stdclass(); $postData->rawdata = clone $project; $postData->rawdata->uid = '64dda2xc'; $postData->rawdata->delta = 0; $postData->rawdata->products = array(1); -$projectID = $projectClass->create($normalProject, $postData); +$project = $projectClass->create($project, $postData); +$projectID = $project->id; -r($projectClass->createProduct($projectID, $project, $postData, $program)) && p('name') && e('测试新增项目一'); -//r($projectClass->createProduct($emptyNameProject, $postData)) && p('message[name]:0') && e('『项目名称』不能为空。'); -//r($projectClass->createProduct($emptyEndProject, $postData)) && p('message[end]:0') && e('『计划完成』不能为空。'); -//r($projectClass->createProduct($beginGtEndProject, $postData)) && p('message[end]:0') && e('『计划完成』应当大于『2022-02-07』。'); -//r($projectClass->createProduct($emptyBeginProject, $postData)) && p('message[begin]:0') && e('『计划开始』不能为空。'); +r($projectClass->testCreateProduct($projectID, $project, $postData, $program)) && p() && e('1'); +r($projectClass->testCreateProduct($projectID, $emptyNameProject, $postData, $program)) && p('name:0') && e('『产品名称』不能为空。'); +r($projectClass->testCreateProduct($projectID, $project, $postData, $program)) && p('name:0') && e('『产品名称』已经有『测试新增项目一』这条记录了。'); +r($projectClass->testCreateProduct($projectID, $hasProductProject, $postData, $program)) && p() && e('1');