From 779c2a25cc7c4e2dc1a79a21dbe8ab45f6be1b28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E5=B9=BF=E6=98=8E?= Date: Wed, 30 Mar 2022 13:47:17 +0800 Subject: [PATCH] * Finish story test. --- test/class/story.class.php | 180 ------------------ test/model/story/create.php | 2 +- .../story/getdataofstorysperclosedreason.php | 8 +- test/model/story/getestimateinfo.php | 7 +- test/model/story/getrelation.php | 18 -- test/model/story/getstoryrelation.php | 10 +- test/model/story/linkstories.php | 16 +- test/model/story/linkstory.php | 19 +- test/model/story/recordreviewaction.php | 18 -- test/model/story/review.php | 2 +- test/model/story/setstatusbyreviewrules.php | 17 +- test/model/story/sortstoriesofplan.php | 17 +- test/model/story/superreview.php | 18 -- test/model/story/unlinkstory.php | 12 +- test/model/story/updatestorybyreview.php | 18 -- 15 files changed, 87 insertions(+), 275 deletions(-) delete mode 100644 test/model/story/getrelation.php delete mode 100644 test/model/story/recordreviewaction.php delete mode 100644 test/model/story/superreview.php delete mode 100644 test/model/story/updatestorybyreview.php diff --git a/test/class/story.class.php b/test/class/story.class.php index 653a8e7013..28c632d118 100644 --- a/test/class/story.class.php +++ b/test/class/story.class.php @@ -500,184 +500,4 @@ class storyTest $storyIdList = array_keys($changes); return $this->objectModel->getByList($storyIdList); } - - public function reportConditionTest() - { - $objects = $this->objectModel->reportCondition(); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function checkForceReviewTest() - { - $objects = $this->objectModel->checkForceReview(); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getTracksTest($productID = 0, $branch = 0, $projectID = 0, $pager = null) - { - $objects = $this->objectModel->getTracks($productID = 0, $branch = 0, $projectID = 0, $pager = null); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getTrackByIDTest($storyID) - { - $objects = $this->objectModel->getTrackByID($storyID); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getStoryRelationTest($storyID, $storyType, $fields = array()) - { - $objects = $this->objectModel->getStoryRelation($storyID, $storyType, $fields = array()); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function linkStoryTest($executionID, $productID, $storyID) - { - $objects = $this->objectModel->linkStory($executionID, $productID, $storyID); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function linkStoriesTest($storyID) - { - $objects = $this->objectModel->linkStories($storyID); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function unlinkStoryTest($storyID, $linkedStoryID) - { - $objects = $this->objectModel->unlinkStory($storyID, $linkedStoryID); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getRelationTest($storyID, $storyType, $fields = array()) - { - $objects = $this->objectModel->getRelation($storyID, $storyType, $fields = array()); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getStoryRelationCountsTest($storyID, $storyType = '') - { - $objects = $this->objectModel->getStoryRelationCounts($storyID, $storyType = ''); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getEstimateInfoTest($storyID, $round = 0) - { - $objects = $this->objectModel->getEstimateInfo($storyID, $round = 0); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getEstimateRoundsTest($storyID) - { - $objects = $this->objectModel->getEstimateRounds($storyID); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function saveEstimateInfoTest($storyID) - { - $objects = $this->objectModel->saveEstimateInfo($storyID); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function sortStoriesOfPlanTest($planID, $sortIDList, $orderBy = 'id_desc', $pageID = 1, $recPerPage = 100) - { - $objects = $this->objectModel->sortStoriesOfPlan($planID, $sortIDList, $orderBy = 'id_desc', $pageID = 1, $recPerPage = 100); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function replaceURLangTest($type) - { - $objects = $this->objectModel->replaceURLang($type); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function getReviewerPairsTest($storyID, $version) - { - $objects = $this->objectModel->getReviewerPairs($storyID, $version); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function setStatusByReviewRulesTest($reviewerList) - { - $objects = $this->objectModel->setStatusByReviewRules($reviewerList); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function recordReviewActionTest($story, $result = '', $reason = '') - { - $objects = $this->objectModel->recordReviewAction($story, $result = '', $reason = ''); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function updateStoryByReviewTest($storyID, $oldStory, $story) - { - $objects = $this->objectModel->updateStoryByReview($storyID, $oldStory, $story); - - if(dao::isError()) return dao::getError(); - - return $objects; - } - - public function superReviewTest($storyID, $oldStory, $story, $result = '', $reason = '') - { - $objects = $this->objectModel->superReview($storyID, $oldStory, $story, $result = '', $reason = ''); - - if(dao::isError()) return dao::getError(); - - return $objects; - } } diff --git a/test/model/story/create.php b/test/model/story/create.php index 1b176b11a7..252406f23b 100644 --- a/test/model/story/create.php +++ b/test/model/story/create.php @@ -47,4 +47,4 @@ r($result1[0]) && p() && e('『由谁评审』不能为 r($result2) && p('fromBug,stage,product') && e('0,projected,1'); //不勾选由谁评审传入评审人的情况,正常插入 r($result3) && p('title,fromBug,stage') && e('测试需求3,2,wait'); //勾选由谁评审,不传入executionID的情况,阶段为wait r($result4) && p('title:0') && e('『研发需求名称』不能为空。'); //勾选由谁评审,传入executionID和fromBug的情况,阶段为projected -system("./ztest init"); \ No newline at end of file +system("./ztest init"); diff --git a/test/model/story/getdataofstorysperclosedreason.php b/test/model/story/getdataofstorysperclosedreason.php index 30f6123188..ed8b42a5ec 100644 --- a/test/model/story/getdataofstorysperclosedreason.php +++ b/test/model/story/getdataofstorysperclosedreason.php @@ -14,9 +14,11 @@ pid=1 global $tester; $tester->loadModel('story'); +$tester->loadModel('report'); $data = $tester->story->getDataOfStorysPerClosedReason(); -r(count($data)) && p() && e('3'); // 按照需求关闭原因分组,获取分组后的需求数量 -r($data) && p('1:name,value') && e('1,80'); // 按照需求关闭原因分组,获取各个关闭原因下的需求数量,查看admin下的数据 -r($data) && p('2:name,value') && e('0,350'); // 按照需求关闭原因分组,获取各个关闭原因下的需求数量,查看admin下的数据 +r(count($data)) && p() && e('8'); // 按照需求关闭原因分组,获取分组后的需求数量 +r($data) && p('willnotdo:name,value') && e('不做,12'); // 按照需求关闭原因分组,获取各个关闭原因下的需求数量,查看willnotdo的数据 +r($data) && p('bydesign:name,value') && e('设计如此,12'); // 按照需求关闭原因分组,获取各个关闭原因下的需求数量,查看bydesign的数据 +r($data) && p('cancel:name,value') && e('已取消,11'); // 按照需求关闭原因分组,获取各个关闭原因下的需求数量,查看cancel的数据 diff --git a/test/model/story/getestimateinfo.php b/test/model/story/getestimateinfo.php index c1e5cd7d5d..ff87ebcd22 100644 --- a/test/model/story/getestimateinfo.php +++ b/test/model/story/getestimateinfo.php @@ -1,6 +1,5 @@ loadModel('story'); +$storyInfo = $tester->story->getEstimateInfo(2); -r() && p() && e(); \ No newline at end of file +r() && p() && e(); diff --git a/test/model/story/getrelation.php b/test/model/story/getrelation.php deleted file mode 100644 index 5898c342b9..0000000000 --- a/test/model/story/getrelation.php +++ /dev/null @@ -1,18 +0,0 @@ -getRelation(); -cid=1 -pid=1 - - - -*/ - -$story = new storyTest(); - -r() && p() && e(); \ No newline at end of file diff --git a/test/model/story/getstoryrelation.php b/test/model/story/getstoryrelation.php index 928685fd7d..edbde776fe 100644 --- a/test/model/story/getstoryrelation.php +++ b/test/model/story/getstoryrelation.php @@ -1,6 +1,5 @@ loadModel('story')->getStoryRelation(25, 'requirement'); +$relations2 = $tester->story->getStoryRelation(26, 'story'); -r() && p() && e(); \ No newline at end of file +r(count($relations1)) && p() && e('1'); // 获取用户需求25关联的软件需求数量 +r(count($relations2)) && p() && e('1'); // 获取软件需求26关联的用户需求数量 +r($relations1[0]) && p('title,type,status') && e('软件需求26,story,active'); // 获取用户需求25关联的软件需求详情 +r($relations2[0]) && p('title,type,status') && e('用户需求25,requirement,draft'); // 获取软件需求26关联的用户需求详情 diff --git a/test/model/story/linkstories.php b/test/model/story/linkstories.php index fa1cd65fb2..9d695b6ce4 100644 --- a/test/model/story/linkstories.php +++ b/test/model/story/linkstories.php @@ -13,6 +13,18 @@ pid=1 */ -$story = new storyTest(); +global $tester; +$tester->loadModel('story'); -r() && p() && e(); \ No newline at end of file +$beforeRelations = $tester->story->getRelation(1, 'requirement'); + +$storyIdList = array(300, 302, 304, 306); +$_POST['stories'] = $storyIdList; +$tester->story->linkStories(1); + +$afterRelations = $tester->story->getRelation(1, 'requirement'); + +r(count($beforeRelations)) && p() && e('0'); // 查看关联前的关联关系数量 +r(count($afterRelations)) && p() && e('4'); // 查看关联后的关联关系数量 +r($afterRelations) && p('300,302,304,306') && e('软件需求300,软件需求302,软件需求304,软件需求306'); // 查看关联后的需求详情 +system("./ztest init"); diff --git a/test/model/story/linkstory.php b/test/model/story/linkstory.php index b42c70e4f5..d10ae9dad8 100644 --- a/test/model/story/linkstory.php +++ b/test/model/story/linkstory.php @@ -1,6 +1,5 @@ loadModel('story'); +$tester->story->linkStory(11, 1, 300); +$tester->story->linkStory(12, 1, 302); +$tester->story->linkStory(13, 1, 304); -r() && p() && e(); \ No newline at end of file +$stories1 = $tester->story->getExecutionStories(11); +$stories2 = $tester->story->getExecutionStories(12); +$stories3 = $tester->story->getExecutionStories(13); + +r(count($stories1)) && p() && e('5'); // 获取关联需求后的执行下的需求数量 +r(count($stories2)) && p() && e('5'); // 获取关联需求后的执行下的需求数量 +r(count($stories3)) && p() && e('5'); // 获取关联需求后的执行下的需求数量 +r($stories1) && p('300:title,type,stage') && e('软件需求300,story,closed'); // 获取关联需求后的执行下的需求详情 +r($stories2) && p('302:title,type,stage') && e('软件需求302,story,planned'); // 获取关联需求后的执行下的需求详情 +r($stories3) && p('304:title,type,stage') && e('软件需求304,story,developing'); // 获取关联需求后的执行下的需求详情 +system("./ztest init"); diff --git a/test/model/story/recordreviewaction.php b/test/model/story/recordreviewaction.php deleted file mode 100644 index c29bd9581f..0000000000 --- a/test/model/story/recordreviewaction.php +++ /dev/null @@ -1,18 +0,0 @@ -recordReviewAction(); -cid=1 -pid=1 - - - -*/ - -$story = new storyTest(); - -r() && p() && e(); \ No newline at end of file diff --git a/test/model/story/review.php b/test/model/story/review.php index 689aca7bb7..b46ccf2ccb 100644 --- a/test/model/story/review.php +++ b/test/model/story/review.php @@ -26,4 +26,4 @@ $review3 = $story->reviewTest(304, $reject); r($review1[0]) && p() && e('必须选择评审意见'); // 评审ID为2的需求,不传入评审意见,给出没有选择评审意见的提示 r($review2) && p('status') && e('active'); // 评审一个草稿的需求,传入评审意见为通过,状态变为激活 r($review3) && p('status') && e('closed'); // 评审一个草稿的需求,传入评审意见为拒绝,状态变为关闭 -system("./ztest init"); \ No newline at end of file +system("./ztest init"); diff --git a/test/model/story/setstatusbyreviewrules.php b/test/model/story/setstatusbyreviewrules.php index a58d5ff350..319f439c53 100644 --- a/test/model/story/setstatusbyreviewrules.php +++ b/test/model/story/setstatusbyreviewrules.php @@ -13,6 +13,19 @@ pid=1 */ -$story = new storyTest(); +global $tester; +$tester->loadModel('story'); +$reviewList1 = array('pass', 'pass', 'reject'); +$reviewList2 = array('pass', 'pass', 'pass'); +$reviewList3 = array('pass', 'reject', 'reject'); +$reviewList4 = array('reject', 'reject', 'reject'); -r() && p() && e(); \ No newline at end of file +$result1 = $tester->story->setStatusByReviewRules($reviewList1); +$result2 = $tester->story->setStatusByReviewRules($reviewList2); +$result3 = $tester->story->setStatusByReviewRules($reviewList3); +$result4 = $tester->story->setStatusByReviewRules($reviewList4); + +r($result1) && p() && e('0'); // 传入两个通过一个拒绝,查看返回结果 +r($result2) && p() && e('active'); // 传入全部通过,查看返回结果 +r($result3) && p() && e('0'); // 传入两个拒绝一个通过,查看返回结果 +r($result4) && p() && e('closed'); // 传入三个拒绝,查看返回结果 diff --git a/test/model/story/sortstoriesofplan.php b/test/model/story/sortstoriesofplan.php index d99b898e41..124cfee48d 100644 --- a/test/model/story/sortstoriesofplan.php +++ b/test/model/story/sortstoriesofplan.php @@ -13,6 +13,19 @@ pid=1 */ -$story = new storyTest(); +global $tester; +$tester->loadModel('story'); +$beforeStories = $tester->story->getPlanStories(1); +$tester->story->sortStoriesOfPlan(1, array(3, 1, 4, 2)); +$afterStories = $tester->story->getPlanStories(1); -r() && p() && e(); \ No newline at end of file + +r($beforeStories) && p('1:order') && e('5'); //获取更新排序之前的需求在计划下的排序 +r($beforeStories) && p('2:order') && e('10'); //获取更新排序之前的需求在计划下的排序 +r($beforeStories) && p('3:order') && e('15'); //获取更新排序之前的需求在计划下的排序 +r($beforeStories) && p('4:order') && e('20'); //获取更新排序之前的需求在计划下的排序 +r($afterStories) && p('1:order') && e('2'); //获取更新排序之后的需求在计划下的排序 +r($afterStories) && p('2:order') && e('4'); //获取更新排序之后的需求在计划下的排序 +r($afterStories) && p('3:order') && e('1'); //获取更新排序之后的需求在计划下的排序 +r($afterStories) && p('4:order') && e('3'); //获取更新排序之后的需求在计划下的排序 +system("./ztest init"); diff --git a/test/model/story/superreview.php b/test/model/story/superreview.php deleted file mode 100644 index c351eff7b4..0000000000 --- a/test/model/story/superreview.php +++ /dev/null @@ -1,18 +0,0 @@ -superReview(); -cid=1 -pid=1 - - - -*/ - -$story = new storyTest(); - -r() && p() && e(); \ No newline at end of file diff --git a/test/model/story/unlinkstory.php b/test/model/story/unlinkstory.php index 4ee546fe14..2173fc8848 100644 --- a/test/model/story/unlinkstory.php +++ b/test/model/story/unlinkstory.php @@ -1,6 +1,5 @@ loadModel('story'); -r() && p() && e(); \ No newline at end of file +$beforeRelation = $tester->story->getRelation(25, 'requirement'); +$tester->story->unlinkStory(25, 26); +$afterRelation = $tester->story->getRelation(25, 'requirement'); + +r(count($beforeRelation)) && p() && e('1'); //删除用户需求25的关联关系之前,获取关联关系数量 +r(count($afterRelation)) && p() && e('0'); //删除用户需求25的关联关系之后,获取关联关系数量 +system("./ztest init"); diff --git a/test/model/story/updatestorybyreview.php b/test/model/story/updatestorybyreview.php deleted file mode 100644 index 8e6762365a..0000000000 --- a/test/model/story/updatestorybyreview.php +++ /dev/null @@ -1,18 +0,0 @@ -updateStoryByReview(); -cid=1 -pid=1 - - - -*/ - -$story = new storyTest(); - -r() && p() && e(); \ No newline at end of file