Merge branch 'sgm_storytest' into 'master'

Sgm storytest

See merge request easycorp/zentaopms!2680
This commit is contained in:
朱金勇
2022-03-31 09:05:32 +00:00
108 changed files with 375 additions and 742 deletions
+17 -333
View File
@@ -1,5 +1,5 @@
<?php
class Program
class programTest
{
/**
* __construct
@@ -8,26 +8,23 @@ class Program
* @access public
* @return void
*/
public function __construct($user)
public function __construct()
{
global $tester;
su($user);
su('admin');
$this->program = $tester->loadModel('program');
}
/**
* create
* Test create program.
*
* @param data mixed $data
* @param array $data
* @access public
* @return void
* @return object
*/
public function create($data)
{
global $app;
$_POST = '';
$_POST = $data;
$programID = $this->program->create();
@@ -36,57 +33,9 @@ class Program
$program = $this->program->getById($programID);
$app->dbh->query("DELETE FROM ". TABLE_PROGRAM ." where name = '" . $data['name']. "'");
return $program;
}
/**
* createData
*
* @param int mixed $status
* @access public
* @return void
*/
public function createData($status)
{
$data = array(
'parent' => 0,
'name' => '测试新增项目集一',
'budget' => '',
'budgetUnit' => 'CNY',
'begin' => '2022-01-12',
'end' => '2022-02-12',
'desc' => '测试项目集描述',
'acl' => 'private',
'whitelist' => ''
);
switch($status)
{
case '1': // 创建新项目集
break;
case '2': // 项目集名称为空时
$data['name'] = '';
break;
case '3': // 项目集的开始时间为空
$data['begin'] = '';
break;
case '4': // 项目集的完成时间为空
$data['end'] = '';
break;
case '5': // 项目集的计划完成时间大于计划开始时间
$data['end'] = '2022-01-10';
break;
case '6': // 项目集的完成日期大于父项目集的完成日期
$data['parent'] = '1';
$data['begin'] = '2018-01-01';
$data['end'] = '2022-02-10';
break;
default:
}
return $this->create($data);
}
/**
* createStakeholder
*
@@ -171,21 +120,9 @@ class Program
}
/**
* getInvolvedPrograms
* Test get pairs by list.
*
* @param string mixed $account
* @access public
* @return void
*/
public function getInvolvedPrograms($account)
{
return $this->program->getInvolvedPrograms($account);
}
/**
* getPairsByList
*
* @param string $programIDList
* @param string|array $programIDList
* @access public
* @return void
*/
@@ -193,7 +130,7 @@ class Program
{
if(empty($this->program->getPairsByList($programIDList)))
{
return array('code' => 'fail', 'message' => 'Not Found');
return array('code' => '404', 'message' => 'Not Found');
}
else
{
@@ -202,28 +139,22 @@ class Program
}
/**
* getPairs
* Test get list.
*
* @param mixed $status
* @access public
* @return void
*/
public function getPairs()
public function getList($status = 'all', $orderBy = 'id_asc', $pager = NULL)
{
$programs = $this->program->getPairs();
if(!$programs) return 0;
$this->program->cookie->showClosed = 'ture';
$programs = $this->program->getList($status, $orderBy, $pager);
if(dao::isError()) return array('message' => dao::getError());
return $programs;
}
/**
* getCount
*
* @access public
* @return void
*/
public function getCount()
{
return count($this->program->getPairs());
}
/**
* getParentPairs
@@ -236,17 +167,6 @@ class Program
return $this->program->getParentPairs();
}
/**
* getCount1
*
* @access public
* @return void
*/
public function getCount1()
{
return count($this->program->getParentPairs());
}
/**
* getParentPM
*
@@ -297,20 +217,6 @@ class Program
return $this->program->getProductPairs(1, 'assign', $status);
}
/**
* getCount2
*
* @param int $programID
* @param string $mode
* @param string $status
* @access public
* @return void
*/
public function getCount2($programID = 0, $mode = 'assign', $status = 'all')
{
return count($this->program->getProductPairs($programID, $mode, $status));
}
/**
* getProgressList
*
@@ -322,17 +228,6 @@ class Program
return $this->program->getProgressList();
}
/**
* getCount3
*
* @access public
* @return void
*/
public function getCount3()
{
return count($this->program->getProgressList());
}
/**
* getStatsByProgramID
*
@@ -422,34 +317,6 @@ class Program
return $stakeHolders;
}
/**
* getCount4
*
* @param int $programIdList
* @access public
* @return void
*/
public function getCount4($programIdList = 0)
{
$stakeHolders = $this->program->getStakeholdersByPrograms($programIdList);
return count($stakeHolders);
}
/**
* getByID1
*
* @param int $programID
* @access public
* @return void
*/
public function getByID1($programID = 0)
{
$stakeholders = $this->program->getStakeholders($programID);
return $stakeholders;
}
/**
* getByOrder
*
@@ -464,70 +331,6 @@ class Program
return checkOrder($stakeholders, $orderBy);
}
/**
* getCount5
*
* @param int $programID
* @access public
* @return void
*/
public function getCount5($programID = 0)
{
$stakeholders = $this->program->getStakeholders($programID);
return count($stakeholders);
}
/**
* getById2
*
* @param mixed $programID
* @access public
* @return void
*/
public function getById2($programID)
{
if(empty($this->program->getTeamMemberPairs($programID)))
{
return array('code' => 'fail', 'message' => 'Not Found');
}
else
{
return $this->program->getTeamMemberPairs($programID);
}
}
/**
* getCount6
*
* @param mixed $programID
* @access public
* @return void
*/
public function getCount6($programID)
{
return count($this->program->getTeamMemberPairs($programID));
}
/**
* getById3
*
* @param int $programID
* @access public
* @return void
*/
public function getById3($programID = 0)
{
if(empty($this->program->getTopById($programID)))
{
return array('code' => 'fail', 'message' => 'Not Found');
}
else
{
return $this->program->getTopById($programID);
}
}
/**
* getTopPairs
*
@@ -555,125 +358,6 @@ class Program
return $this->program->hasUnfinished($program);
}
/**
* getKanbanGroup
*
* @param string $type
* @access public
* @return void
*/
public function getKanbanGroup($type = ''){
$program = $this->program->getKanbanGroup();
return $program;
}
/**
* getListByStatus
*
* @param mixed $status
* @access public
* @return void
*/
public function getListByStatus($status)
{
$this->program->cookie->showClosed = 'ture';
$programs = $this->program->getList($status);
if(!$programs) return 0;
foreach($programs as $program)
{
if($program->status != $status and $status != 'all') return 0;
}
return count($programs);
}
/**
* getListByOrder
*
* @param mixed $orderBy
* @access public
* @return void
*/
public function getListByOrder($orderBy)
{
$programs = $this->program->getList('all', $orderBy);
return checkOrder($programs, $orderBy);
}
/**
* getListByProgramID
*
* @param int $programID
* @access public
* @return void
*/
public function getListByProgramID($programID = 0)
{
return count($this->program->getProjectList($programID));
}
/**
* getListByStatusNo
*
* @param string $browseType
* @access public
* @return void
*/
public function getListByStatusNo($browseType = 'all')
{
$projects = $this->program->getProjectList('0', $browseType);
if(!$projects) return 0;
foreach($projects as $project)
{
if($project->status != $browseType and $browseType != 'all' and $browseType != 'undone') return 0;
if($browseType == 'undone' and ($project->status != ('wait' or 'doing'))) return 0;
}
return count($projects);
}
/**
* getListByOrderId
*
* @param string $orderBy
* @access public
* @return void
*/
public function getListByOrderId($orderBy = 'id_desc')
{
$projects = $this->program->getProjectList('0', 'all', '0', $orderBy);
return checkOrder($projects, $orderBy);
}
/**
* getListAddProgramTitle
*
* @param int $programTitle
* @access public
* @return void
*/
public function getListAddProgramTitle($programTitle = 0)
{
return $this->program->getProjectList('0', 'all', '0', 'id_desc', '', $programTitle);
}
/**
* getListByInvolved
*
* @param int $involved
* @param string $count
* @access public
* @return void
*/
public function getListByInvolved($involved = 0, $count = '')
{
$projects = $this->program->getProjectList('0', 'all', '0', 'id_desc', '', '0', $involved);
if($count == 'count') return count($projects);
return $projects;
}
/**
* setTreePath
*
-180
View File
@@ -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;
}
}
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
/**
title=测试 programModel::create();
cid=1
pid=1
*/
global $tester;
$tester->loadModel('program');
$task1 = new stdclass();
$task1->consumed = 2;
$task1->left = 2;
$task1->estimate = 2;
$task1->status = 'active';
$task2 = new stdclass();
$task2->consumed = 4;
$task2->left = 5;
$task2->estimate = 6;
$task2->status = 'active';
$task3 = new stdclass();
$task3->consumed = 7;
$task3->left = 7;
$task3->estimate = 7;
$task3->status = 'closed';
$tasks[] = $task1;
$tasks[] = $task2;
$tasks[] = $task3;
$projectTasks[1] = $tasks;
$hours = $tester->program->computeProgress($projectTasks);
r($hours) && p('1:totalConsumed') && e('13'); // 传入任务数组,返回计算后的总消耗
r($hours) && p('1:totalEstimate') && e('15'); // 传入任务数组,返回计算后的总预计
r($hours) && p('1:totalLeft') && e('7'); // 传入任务数组,返回计算后的总剩余
r($hours) && p('1:totalReal') && e('20'); // 传入任务数组,返回计算后的总工时
r($hours) && p('1:progress') && e('65'); // 传入任务数组,返回计算后的进度
+39 -8
View File
@@ -18,14 +18,45 @@ pid=1
*/
$program = new Program('admin');
$program = new programTest();
$data = array(
'parent' => 0,
'name' => '测试新增项目集一',
'budget' => '',
'budgetUnit' => 'CNY',
'begin' => '2022-01-12',
'end' => '2022-02-12',
'desc' => '测试项目集描述',
'acl' => 'private',
'whitelist' => ''
);
$normalProgram = $data;
$emptyNameProgram = $data;
$emptyNameProgram['name'] = '';
$emptyBeginProgram = $data;
$emptyBeginProgram['begin'] = '';
$emptyEndProgram = $data;
$emptyEndProgram['end'] = '';
$beginGtEndProgram = $data;
$beginGtEndProgram['end'] = '2022-01-10';
$moreThanParent = $data;
$moreThanParent['parent'] = '1';
$moreThanParent['begin'] = '2018-01-01';
$moreThanParent['end'] = '2022-02-10';
$add_itemset = array('1', '2', '3', '4', '5', '6');
r($program->createData($add_itemset[0])) && p('name') && e('测试新增项目集一'); // 创建新项目集
r($program->createData($add_itemset[1])) && p('message[name]:0') && e('『项目集名称』不能为空。'); // 项目集名称为空时
r($program->createData($add_itemset[2])) && p('message[begin]:0') && e('『计划开始』不能为空。'); // 项目集的开始时间为空
r($program->createData($add_itemset[3])) && p('message[end]:0') && e('『计划完成』不能为空。'); // 项目集的完成时间为空
r($program->createData($add_itemset[4])) && p('message[end]:0') && e('『计划完成』应当大于『2022-01-12』。'); // 项目集的计划完成时间大于计划开始时间
r($program->createData($add_itemset[5])) && p('message:begin;message:end') && e('父项目集的开始日期:2022-01-16,开始日期不能小于父项目集的开始日期'); // 项目集的完成日期大于父项目集的完成日期(需要实时更新日期)
system("./ztest init");
r($program->create($normalProgram)) && p('name') && e('测试新增项目集一'); // 创建新项目集
r($program->create($emptyNameProgram)) && p('message[name]:0') && e('『项目集名称』不能为空。'); // 项目集名称为空时
r($program->create($emptyBeginProgram)) && p('message[begin]:0') && e('『计划开始』不能为空。'); // 项目集的开始时间为空
r($program->create($emptyEndProgram)) && p('message[end]:0') && e('『计划完成』不能为空。'); // 项目集的完成时间为空
r($program->create($beginGtEndProgram)) && p('message[end]:0') && e('『计划完成』应当大于『2022-01-12』。'); // 项目集的计划完成时间大于计划开始时间
r($program->create($moreThanParent)) && p('message:begin;message:end') && e('父项目集的开始日期:2022-01-16,开始日期不能小于父项目集的开始日期'); // 项目集的完成日期大于父项目集的完成日期(需要实时更新日期)
system("./ztest init");
+6 -6
View File
@@ -1,7 +1,6 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
/**
@@ -14,9 +13,10 @@ pid=1
*/
$getIdName = new Program('admin');
global $tester;
$tester->loadModel('program');
$program1 = $tester->program->getById(1);
$program2 = $tester->program->getById(1000);
$t_verification = array('1', '1000');
r($getIdName->getById($t_verification[0])) && p('name') && e('项目集1'); // 通过id字段获取id=1的项目集并验证它的name。
r($getIdName->getById($t_verification[1])) && p('message') && e('Not Found'); // 通过id字段获取id=1000的项目集并验证它的name。
r($program1) && p('name') && e('项目集1'); // 通过id字段获取id=1的项目集并验证它的name。
r($program2) && p() && e('0'); // 通过id字段获取id=1000的项目集,返回空
+9 -6
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
su('admin');
/**
@@ -14,9 +14,12 @@ pid=1
*/
$listOfId = new Program('admin');
global $tester;
$tester->loadModel('program');
$adminPrograms = $tester->program->getInvolvedPrograms('admin');
$test2Programs = $tester->program->getInvolvedPrograms('test2');
$t_sulist = array('admin', 'test2');
r($listOfId->getInvolvedPrograms($t_sulist[0])) && p('1') && e('1'); // 查看用户admin可以看到的项目和执行id列表
r($listOfId->getInvolvedPrograms($t_sulist[1])) && p('1') && e('1'); // 查看用户test2可以看到的项目和执行id列表
r(count($adminPrograms)) && p() && e('2'); // 获取admin参与的项目集数量
r(count($test2Programs)) && p() && e('1'); // 获取test2参与的项目集数量
r($adminPrograms) && p('10') && e('10'); // 获取admin参与的项目集ID
r($test2Programs) && p('1') && e('1'); // 获取test2参与的项目集ID
+7 -5
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
su('admin');
/**
@@ -13,9 +13,11 @@ pid=1
*/
$t_getKanban = array('admin', 'my', 'others');
global $tester;
$tester->loadModel('program');
$program = new Program($t_getKanban[0]);
$kanbanGroup = $tester->program->getKanbanGroup();
r($program->getKanbanGroup()[$t_getKanban[1]]) && p('0:name') && e(''); //查看当前用户看板的所属项目
r($program->getKanbanGroup()[$t_getKanban[2]]) && p('0:name') && e('项目集1'); //查看当前用户看板的其它项目
r(count($kanbanGroup['my'])) && p('') && e('2'); //查看当前用户负责的项目集看板数量
r(count($kanbanGroup['others'])) && p('') && e('8'); //查看当前用户其他的项目集看板数量
r($kanbanGroup['others']) && p('0:name') && e('项目集2'); //查看当前用户其他的项目集看板详情
+16 -9
View File
@@ -17,14 +17,21 @@ pid=1
*/
$program = new Program('admin');
global $tester;
$program = new programTest();
$tester->app->loadClass('pager', $static = true);
$pager = new pager(0, 10, 1);
$t_checkout = array('all', 'wait', 'doing', 'suspended', 'closed', 'name_desc', 'id_asc');
$allPorgrams = $program->getList('all');
$pagerPrograms = $program->getList('all', 'id_asc', $pager);
$closedPrograms = $program->getList('closed');
$suspendedPrograms = $program->getList('closed');
$namedescPrograms = $program->getList('all', 'name_desc');
$idascPrograms = $program->getList('all', 'id_asc');
r($program->getListByStatus($t_checkout[0])) && p() && e('100'); // 查看所有项目和项目集的个数
r($program->getListByStatus($t_checkout[1])) && p() && e('34'); // 查看所有'wait'的项目和项目集的个数
r($program->getListByStatus($t_checkout[2])) && p() && e('44'); // 查看所有'doing'的项目和项目集的个数
r($program->getListByStatus($t_checkout[3])) && p() && e('11'); // 查看所有'suspended'的项目和项目集的个数
r($program->getListByStatus($t_checkout[4])) && p() && e('11'); // 查看所有'closed'的项目和项目集的个数
r($program->getListByOrder($t_checkout[5])) && p() && e(1); // 按照项目和项目集名称倒序获取项目列表
r($program->getListByOrder($t_checkout[6])) && p() && e(1); // 按照ID正序获取项目和项目集列表
r(count($allPorgrams)) && p() && e('120'); // 查看所有项目和项目集的个数
r(count($pagerPrograms)) && p() && e('10'); // 查看分页后项目集和项目的个数
r(count($closedPrograms)) && p() && e('11'); // 查看所有'closed'的项目和项目集的个数
r(count($suspendedPrograms)) && p() && e('11'); // 查看所有'suspended'的项目和项目集的个数
r(key($namedescPrograms)) && p() && e('9'); // 按照项目和项目集名称倒序获取第一个ID
r(key($idascPrograms)) && p() && e('1'); // 按照ID正序获取项目和项目集列表第一个ID
+8 -6
View File
@@ -1,7 +1,6 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
/**
@@ -15,9 +14,12 @@ pid=1
*/
$noItemsets = new Program('admin');
global $tester;
$tester->loadModel('program');
$programs1 = $tester->program->getPairs();
$programs2 = $tester->program->getPairs('true');
r($noItemsets->getCount()) && p() && e('10'); // 获取项目集个数
r($noItemsets->getPairs()) && p('1') && e('项目集1'); // 获取项目集id/name 的关联数组
r($noItemsets->getPairs()) && p('9') && e('项目集9'); // 获取项目集id/name 的关联数组
r($noItemsets->getPairs()) && p('11') && e(''); // 获取不存在的项目集id/name 的关联数组
r(count($programs1)) && p() && e('6'); // 获取项目集个数
r(count($programs2)) && p() && e('10'); // 获取项目集个数
r($programs1) && p('9') && e('项目集9'); // 获取项目集id为9的名称
r($programs2) && p('11') && e(''); // 获取不存在的项目集
+9 -9
View File
@@ -19,14 +19,14 @@ pid=1
*/
$itemsetsName = new Program('admin');
$program = new programTest();
$t_getProName = array('1', '1,2,3', array(1), array(1,2,3), '', '0', '11');
$programIdList = array('1', '1,2,3', array(1), array(1,2,3), '', '0', '11');
r($itemsetsName->getPairsByList($t_getProName[0])) && p('1') && e('项目集1'); // 通过字符串'1'获取项目集名称
r($itemsetsName->getPairsByList($t_getProName[1])) && p('1,2,3') && e('项目集1,项目集2,项目集3'); // 通过字符串'1,2,3'获取项目集名称
r($itemsetsName->getPairsByList($t_getProName[2])) && p('1') && e('项目集1'); //通过数组array(1)获取项目集名称
r($itemsetsName->getPairsByList($t_getProName[3])) && p('1,2,3') && e('项目集1,项目集2,项目集3'); //通过数组array(1,2,3)获取项目集名称
r($itemsetsName->getPairsByList($t_getProName[4])) && p('message') && e('Not Found'); // 通过id为空获取项目集名称
r($itemsetsName->getPairsByList($t_getProName[5])) && p('message') && e('Not Found'); // 通过id=0获取项目集名称
r($itemsetsName->getPairsByList($t_getProName[6])) && p('message') && e('Not Found'); // 通过id=11获取项目集名称
r($program->getPairsByList($programIdList[0])) && p('1') && e('项目集1'); // 通过字符串'1'获取项目集名称
r($program->getPairsByList($programIdList[1])) && p('1,2,3') && e('项目集1,项目集2,项目集3'); // 通过字符串'1,2,3'获取项目集名称
r($program->getPairsByList($programIdList[2])) && p('1') && e('项目集1'); // 通过数组array(1)获取项目集名称
r($program->getPairsByList($programIdList[3])) && p('1,2,3') && e('项目集1,项目集2,项目集3'); // 通过数组array(1,2,3)获取项目集名称
r($program->getPairsByList($programIdList[4])) && p('message') && e('Not Found'); // 通过id为空获取项目集名称
r($program->getPairsByList($programIdList[5])) && p('message') && e('Not Found'); // 通过id=0获取项目集名称
r($program->getPairsByList($programIdList[6])) && p('message') && e('Not Found'); // 通过id=11获取项目集名称
+9 -9
View File
@@ -1,7 +1,6 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
/**
@@ -18,13 +17,14 @@ pid=1
*/
$getItemsets = new Program('admin');
global $tester;
$tester->loadModel('program');
$t_program = array('1', '1000', 'all', 'all', '1', 'assign', 'all', '1', 'assign', 'noclosed');
$products1 = $tester->program->getProductPairs(1, 'assign', 'all');
$products2 = $tester->program->getProductPairs(1, 'assign', 'noclosed');
r($getItemsets->getProductPairsByID($t_program[0])) && p('24') && e('已关闭的正常产品24'); //根据项目或项目集ID获取关联产品详情
r($getItemsets->getProductPairsByID($t_program[1])) && p('message') && e('Not Found'); //获取不存在的项目或项目集
r($getItemsets->getProductPairsByMod($t_program[2])) && p('1') && e('正常产品1'); //根据项目或项目集指派情况获取关联产品详情
r($getItemsets->getProductPairsByStatus($t_program[3])) && p('90') && e('多平台产品90'); //根据项目或项目集状态获取关联产品详情
r($getItemsets->getCount2($t_program[4], $t_program[5], $t_program[6])) && p() && e('9'); //查看ID=1,有指派,所有状态的关联产品数量
r($getItemsets->getCount2($t_program[7], $t_program[8], $t_program[9])) && p() && e('5'); //查看ID=1,有指派,未关闭的关联产品数量
r(count($products1)) && p() && e('6'); //获取项目集1下的所有产品数量
r($products1) && p('24') && e('已关闭的正常产品24'); //根据项目集ID获取关联产品名字
r(count($products2)) && p() && e('4'); //获取项目集1下的未关闭的产品数量
r($products2) && p('24') && e('已关闭的正常产品24'); //根据项目或项目集ID获取关联产品详情
+14 -18
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
su('admin');
/**
@@ -9,24 +9,20 @@ title=测试 programModel::getProjectList();
cid=1
pid=1
查看当前项目集下所有项目的个数 >> 90
查看当前项目集下所有状态为进行中的项目的个数 >> 44
根据name倒序查看所有项目 >> 1
根据id倒序查看所有项目的个数 >> 1
查看所有项目(包含所属项目集名称) >> 项目1
查看当前用户参与的项目 >> 项目1
查看当前用户参与的项目的个数 >> 1
*/
$countProjects = new Program('admin');
global $tester;
$tester->loadModel('program');
$t_proNumber = array(0, 'doing', 'name_desc', 'id_desc', 0, 1, 1, 'count');
$allProjects = $tester->program->getProjectList(0);
$undoneProjects = $tester->program->getProjectList(0, 'undone');
$withProgramProjects = $tester->program->getProjectList(0, 'undone', 0, 'id_desc', null, 1);
$involvedProjects = $tester->program->getProjectList(0, 'undone', 0, 'id_desc', null, 1, true);
r($countProjects->getListByProgramID($t_proNumber[0])) && p() && e('90'); // 查看当前项目集下所有项目的个数
r($countProjects->getListByStatusNo($t_proNumber[1])) && p() && e('44'); // 查看当前项目集下所有状态为进行中的项目的个数
r($countProjects->getListByOrderId($t_proNumber[2])) && p() && e('1'); // 根据name倒序查看所有项目
r($countProjects->getListByOrderId($t_proNumber[3])) && p() && e('1'); // 根据id倒序查看所有项目的个数
r($countProjects->getListAddProgramTitle($t_proNumber[4])) && p('11:name') && e('项目1'); // 查看所有项目(包含所属项目集名称)
r($countProjects->getListByInvolved($t_proNumber[5])) && p('11:name') && e('项目1'); // 查看当前用户参与的项目
r($countProjects->getListByInvolved($t_proNumber[6], $t_proNumber[7])) && p() && e('1'); // 查看当前用户参与的项目的个数
r(count($allProjects)) && p() && e('110'); // 获取所有项目列表数量
r(count($undoneProjects)) && p() && e('88'); // 获取未完成项目列表数量
r(count($withProgramProjects)) && p() && e('88'); // 带项目集名称的项目列表数量
r(count($involvedProjects)) && p() && e('1'); // 获取我参与的项目列表数量
r($allProjects) && p('12:name') && e('项目2'); // 不带项目集名称的项目名称
r($withProgramProjects) && p('12:name') && e('项目集2/项目2'); // 带项目集名称的项目名称
r($involvedProjects) && p('11:name') && e('项目集1/项目1'); // 我参与的项目的名称
+9 -9
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
su('admin');
/**
@@ -16,12 +16,12 @@ pid=1
*/
$program = new Program('admin');
global $tester;
$tester->loadModel('program');
$stakeholders1 = $tester->program->getStakeholders(2, 'id_desc');
$stakeholders2 = $tester->program->getStakeholders(2, 'id_asc');
$t_Stakeholder = array(2, 'id_desc', 'id_asc', 2);
//var_dump($program->getByID1($t_Stakeholder[0]));die;
r($program->getByID1($t_Stakeholder[0])) && p('0:realname') && e('测试17'); // 查看项目集2的干系人信息
r($program->getByOrder($t_Stakeholder[1])) && p() && e('1'); // 根据干系人id倒序排序
r($program->getByOrder($t_Stakeholder[2])) && p() && e('1'); // 根据干系人id正序排序
r($program->getCount5($t_Stakeholder[3])) && p() && e('3'); // 查看项目集2的干系人个数
r(count($stakeholders1)) && p() && e('3'); // 获取干系人数量
r(count($stakeholders2)) && p() && e('3'); // 获取干系人数量
r($stakeholders1) && p('0:realname') && e('测试17'); // id倒序排,获取第一个干系人真实姓名
r($stakeholders2) && p('0:realname') && e('测试19'); // id正序排,获取第一个干系人真实姓名
@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/program.class.php';
su('admin');
/**
@@ -20,15 +20,14 @@ pid=1
*/
$t = new Program('admin');
global $tester;
$tester->loadModel('program');
$Stakeholder = array('2', '2,3', '2', '2,3');
r($t->getByPrograms($Stakeholder[0])) && p('0:account') && e('user19'); // 获取项目集2的干系人名单
r($t->getByPrograms($Stakeholder[0])) && p('1:account') && e('user18'); // 获取项目集2的干系人名单
r($t->getByPrograms($Stakeholder[0])) && p('2:account') && e('user17'); // 获取项目集2的干系人名单
r($t->getByPrograms($Stakeholder[1])) && p('0:account') && e('user19'); // 获取项目集2和项目集3的干系人名单
r($t->getByPrograms($Stakeholder[1])) && p('1:account') && e('user18'); // 获取项目集2和项目集3的干系人名单
r($t->getByPrograms($Stakeholder[1])) && p('2:account') && e('user17'); // 获取项目集2和项目集3的干系人名单...
r($t->getCount4($Stakeholder[2])) && p() && e('3'); // 获取项目集2的干系人个数
r($t->getCount4($Stakeholder[3])) && p() && e('6'); // 获取项目集2和项目集3的干系人个数
r($tester->program->getStakeholdersByPrograms('2')) && p('0:account') && e('user19'); // 获取项目集2的干系人名单
r($tester->program->getStakeholdersByPrograms('2')) && p('1:account') && e('user18'); // 获取项目集2的干系人名单
r($tester->program->getStakeholdersByPrograms('2')) && p('2:account') && e('user17'); // 获取项目集2的干系人名单
r($tester->program->getStakeholdersByPrograms('2,3')) && p('0:account') && e('user19'); // 获取项目集2和项目集3的干系人名单
r($tester->program->getStakeholdersByPrograms('2,3')) && p('1:account') && e('user18'); // 获取项目集2和项目集3的干系人名单
r($tester->program->getStakeholdersByPrograms('2,3')) && p('2:account') && e('user17'); // 获取项目集2和项目集3的干系人名单
r(count($tester->program->getStakeholdersByPrograms('2'))) && p('') && e('3'); // 获取项目集2的干系人个数
r(count($tester->program->getStakeholdersByPrograms('2,3'))) && p('') && e('6'); // 获取项目集2、3的干系人个数
+2 -1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -47,4 +48,4 @@ r($afterActivate63) && p('status') && e('active'); //查看激活之后的需
r($afterActivate100) && p('status') && e('active'); //查看激活之后的需求状态
r($afterActivate301) && p('status') && e('active'); //查看激活之后的需求状态
system("./ztest init");
system("./ztest init");
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+2 -1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -47,4 +48,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");
system("./ztest init");
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
-18
View File
@@ -1,18 +0,0 @@
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
title=测试 storyModel->getByReviewBy();
cid=1
pid=1
*/
$story = new storyTest();
r() && p() && e();
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -14,9 +15,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的数据
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+5 -3
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
@@ -13,6 +13,8 @@ pid=1
*/
$story = new storyTest();
global $tester;
$tester->loadModel('story');
$storyInfo = $tester->story->getEstimateInfo(2);
r() && p() && e();
r() && p() && e();
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
-18
View File
@@ -1,18 +0,0 @@
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
title=测试 storyModel->getRelation();
cid=1
pid=1
*/
$story = new storyTest();
r() && p() && e();
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+8 -3
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
@@ -13,6 +13,11 @@ pid=1
*/
$story = new storyTest();
global $tester;
$relations1 = $tester->loadModel('story')->getStoryRelation(25, 'requirement');
$relations2 = $tester->story->getStoryRelation(26, 'story');
r() && p() && e();
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关联的用户需求详情
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
+15 -2
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -13,6 +14,18 @@ pid=1
*/
$story = new storyTest();
global $tester;
$tester->loadModel('story');
r() && p() && e();
$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");
+17 -3
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
@@ -13,6 +13,20 @@ pid=1
*/
$story = new storyTest();
global $tester;
$tester->loadModel('story');
$tester->story->linkStory(11, 1, 300);
$tester->story->linkStory(12, 1, 302);
$tester->story->linkStory(13, 1, 304);
r() && p() && e();
$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");
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
su('admin');
-18
View File
@@ -1,18 +0,0 @@
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
title=测试 storyModel->recordReviewAction();
cid=1
pid=1
*/
$story = new storyTest();
r() && p() && e();
-18
View File
@@ -1,18 +0,0 @@
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
su('admin');
/**
title=测试 storyModel->replaceURLang();
cid=1
pid=1
*/
$story = new storyTest();
r() && p() && e();
+2 -1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -26,4 +27,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");
system("./ztest init");
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
+16 -2
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -13,6 +14,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();
$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'); // 传入三个拒绝,查看返回结果
+16 -2
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/story.class.php';
@@ -13,6 +14,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();
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");

Some files were not shown because too many files have changed in this diff Show More