update unittest
This commit is contained in:
@@ -2,6 +2,13 @@
|
||||
class Product
|
||||
{
|
||||
|
||||
/**
|
||||
* __construct
|
||||
*
|
||||
* @param mixed $user
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
global $tester;
|
||||
@@ -9,12 +16,19 @@ class Product
|
||||
$this->product = $tester->loadModel('product');
|
||||
}
|
||||
|
||||
/**
|
||||
* createObject
|
||||
*
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function createObject($param = array())
|
||||
{
|
||||
global $createFields;
|
||||
$whitelist = array();
|
||||
$createFields = array('program' => 1, 'line' => 0, 'lineName' => '', 'newLine' => 0, 'name' => '', 'code' => '', 'PO' => 'admin', 'QD' => '', 'RD' => '',
|
||||
'reviewer' => '', 'type' => 'normal', 'status' => 'normal', 'desc' => '', 'acl' => 'open', 'uid' => '');
|
||||
'reviewer' => '', 'type' => 'normal', 'status' => 'normal', 'desc' => '', 'acl' => 'open', 'uid' => '');
|
||||
foreach($createFields as $field => $defaultValue) $_POST[$field] = $defaultValue;
|
||||
foreach($param as $key => $value) $_POST[$key] = $value;
|
||||
|
||||
@@ -35,6 +49,13 @@ class Product
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* testGetLatestProject
|
||||
*
|
||||
* @param mixed $productID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function testGetLatestProject($productID)
|
||||
{
|
||||
$project = $this->product->getLatestProject($productID);
|
||||
@@ -42,71 +63,175 @@ class Product
|
||||
return $project;
|
||||
}
|
||||
|
||||
/**
|
||||
* getAllProducts
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getAllProducts($programID)
|
||||
{
|
||||
return $this->product->getList($programID);
|
||||
}
|
||||
|
||||
/**
|
||||
* getAllProductsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getAllProductsCount($programID)
|
||||
{
|
||||
return count($this->getAllProducts($programID));
|
||||
}
|
||||
|
||||
/**
|
||||
* getNoclosedProducts
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getNoclosedProducts($programID)
|
||||
{
|
||||
return $this->product->getList($programID, 'noclosed');
|
||||
}
|
||||
|
||||
/**
|
||||
* getNoclosedProductsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getNoclosedProductsCount($programID)
|
||||
{
|
||||
return count($this->getNoclosedProducts($programID));
|
||||
}
|
||||
|
||||
/**
|
||||
* getClosedProducts
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getClosedProducts($programID)
|
||||
{
|
||||
return $this->product->getList($programID, 'closed');
|
||||
}
|
||||
|
||||
/**
|
||||
* getClosedProductsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getClosedProductsCount($programID)
|
||||
{
|
||||
return count($this->getClosedProducts($programID));
|
||||
}
|
||||
|
||||
/**
|
||||
* getInvolvedProducts
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getInvolvedProducts($programID)
|
||||
{
|
||||
return $this->product->getList($programID, 'involved');
|
||||
}
|
||||
|
||||
/**
|
||||
* getInvolvedProductsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getInvolvedProductsCount($programID)
|
||||
{
|
||||
return count($this->getInvolvedProducts($programID));
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductsByLine
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @param int $line
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductsByLine($programID, $line = 0)
|
||||
{
|
||||
return $this->product->getList($programID, 'all', 0, $line);
|
||||
}
|
||||
|
||||
/**
|
||||
* countProductsByLine
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @param int $line
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function countProductsByLine($programID, $line = 0)
|
||||
{
|
||||
return count($this->getProductsByLine($programID, $line));
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductList
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @param string $status
|
||||
* @param int $line
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductList($programID, $status = 'all', $line = 0)
|
||||
{
|
||||
return $this->product->getList($programID, $status, 0, $line);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @param string $status
|
||||
* @param int $line
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductCount($programID, $status = 'all', $line = 0)
|
||||
{
|
||||
return count($this->getProductList($programID, $status, $line));
|
||||
}
|
||||
/**
|
||||
* getProductPairs
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductPairs($programID)
|
||||
{
|
||||
$pairs = $this->product->getPairs('', $programID);
|
||||
if($pairs == array()) return '没有数据';
|
||||
return $pairs;
|
||||
}
|
||||
/**
|
||||
* getProductPairsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductPairsCount($programID)
|
||||
{
|
||||
$pairsCount = count($this->getProductPairs($programID));
|
||||
@@ -114,24 +239,52 @@ class Product
|
||||
return $pairsCount;
|
||||
}
|
||||
|
||||
/**
|
||||
* getAllPairs
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getAllPairs($programID)
|
||||
{
|
||||
$pairs = $this->product->getPairs('all', $programID);
|
||||
if($pairs == array()) return '没有数据';
|
||||
return $pairs;
|
||||
}
|
||||
/**
|
||||
* getAllPairsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getAllPairsCount($programID)
|
||||
{
|
||||
$pairsCount = count($this->getAllPairs($programID));
|
||||
if($pairsCount == '没有数据') return '0';
|
||||
return $pairsCount;
|
||||
}
|
||||
/**
|
||||
* getNoclosedPairs
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getNoclosedPairs($programID)
|
||||
{
|
||||
$pairs = $this->product->getPairs('noclosed', $programID);
|
||||
if($pairs == array()) return '没有数据';
|
||||
return $pairs;
|
||||
}
|
||||
/**
|
||||
* getNoclosedPairsCount
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getNoclosedPairsCount($programID)
|
||||
{
|
||||
$pairsCount = count($this->getNoclosedPairs($programID));
|
||||
@@ -139,6 +292,15 @@ class Product
|
||||
return $pairsCount;
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductPairsByOrder
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @param string $orderBy
|
||||
* @param string $mode
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductPairsByOrder($programID, $orderBy = 'id_desc', $mode = '')
|
||||
{
|
||||
$this->product->orderBy = $orderBy;
|
||||
@@ -146,6 +308,13 @@ class Product
|
||||
return checkOrder($pairs, $orderBy);
|
||||
}
|
||||
|
||||
/**
|
||||
* getAllProjectsByProduct
|
||||
*
|
||||
* @param int mixed $productID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getAllProjectsByProduct($productID)
|
||||
{
|
||||
$projects = $this->product->getProjectListByProduct($productID, 'all');
|
||||
@@ -153,6 +322,14 @@ class Product
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getProjectsByStatus
|
||||
*
|
||||
* @param int mixed $productID
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProjectsByStatus($productID, $status)
|
||||
{
|
||||
$projects = $this->product->getProjectListByProduct($productID, $browseType);
|
||||
@@ -160,6 +337,13 @@ class Product
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getProjectPairsByProductID
|
||||
*
|
||||
* @param int mixed $productID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProjectPairsByProductID($productID)
|
||||
{
|
||||
$projects = $this->product->getProjectPairsByProduct($productID, 0, 0);
|
||||
@@ -167,6 +351,13 @@ class Product
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getAppendProject
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getAppendProject($projectID)
|
||||
{
|
||||
$project = $this->product->getProjectPairsByProduct(10086, 0, $projectID);
|
||||
@@ -174,6 +365,14 @@ class Product
|
||||
return $project;
|
||||
}
|
||||
|
||||
/**
|
||||
* testIsClickable
|
||||
*
|
||||
* @param int mixed $productID
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function testIsClickable($productID, $status)
|
||||
{
|
||||
$product = $this->product->getById($productID);
|
||||
@@ -181,6 +380,15 @@ class Product
|
||||
return $isClick == false ? 'false' : 'true';
|
||||
}
|
||||
|
||||
/**
|
||||
* updateObject
|
||||
*
|
||||
* @param string mixed $module
|
||||
* @param int mixed $objectID
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function updateObject($module, $objectID, $param = array())
|
||||
{
|
||||
global $tester;
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
<?php
|
||||
class Program
|
||||
{
|
||||
/**
|
||||
* __construct
|
||||
*
|
||||
* @param mixed $user
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
global $tester;
|
||||
@@ -9,7 +16,14 @@ class Program
|
||||
$this->program = $tester->loadModel('program');
|
||||
}
|
||||
|
||||
function create($data)
|
||||
/**
|
||||
* create
|
||||
*
|
||||
* @param data mixed $data
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function create($data)
|
||||
{
|
||||
global $app;
|
||||
|
||||
@@ -25,7 +39,15 @@ class Program
|
||||
$app->dbh->query("DELETE FROM ". TABLE_PROGRAM ." where name = '" . $data['name']. "'");
|
||||
return $program;
|
||||
}
|
||||
function createData($status)
|
||||
|
||||
/**
|
||||
* createData
|
||||
*
|
||||
* @param int mixed $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function createData($status)
|
||||
{
|
||||
$data = array(
|
||||
'parent' => 0,
|
||||
@@ -65,6 +87,13 @@ class Program
|
||||
return $this->create($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* createStakeholder
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function createStakeholder($programID)
|
||||
{
|
||||
$_POST['accounts'] = array('dev1', 'dev2');
|
||||
@@ -73,6 +102,13 @@ class Program
|
||||
return $this->program->getStakeholdersByPrograms($programID);
|
||||
}
|
||||
|
||||
/**
|
||||
* getBudgetLeft
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getBudgetLeft($programID)
|
||||
{
|
||||
$program = $this->program->getById(1);
|
||||
@@ -80,6 +116,12 @@ class Program
|
||||
return $this->program->getBudgetLeft($program);
|
||||
}
|
||||
|
||||
/**
|
||||
* getBudgetUnitList
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getBudgetUnitList()
|
||||
{
|
||||
global $app;
|
||||
@@ -89,6 +131,13 @@ class Program
|
||||
return $this->program->getBudgetUnitList();
|
||||
}
|
||||
|
||||
/**
|
||||
* getById
|
||||
*
|
||||
* @param iont mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getById($programID)
|
||||
{
|
||||
if(empty($this->program->getById($programID)))
|
||||
@@ -101,6 +150,13 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* getChildren
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getChildren($programID)
|
||||
{
|
||||
$programInfo = $this->program->getChildren($programID);
|
||||
@@ -114,11 +170,25 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* getInvolvedPrograms
|
||||
*
|
||||
* @param string mixed $account
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getInvolvedPrograms($account)
|
||||
{
|
||||
return $this->program->getInvolvedPrograms($account);
|
||||
}
|
||||
|
||||
/**
|
||||
* getPairsByList
|
||||
*
|
||||
* @param string $programIDList
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getPairsByList($programIDList = '')
|
||||
{
|
||||
if(empty($this->program->getPairsByList($programIDList)))
|
||||
@@ -131,6 +201,12 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* getPairs
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getPairs()
|
||||
{
|
||||
$programs = $this->program->getPairs();
|
||||
@@ -138,26 +214,58 @@ class Program
|
||||
return $programs;
|
||||
}
|
||||
|
||||
/**
|
||||
* getCount
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getCount()
|
||||
{
|
||||
return count($this->program->getPairs());
|
||||
}
|
||||
|
||||
/**
|
||||
* getParentPairs
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getParentPairs()
|
||||
{
|
||||
return $this->program->getParentPairs();
|
||||
}
|
||||
|
||||
/**
|
||||
* getCount1
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getCount1()
|
||||
{
|
||||
return count($this->program->getParentPairs());
|
||||
}
|
||||
|
||||
/**
|
||||
* getParentPM
|
||||
*
|
||||
* @param array mixed $programIdList
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getParentPM($programIdList)
|
||||
{
|
||||
return $this->program->getParentPM($programIdList);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductPairsByID
|
||||
*
|
||||
* @param int $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductPairsByID($programID = 0)
|
||||
{
|
||||
$program = $this->program->getByID($programID);
|
||||
@@ -165,36 +273,85 @@ class Program
|
||||
return $this->program->getProductPairs($programID, 'assign', 'all');
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductPairsByMod
|
||||
*
|
||||
* @param string $mode
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductPairsByMod($mode = 'assign')
|
||||
{
|
||||
return $this->program->getProductPairs(1, $mode, 'noclosed');
|
||||
}
|
||||
|
||||
/**
|
||||
* getProductPairsByStatus
|
||||
*
|
||||
* @param string $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProductPairsByStatus($status = 'all')
|
||||
{
|
||||
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
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProgressList()
|
||||
{
|
||||
return $this->program->getProgressList();
|
||||
}
|
||||
|
||||
/**
|
||||
* getCount3
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getCount3()
|
||||
{
|
||||
return count($this->program->getProgressList());
|
||||
}
|
||||
|
||||
/**
|
||||
* getStatsByProgramID
|
||||
*
|
||||
* @param int $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStatsByProgramID($programID = 0)
|
||||
{
|
||||
return count($this->program->getProjectStats($programID));
|
||||
}
|
||||
|
||||
/**
|
||||
* getStatsByStatus
|
||||
*
|
||||
* @param string $browseType
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStatsByStatus($browseType = 'all')
|
||||
{
|
||||
$projects = $this->program->getProjectStats('0', $browseType);
|
||||
@@ -209,6 +366,13 @@ class Program
|
||||
return count($projects);
|
||||
}
|
||||
|
||||
/**
|
||||
* getStatsByOrder
|
||||
*
|
||||
* @param string $orderBy
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStatsByOrder($orderBy = 'id_desc')
|
||||
{
|
||||
$projects = $this->program->getProjectStats('0', 'all', '0', $orderBy);
|
||||
@@ -216,11 +380,26 @@ class Program
|
||||
return checkOrder($projects, $orderBy);
|
||||
}
|
||||
|
||||
/**
|
||||
* getStatsAddProgramTitle
|
||||
*
|
||||
* @param int $programTitle
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStatsAddProgramTitle($programTitle = 0)
|
||||
{
|
||||
return $this->program->getProjectStats('0', 'all', '0', 'id_desc', '', $programTitle);
|
||||
}
|
||||
|
||||
/**
|
||||
* getStatsByInvolved
|
||||
*
|
||||
* @param int $involved
|
||||
* @param string $count
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStatsByInvolved($involved = 0, $count = '')
|
||||
{
|
||||
$projects = $this->program->getProjectStats('0', 'all', '0', 'id_desc', '', '0', $involved);
|
||||
@@ -229,6 +408,13 @@ class Program
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getByPrograms
|
||||
*
|
||||
* @param int $programIdList
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByPrograms($programIdList = 0)
|
||||
{
|
||||
$stakeHolders = $this->program->getStakeholdersByPrograms($programIdList);
|
||||
@@ -236,6 +422,13 @@ class Program
|
||||
return $stakeHolders;
|
||||
}
|
||||
|
||||
/**
|
||||
* getCount4
|
||||
*
|
||||
* @param int $programIdList
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getCount4($programIdList = 0)
|
||||
{
|
||||
$stakeHolders = $this->program->getStakeholdersByPrograms($programIdList);
|
||||
@@ -243,6 +436,13 @@ class Program
|
||||
return count($stakeHolders);
|
||||
}
|
||||
|
||||
/**
|
||||
* getByID1
|
||||
*
|
||||
* @param int $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByID1($programID = 0)
|
||||
{
|
||||
$stakeholders = $this->program->getStakeholders($programID);
|
||||
@@ -250,6 +450,13 @@ class Program
|
||||
return $stakeholders;
|
||||
}
|
||||
|
||||
/**
|
||||
* getByOrder
|
||||
*
|
||||
* @param string $orderBy
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByOrder($orderBy = 'id_desc')
|
||||
{
|
||||
$stakeholders = $this->program->getStakeholders(2, $orderBy);
|
||||
@@ -257,6 +464,13 @@ class Program
|
||||
return checkOrder($stakeholders, $orderBy);
|
||||
}
|
||||
|
||||
/**
|
||||
* getCount5
|
||||
*
|
||||
* @param int $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getCount5($programID = 0)
|
||||
{
|
||||
$stakeholders = $this->program->getStakeholders($programID);
|
||||
@@ -264,6 +478,13 @@ class Program
|
||||
return count($stakeholders);
|
||||
}
|
||||
|
||||
/**
|
||||
* getById2
|
||||
*
|
||||
* @param mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getById2($programID)
|
||||
{
|
||||
if(empty($this->program->getTeamMemberPairs($programID)))
|
||||
@@ -276,11 +497,25 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 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)))
|
||||
@@ -289,16 +524,30 @@ class Program
|
||||
}
|
||||
else
|
||||
{
|
||||
return $this->program->getByTopId($programID);
|
||||
return $this->program->getTopById($programID);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* getTopPairs
|
||||
*
|
||||
* @param string $count
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getTopPairs($count = '')
|
||||
{
|
||||
if($count == 'count') return count($this->program->getTopPairs());
|
||||
return $this->program->getTopPairs();
|
||||
}
|
||||
|
||||
/**
|
||||
* getUnfinished
|
||||
*
|
||||
* @param mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getUnfinished($programID)
|
||||
{
|
||||
$program = $this->program->getById($programID);
|
||||
@@ -306,11 +555,25 @@ 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';
|
||||
@@ -323,17 +586,38 @@ class Program
|
||||
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);
|
||||
@@ -348,6 +632,13 @@ class Program
|
||||
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);
|
||||
@@ -355,11 +646,26 @@ class Program
|
||||
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);
|
||||
@@ -368,6 +674,13 @@ class Program
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* setTreePath
|
||||
*
|
||||
* @param mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function setTreePath($programID)
|
||||
{
|
||||
$programPath = $this->program->setTreePath($programID);
|
||||
@@ -381,6 +694,14 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* update
|
||||
*
|
||||
* @param mixed $proguamID
|
||||
* @param mixed $data
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function update($programID, $data)
|
||||
{
|
||||
global $app;
|
||||
@@ -393,6 +714,14 @@ class Program
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* updateProgram
|
||||
*
|
||||
* @param mixed $programID
|
||||
* @param int $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function updateProgram($programID, $status = 0)
|
||||
{
|
||||
$data = array(
|
||||
@@ -428,5 +757,22 @@ class Program
|
||||
}
|
||||
return $this->update($programID, $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test process node method.
|
||||
*
|
||||
* @param int $programID
|
||||
* @param int $parentID
|
||||
* @param string $oldPath
|
||||
* @param int $oldGrade
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function processNode($programID, $parentID, $oldPath, $oldGrade)
|
||||
{
|
||||
$programs = $this->program->processNode($programID, $parentID, $oldPath, $oldGrade);
|
||||
return $programs;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
+220
-146
@@ -1,6 +1,13 @@
|
||||
<?php
|
||||
class Project
|
||||
{
|
||||
/**
|
||||
* __construct
|
||||
*
|
||||
* @param mixed $user
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
global $tester;
|
||||
@@ -10,12 +17,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Check project status after activate a project.▫
|
||||
* *▫
|
||||
* * @param int $projectID▫
|
||||
* * @access public
|
||||
* * @return bool
|
||||
* */
|
||||
* checkStatus
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function checkStatus($projectID)
|
||||
{
|
||||
$oldProject = $this->project->getById($projectID);
|
||||
@@ -29,17 +36,25 @@ class Project
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* checkHasChildren
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function checkHasChildren($projectID)
|
||||
{
|
||||
return $this->project->checkHasChildren($projectID);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check project status after close a project.
|
||||
* checkStatusOff
|
||||
*
|
||||
* @param int $projectID
|
||||
* @param int mixed $projectID
|
||||
* @param array $closeTime
|
||||
* @access public
|
||||
* @return bool
|
||||
* @return void
|
||||
*/
|
||||
public function checkStatusOff($projectID, $closeTime = array())
|
||||
{
|
||||
@@ -60,11 +75,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* Check budget unit list.
|
||||
* checkBudgetUnitList
|
||||
*
|
||||
* @param string $checkList▫
|
||||
* @param string $checkList
|
||||
* @param 'USD' => '美元') $'USD' => '美元')
|
||||
* @access public
|
||||
* @return bool
|
||||
* @return void
|
||||
*/
|
||||
public function checkBudgetUnitList($checkList = array('CNY' => '人民币', 'USD' => '美元'))
|
||||
{
|
||||
@@ -77,13 +93,13 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Check projectList get from getByIdList.
|
||||
* *
|
||||
* * @param array $projectIdList
|
||||
* * @param int $count
|
||||
* * @access public
|
||||
* * @return array
|
||||
* */
|
||||
* getByIdList
|
||||
*
|
||||
* @param array mixed $projectIdList
|
||||
* @param int mixed $count
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByIdList($projectIdList, $count)
|
||||
{
|
||||
$projectList = $this->project->getByIdList($projectIdList);
|
||||
@@ -92,73 +108,73 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get project by ID.
|
||||
* *
|
||||
* * @param int $projectID
|
||||
* * @access public
|
||||
* * @return object
|
||||
* */
|
||||
* getProjectByID
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProjectByID($projectID)
|
||||
{
|
||||
return $this->project->getByID($projectID);
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get program by ID.
|
||||
* *
|
||||
* * @param int $programID
|
||||
* * @access public
|
||||
* * @return object
|
||||
* */
|
||||
* getProgramByID
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getProgramByID($programID)
|
||||
{
|
||||
return $this->project->getByID($programID, 'program');
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get sprint by ID.
|
||||
* *
|
||||
* * @param int $sprintID
|
||||
* * @access public
|
||||
* * @return object
|
||||
* */
|
||||
|
||||
/**
|
||||
* getSprintByID
|
||||
*
|
||||
* @param int mixed $sprintID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getSprintByID($sprintID)
|
||||
{
|
||||
return $this->project->getByID($sprintID, 'sprint');
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get stage by ID.
|
||||
* *
|
||||
* * @param int $stageID
|
||||
* * @access public
|
||||
* * @return object
|
||||
* */
|
||||
* getStageByID
|
||||
*
|
||||
* @param int mixed $stageID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStageByID($stageID)
|
||||
{
|
||||
return $this->project->getByID($stageID, 'stage');
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get Kanban by ID,
|
||||
* *
|
||||
* * @param int $kanbanID
|
||||
* * @access public
|
||||
* * @return void
|
||||
* */
|
||||
* getKanbanByID
|
||||
*
|
||||
* @param int mixed $kanbanID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getKanbanByID($kanbanID)
|
||||
{
|
||||
return $this->project->getByID($kanbanID, 'kanban');
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get project by status.
|
||||
* *
|
||||
* * @param string $status
|
||||
* * @access public
|
||||
* * @return int
|
||||
* */
|
||||
* getBystatus
|
||||
*
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getBystatus($status)
|
||||
{
|
||||
$projects = $this->project->getOverviewList('byStatus', $status);
|
||||
@@ -189,12 +205,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get project list by order.
|
||||
* *
|
||||
* * @param string $orderBy
|
||||
* * @access public
|
||||
* * @return void
|
||||
* */
|
||||
* getListByOrder
|
||||
*
|
||||
* @param string mixed $orderBy
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getListByOrder($orderBy)
|
||||
{
|
||||
$projects = $this->project->getOverviewList('byStatus', 'wait', $orderBy);
|
||||
@@ -202,24 +218,24 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get project by ID.
|
||||
* *
|
||||
* * @param int $projectID
|
||||
* * @access public
|
||||
* * @return void
|
||||
* */
|
||||
* getByID
|
||||
*
|
||||
* @param mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByID($projectID)
|
||||
{
|
||||
return $this->project->getOverviewList('byID', $projectID);
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get project pairs by ID list.
|
||||
* *
|
||||
* * @param array $IDList
|
||||
* * @access public
|
||||
* * @return int
|
||||
* */
|
||||
* getByIdListFind
|
||||
*
|
||||
* @param array mixed $IDList
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByIdListFind($IDList)
|
||||
{
|
||||
$projects = $this->project->getPairsByIdList($IDList);
|
||||
@@ -248,12 +264,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get parentName.
|
||||
* *▫
|
||||
* * @param int $projectID▫
|
||||
* * @access public
|
||||
* * @return array
|
||||
* */
|
||||
* getParentName
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getParentName($projectID)
|
||||
{
|
||||
$program = $this->project->getParentName($projectID);
|
||||
@@ -262,12 +278,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get team member pairs.▫
|
||||
* *▫
|
||||
* * @param int $projectID▫
|
||||
* * @access public
|
||||
* * @return int
|
||||
* */
|
||||
* getTeamMemberPairs
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getTeamMemberPairs($projectID)
|
||||
{
|
||||
$members = array_filter($this->project->getTeamMemberPairs($projectID));
|
||||
@@ -276,14 +292,13 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* /**
|
||||
* * Check members.▫
|
||||
* *▫
|
||||
* * @param array $members▫
|
||||
* * @param array $users▫
|
||||
* * @access public
|
||||
* * @return bool
|
||||
* */
|
||||
* checkMembers
|
||||
*
|
||||
* @param int mixed $members
|
||||
* @param string mixed $users
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function checkMembers($members, $users)
|
||||
{
|
||||
foreach($users as $user)
|
||||
@@ -294,14 +309,14 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* Get team memberm.
|
||||
*▫
|
||||
* @param int $projectID▫
|
||||
* @param array $users▫
|
||||
* @param bool $tutorial▫
|
||||
* @access public
|
||||
* @return int
|
||||
*/
|
||||
* getTeamMembers
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @param striong mixed $users
|
||||
* @param boolean mixed $tutorial
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getTeamMembers($projectID, $users, $tutorial = false)
|
||||
{
|
||||
if($tutorial) define('TUTORIAL', true);
|
||||
@@ -311,12 +326,12 @@ class Project
|
||||
return count($members);
|
||||
}
|
||||
|
||||
/*
|
||||
* Check project status after start a project.
|
||||
*▫
|
||||
* @param int $projectID▫
|
||||
/**
|
||||
* checkStatusBegin
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return bool
|
||||
* @return void
|
||||
*/
|
||||
public function checkStatusBegin($projectID)
|
||||
{
|
||||
@@ -330,12 +345,12 @@ class Project
|
||||
return true;
|
||||
}
|
||||
|
||||
/*
|
||||
* Check project status after suspend a project.
|
||||
/**
|
||||
* checkStatusStop
|
||||
*
|
||||
* @param int $projectID▫
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return bool
|
||||
* @return void
|
||||
*/
|
||||
public function checkStatusStop($projectID)
|
||||
{
|
||||
@@ -349,6 +364,14 @@ class Project
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* getExecutionData
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @param string $type
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getExecutionData($projectID, $type = '')
|
||||
{
|
||||
$table = 'zt_project';
|
||||
@@ -358,12 +381,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get builds from getDataByProject.
|
||||
* *
|
||||
* * @param int $projectID
|
||||
* * @access public
|
||||
* * @return array
|
||||
* */
|
||||
* getBuildData
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getBuildData($projectID)
|
||||
{
|
||||
$builds = $this->project->getDataByProject(TABLE_BUILD, $projectID);
|
||||
@@ -372,12 +395,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* * Get releases from getDataByProject.
|
||||
* *
|
||||
* * @param int $projectID
|
||||
* * @access public
|
||||
* * @return array
|
||||
* */
|
||||
* getReleaseData
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getReleaseData($projectID)
|
||||
{
|
||||
$releases = $this->project->getDataByProject(TABLE_RELEASE, $projectID);
|
||||
@@ -385,6 +408,13 @@ class Project
|
||||
return $releases;
|
||||
}
|
||||
|
||||
/**
|
||||
* getByProgram
|
||||
*
|
||||
* @param int mixed $programID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByProgram($programID)
|
||||
{
|
||||
$projects = $this->project->getPairsByProgram($programID);
|
||||
@@ -401,13 +431,12 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* Get project pairs by status.
|
||||
* getByStatusPairs
|
||||
*
|
||||
* @param string $status
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return int
|
||||
* @return void
|
||||
*/
|
||||
|
||||
public function getByStatusPairs($status)
|
||||
{
|
||||
$projects = $this->project->getPairsByProgram(2, $status);
|
||||
@@ -424,19 +453,25 @@ class Project
|
||||
}
|
||||
|
||||
/**
|
||||
* Get project list by order.
|
||||
* getConsumed
|
||||
*
|
||||
* @param string $orderBy
|
||||
* @param array mixed $projectIdList
|
||||
* @access public
|
||||
* @return int
|
||||
* @return void
|
||||
*/
|
||||
|
||||
public function getConsumed($projectIdList)
|
||||
{
|
||||
$projects = $this->project->getProjectsConsumed($projectIdList, $time = '');
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getByStatusExe
|
||||
*
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getByStatusExe($status)
|
||||
{
|
||||
$executions = $this->project->getStats(0, $status);
|
||||
@@ -451,12 +486,12 @@ class Project
|
||||
return count($executions);
|
||||
}
|
||||
|
||||
/*
|
||||
* Get executions by project.
|
||||
/**
|
||||
* getByProject
|
||||
*
|
||||
* @param int $projectID
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return int
|
||||
* @return void
|
||||
*/
|
||||
public function getByProject($projectID)
|
||||
{
|
||||
@@ -469,49 +504,88 @@ class Project
|
||||
return count($executions);
|
||||
}
|
||||
|
||||
/*
|
||||
* Get executions by order.
|
||||
/**
|
||||
* getTotalBugBy
|
||||
*
|
||||
* @param string $orderBy
|
||||
|
||||
* @param array mixed $projectIdList
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return bool
|
||||
* @return void
|
||||
*/
|
||||
|
||||
public function getTotalBugBy($projectIdList, $status)
|
||||
{
|
||||
$projects = $this->project->getTotalBugByProject($projectIdList, $status);
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getWorkHour
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getWorkHour($projectID)
|
||||
{
|
||||
$projects = $this->project->getWorkhour($projectID);
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getInfoList
|
||||
*
|
||||
* @param string mixed $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getInfoList($status)
|
||||
{
|
||||
$projects = $this->project->getInfoList($status);
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getStatData
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getStatData($projectID)
|
||||
{
|
||||
$projects = $this->project->getStatData($projectID);
|
||||
return $projects;
|
||||
}
|
||||
|
||||
/**
|
||||
* getTotalStoriesByProject
|
||||
*
|
||||
* @param int $projectID
|
||||
* @param array $productIdList
|
||||
* @param string $type
|
||||
* @param string $status
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function getTotalStoriesByProject($projectID = 0, $productIdList = array(), $type = 'story', $status = 'all')
|
||||
{
|
||||
$projects = $this->project->getTotalStoriesByProject($projectID = 0, $productIdList = array(), $type = 'story', $status = 'all');
|
||||
return $projects;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* saveState
|
||||
*
|
||||
* @param int mixed $projectID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function saveState($projectID)
|
||||
{
|
||||
$projects = $this->project->getPairsByProgram();
|
||||
$object = $this->project->saveState($projectID, $projects);
|
||||
return $object;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -12,13 +12,13 @@ cid=1
|
||||
pid=1
|
||||
|
||||
测试正常的创建 >> case1
|
||||
测试不填产品代号的情况 >> 『code』不能为空。
|
||||
测试创建重复的产品 >> 『code』已经有『testcase1』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。
|
||||
测试不填产品名称的情况 >> 『name』不能为空。
|
||||
测试不填产品代号的情况 >> 『产品代号』不能为空。
|
||||
测试创建重复的产品 >> 『产品代号』已经有『testcase1』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。
|
||||
测试不填产品名称的情况 >> 『产品名称』不能为空。
|
||||
测试传入name和code >> case3,testcase3
|
||||
测试传入program、name、code >> 3,case4,testcase4
|
||||
测试传入program、name、code、type、status >> 4,branch,closed
|
||||
测试不填权限控制的情况 >> 『code』不能为空。
|
||||
测试不填权限控制的情况 >> 『访问控制』不符合格式,应当为:『/open|private|custom/』。
|
||||
|
||||
*/
|
||||
|
||||
@@ -33,12 +33,12 @@ $t_pronamecode = array('program' => '3', 'name' => 'case4', 'code' => 'testcase4
|
||||
$t_intypestatus = array('program' => '4', 'name' => 'case5', 'code' => 'testcase5', 'type' => 'branch', 'status' => 'closed');
|
||||
$t_noacl = array('name' => 'case12', 'code' => 'testcase1', 'acl' => '');
|
||||
|
||||
r($createtest->createObject($t_create)) && p('name') && e('case1'); // 测试正常的创建
|
||||
r($createtest->createObject($t_noid)) && p('code:0') && e('『code』不能为空。'); // 测试不填产品代号的情况
|
||||
r($createtest->createObject($t_repeat)) && p('code:0') && e('『code』已经有『testcase1』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。'); // 测试创建重复的产品
|
||||
r($createtest->createObject($t_noname)) && p('name:0') && e('『name』不能为空。'); // 测试不填产品名称的情况
|
||||
r($createtest->createObject($t_namecode)) && p('name,code') && e('case3,testcase3'); // 测试传入name和code
|
||||
r($createtest->createObject($t_pronamecode)) && p('program,name,code') && e('3,case4,testcase4'); // 测试传入program、name、code
|
||||
r($createtest->createObject($t_intypestatus)) && p('program,type,status') && e('4,branch,closed'); // 测试传入program、name、code、type、status
|
||||
r($createtest->createObject($t_noacl)) && p('acl:0') && e('『code』不能为空。'); // 测试不填权限控制的情况
|
||||
r($createtest->createObject($t_create)) && p('name') && e('case1'); // 测试正常的创建
|
||||
r($createtest->createObject($t_noid)) && p('code:0') && e('『产品代号』不能为空。'); // 测试不填产品代号的情况
|
||||
r($createtest->createObject($t_repeat)) && p('code:0') && e('『产品代号』已经有『testcase1』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。'); // 测试创建重复的产品
|
||||
r($createtest->createObject($t_noname)) && p('name:0') && e('『产品名称』不能为空。'); // 测试不填产品名称的情况
|
||||
r($createtest->createObject($t_namecode)) && p('name,code') && e('case3,testcase3'); // 测试传入name和code
|
||||
r($createtest->createObject($t_pronamecode)) && p('program,name,code') && e('3,case4,testcase4'); // 测试传入program、name、code
|
||||
r($createtest->createObject($t_intypestatus)) && p('program,type,status') && e('4,branch,closed'); // 测试传入program、name、code、type、status
|
||||
r($createtest->createObject($t_noacl)) && p('acl:0') && e('『访问控制』不符合格式,应当为:『/open|private|custom/』。'); // 测试不填权限控制的情况
|
||||
system("./ztest init");
|
||||
@@ -9,7 +9,7 @@ title=测试productModel->getLatestProject();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
测试产品25关联的最后一个未关闭的项目,按begin字段排序 >> 315
|
||||
测试产品25关联的最后一个未关闭的项目,按begin字段排序 >> 395
|
||||
测试产品38关联的最后一个未关闭的项目,按begin字段排序 >> 688
|
||||
传入不存在的产品 >> 没有数据
|
||||
|
||||
@@ -21,6 +21,6 @@ $t_project25 = array('id'=>'25');
|
||||
$t_project38 = array('id'=>'38');
|
||||
$t_project101 = array('id'=>'101');
|
||||
|
||||
r($product->testGetLatestProject($t_project25['id'])) && p('id') && e('315'); // 测试产品25关联的最后一个未关闭的项目,按begin字段排序
|
||||
r($product->testGetLatestProject($t_project25['id'])) && p('id') && e('395'); // 测试产品25关联的最后一个未关闭的项目,按begin字段排序
|
||||
r($product->testGetLatestProject($t_project38['id'])) && p('id') && e('688'); // 测试产品38关联的最后一个未关闭的项目,按begin字段排序
|
||||
r($product->testGetLatestProject($t_project101['id'])) && p() && e('没有数据'); // 传入不存在的产品
|
||||
@@ -19,7 +19,7 @@ pid=1
|
||||
|
||||
$tester = new Product('admin');
|
||||
|
||||
$t_return = array('1', '101', '15', '701');
|
||||
$t_return = array('1', '101', '15', '7010');
|
||||
|
||||
r($tester->getProjectPairsByProductID($t_return[0])) && p('11') && e('项目1'); // 返回产品1关联的项目11名字
|
||||
r($tester->getProjectPairsByProductID($t_return[0])) && p('21') && e('项目11'); // 返回产品1关联的项目21名字
|
||||
|
||||
@@ -14,7 +14,7 @@ pid=1
|
||||
项目集的开始时间为空 >> 『计划开始』不能为空。
|
||||
项目集的完成时间为空 >> 『计划完成』不能为空。
|
||||
项目集的计划完成时间大于计划开始时间 >> 『计划完成』应当大于『2022-01-12』。
|
||||
项目集的完成日期大于父项目集的完成日期 >> 父项目集的开始日期:2022-01-11,开始日期不能小于父项目集的开始日期
|
||||
项目集的完成日期大于父项目集的完成日期(需要实时更新日期) >> 父项目集的开始日期:2022-01-16,开始日期不能小于父项目集的开始日期
|
||||
|
||||
*/
|
||||
|
||||
@@ -22,10 +22,10 @@ $program = new Program('admin');
|
||||
|
||||
$add_itemset = array('1', '2', '3', '4', '5', '6');
|
||||
|
||||
var_dump($program->createData($add_itemset[5]));die;
|
||||
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-11,开始日期不能小于父项目集的开始日期'); // 项目集的完成日期大于父项目集的完成日期
|
||||
r($program->createData($add_itemset[5])) && p('message:begin;message:end') && e('父项目集的开始日期:2022-01-16,开始日期不能小于父项目集的开始日期'); // 项目集的完成日期大于父项目集的完成日期(需要实时更新日期)
|
||||
system("./ztest init");
|
||||
@@ -16,4 +16,5 @@ $Stakeholder = new Program('admin');
|
||||
|
||||
$t_Stakeholder = array('1');
|
||||
|
||||
r($Stakeholder->createStakeholder($t_Stakeholder[0])) && p('0:account;1:account') && e('dev2;dev1'); // 创建id=1的项目集的干系人dev1,dev2并查看。
|
||||
r($Stakeholder->createStakeholder($t_Stakeholder[0])) && p('0:account;1:account') && e('dev2;dev1'); // 创建id=1的项目集的干系人dev1,dev2并查看。
|
||||
system("./ztest init");
|
||||
@@ -9,7 +9,7 @@ title=测试 programModel::getInvolvedPrograms();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
查看用户admin可以看到的项目和执行id列表 >> 131
|
||||
查看用户admin可以看到的项目和执行id列表 >> 1
|
||||
查看用户test2可以看到的项目和执行id列表 >> 1
|
||||
|
||||
*/
|
||||
@@ -18,6 +18,5 @@ $listOfId = new Program('admin');
|
||||
|
||||
$t_sulist = array('admin', 'test2');
|
||||
|
||||
/* GetInvolvedPrograms($account). */
|
||||
r($listOfId->getInvolvedPrograms($t_sulist[0])) && p('131') && e('131'); // 查看用户admin可以看到的项目和执行id列表
|
||||
r($listOfId->getInvolvedPrograms($t_sulist[0])) && p('1') && e('1'); // 查看用户admin可以看到的项目和执行id列表
|
||||
r($listOfId->getInvolvedPrograms($t_sulist[1])) && p('1') && e('1'); // 查看用户test2可以看到的项目和执行id列表
|
||||
@@ -9,60 +9,22 @@ title=测试 programModel::getProductPairs();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
根据项目或项目集ID获取关联产品详情 >> 已关闭的正常产品23
|
||||
根据项目或项目集ID获取关联产品详情 >> 已关闭的正常产品24
|
||||
获取不存在的项目或项目集 >> Not Found
|
||||
根据项目或项目集指派情况获取关联产品详情 >> 正常产品1
|
||||
根据项目或项目集状态获取关联产品详情 >> 多平台产品100
|
||||
查看ID=1,有指派,所有状态的关联产品数量 >> 10
|
||||
查看ID=1,有指派,未关闭的关联产品数量 >> 6
|
||||
根据项目或项目集状态获取关联产品详情 >> 多平台产品90
|
||||
查看ID=1,有指派,所有状态的关联产品数量 >> 9
|
||||
查看ID=1,有指派,未关闭的关联产品数量 >> 5
|
||||
|
||||
*/
|
||||
/*
|
||||
class Tester
|
||||
{
|
||||
public function __construct($user)
|
||||
{
|
||||
global $tester;
|
||||
|
||||
su($user);
|
||||
$this->program = $tester->loadModel('program');
|
||||
}
|
||||
|
||||
public function getProductPairsByID($programID = 0)
|
||||
{
|
||||
$program = $this->program->getByID($programID);
|
||||
if(empty($program)) return array('message' => 'Not Found');
|
||||
return $this->program->getProductPairs($programID, 'assign', 'all');
|
||||
}
|
||||
|
||||
public function getProductPairsByMod($mode = 'assign')
|
||||
{
|
||||
return $this->program->getProductPairs(1, $mode, 'noclosed');
|
||||
}
|
||||
|
||||
public function getProductPairsByStatus($status = 'all')
|
||||
{
|
||||
return $this->program->getProductPairs(1, 'assign', $status);
|
||||
}
|
||||
|
||||
public function getCount($programID = 0, $mode = 'assign', $status = 'all')
|
||||
{
|
||||
return count($this->program->getProductPairs($programID, $mode, $status));
|
||||
}
|
||||
}
|
||||
*/
|
||||
$getItemsets = new Program('admin');
|
||||
|
||||
/* GetProductPairs($programID). */
|
||||
r($getItemsets->getProductPairsByID('1')) && p('23') && e('已关闭的正常产品23'); //根据项目或项目集ID获取关联产品详情
|
||||
r($getItemsets->getProductPairsByID('1000')) && p('message') && e('Not Found'); //获取不存在的项目或项目集
|
||||
$t_program = array('1', '1000', 'all', 'all', '1', 'assign', 'all', '1', 'assign', 'noclosed');
|
||||
|
||||
/* GetProductPairs('all', $mode, 'noclosed'). */
|
||||
r($getItemsets->getProductPairsByMod('all')) && p('1') && e('正常产品1'); // 根据项目或项目集指派情况获取关联产品详情
|
||||
|
||||
/* GetProductPairs('all', 'assign', $status). */
|
||||
r($getItemsets->getProductPairsByStatus('all')) && p('100') && e('多平台产品100'); //根据项目或项目集状态获取关联产品详情
|
||||
|
||||
/* Count().*/
|
||||
r($getItemsets->getCount2('1', 'assign', 'all')) && p() && e('10'); //查看ID=1,有指派,所有状态的关联产品数量
|
||||
r($getItemsets->getCount2('1', 'assign', 'noclosed')) && p() && e('6'); //查看ID=1,有指派,未关闭的关联产品数量
|
||||
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,有指派,未关闭的关联产品数量
|
||||
@@ -9,18 +9,19 @@ title=测试 programModel::getStakeholders();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
查看项目集2的干系人信息 >> 0
|
||||
查看项目集2的干系人信息 >> 测试17
|
||||
根据干系人id倒序排序 >> 1
|
||||
根据干系人id正序排序 >> 1
|
||||
查看项目集2的干系人个数 >> 0
|
||||
查看项目集2的干系人个数 >> 3
|
||||
|
||||
*/
|
||||
|
||||
$program = new Program('admin');
|
||||
|
||||
$t_Stakeholder = array(2, 'id_desc', 'id_asc', 2);
|
||||
var_dump($program->getByID1($t_Stakeholder[0]));die;
|
||||
r($program->getByID1($t_Stakeholder[0])) && p() && e('0'); // 查看项目集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('0'); // 查看项目集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的干系人个数
|
||||
@@ -9,10 +9,14 @@ title=测试 programModel::getStakeholdersByPrograms();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
获取项目集2的干系人名单 >> 0
|
||||
获取项目集2和项目集3的干系人名单 >> 0
|
||||
获取项目集2的干系人个数 >> 0
|
||||
获取项目集2和项目集3的干系人个数 >> 0
|
||||
获取项目集2的干系人名单 >> user19
|
||||
获取项目集2的干系人名单 >> user18
|
||||
获取项目集2的干系人名单 >> user17
|
||||
获取项目集2和项目集3的干系人名单 >> user19
|
||||
获取项目集2和项目集3的干系人名单 >> user18
|
||||
获取项目集2和项目集3的干系人名单... >> user17
|
||||
获取项目集2的干系人个数 >> 3
|
||||
获取项目集2和项目集3的干系人个数 >> 6
|
||||
|
||||
*/
|
||||
|
||||
@@ -20,7 +24,11 @@ $t = new Program('admin');
|
||||
|
||||
$Stakeholder = array('2', '2,3', '2', '2,3');
|
||||
|
||||
r($t->getByPrograms($Stakeholder[0])) && p() && e('0'); // 获取项目集2的干系人名单
|
||||
r($t->getByPrograms($Stakeholder[1])) && p() && e('0'); // 获取项目集2和项目集3的干系人名单
|
||||
r($t->getCount4($Stakeholder[2])) && p() && e('0'); // 获取项目集2的干系人个数
|
||||
r($t->getCount4($Stakeholder[3])) && p() && e('0'); // 获取项目集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的干系人个数
|
||||
@@ -9,8 +9,8 @@ title=测试 programModel::getTeamMemberPairs();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
获取项目集下所有团队成员 >> U:测试89
|
||||
获取项目集下所有团队成员 >> 181
|
||||
获取项目集下所有团队成员 >> P:产品经理92
|
||||
获取项目集下所有团队成员 >> 19
|
||||
|
||||
*/
|
||||
|
||||
@@ -18,5 +18,6 @@ $program = new Program('admin');
|
||||
|
||||
$t_Tnumber = array(1);
|
||||
|
||||
r($program->getById2($t_Tnumber[0])) && p('user89') && e('U:测试89'); //获取项目集下所有团队成员
|
||||
r($program->getCount6($t_Tnumber[0])) && p() && e('181'); // 获取项目集下所有团队成员
|
||||
//var_dump($program->getById2($t_Tnumber[0]));die;
|
||||
r($program->getById2($t_Tnumber[0])) && p('pm92') && e('P:产品经理92'); //获取项目集下所有团队成员
|
||||
r($program->getCount6($t_Tnumber[0])) && p() && e('19'); // 获取项目集下所有团队成员
|
||||
@@ -11,12 +11,14 @@ title=测试 programModel::getTopByID();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
获取项目集1最上级的项目集id >> Not Found
|
||||
获取项目集1最上级的项目集id >> 1
|
||||
获取项目集1000最上级的项目集id >> Not Found
|
||||
|
||||
*/
|
||||
|
||||
$t = new Program('admin');
|
||||
|
||||
$program_id = 1;
|
||||
$program_id = array(1, 1000);
|
||||
|
||||
r($t->getByID3($program_id)) && p('message') && e('Not Found'); // 获取项目集1最上级的项目集id
|
||||
r($t->getByID3($program_id[0])) && p() && e('1'); //获取项目集1最上级的项目集id
|
||||
r($t->getByID3($program_id[1])) && p() && e('Not Found'); //获取项目集1000最上级的项目集id
|
||||
@@ -9,7 +9,7 @@ title=测试 programModel::hasUnfinished();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
获取项目集1下未完成的项目和项目集 >> 88
|
||||
获取项目集1下未完成的项目和项目集 >> 9
|
||||
|
||||
*/
|
||||
|
||||
@@ -17,4 +17,4 @@ $program = new Program('admin');
|
||||
|
||||
$unFinish = 1;
|
||||
|
||||
r($program->getUnfinished($unFinish)) && p() && e('88'); // 获取项目集1下未完成的项目和项目集
|
||||
r($program->getUnfinished($unFinish)) && p() && e('9'); // 获取项目集1下未完成的项目和项目集
|
||||
@@ -9,22 +9,10 @@ title=测试 programModel::processNode();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
|
||||
>> 1
|
||||
|
||||
*/
|
||||
|
||||
/*class Tester
|
||||
{
|
||||
public function __construct($user)
|
||||
{
|
||||
global $tester;
|
||||
$program = new Program('admin');
|
||||
|
||||
su($user);
|
||||
$this->program = $tester->loadModel('program');
|
||||
}
|
||||
}*/
|
||||
|
||||
$t = new Program('admin');
|
||||
|
||||
$program = $tester->loadModel('program');
|
||||
r($program->processNode(1, 0, 1, 1)) && p() && e(''); //
|
||||
r($program->processNode(1, 0, 1, 1)) && p() && e('1');
|
||||
@@ -9,8 +9,7 @@ title=测试 programModel::setTreePath();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
查找id=11的项目集的path >> 12,
|
||||
查找不存在的id=1000的项目集的path >> 0
|
||||
查找id=12的项目集的path >> ,2,12,
|
||||
|
||||
*/
|
||||
|
||||
@@ -18,5 +17,4 @@ $program = new Program('admin');
|
||||
|
||||
$findId = array(12, 1000);
|
||||
|
||||
r($program->setTreePath($findId[0])) && p('path') && e('12,'); // 查找id=11的项目集的path
|
||||
#r($program->setTreePath($findId[1])) && p('path') && e('0'); // 查找不存在的id=1000的项目集的path
|
||||
r($program->setTreePath($findId[0])) && p('path') && e(',2,12,'); // 查找id=12的项目集的path
|
||||
@@ -20,9 +20,10 @@ pid=1
|
||||
|
||||
$t = new Program('admin');
|
||||
|
||||
r($t->updateProgram(10)) && p('0:new') && e('测试更新项目集十');// 更新id为10的项目集信息
|
||||
r($t->updateProgram(10, 2)) && p('message[begin]:0') && e('『计划开始』不能为空。');// 当计划开始为空时更新项目集信息
|
||||
r($t->updateProgram(10, 3)) && p('message[end]:0') && e('『计划完成』不能为空。');// 当计划完成为空时更新项目集信息
|
||||
r($t->updateProgram(10, 4)) && p('message[end]:0') && e('『计划完成』应当大于『2020-10-10』。');// 当计划完成小于计划开始时
|
||||
r($t->updateProgram(10, 1)) && p('message[name]:0') && e('『项目集名称』已经有『项目集1』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。');// 项目集名称已经存在时
|
||||
r($t->updateProgram(10, 5)) && p('message:begin;message:end') && e('父项目集的开始日期:2019-09-09,开始日期不能小于父项目集的开始日期;父项目集的完成日期:2019-09-09,完成日期不能大于父项目集的完成日期');// 项目集开始时间小于父项目集时
|
||||
r($t->updateProgram(10)) && p('message:end') && e('测试更新项目集十'); // 更新id为10的项目集信息
|
||||
r($t->updateProgram(10, 2)) && p('message[begin]:0') && e('『计划开始』不能为空。'); //当计划开始为空时更新项目集信息
|
||||
r($t->updateProgram(10, 3)) && p('message[end]:0') && e('『计划完成』不能为空。'); //当计划完成为空时更新项目集信息
|
||||
r($t->updateProgram(10, 4)) && p('message[end]:0') && e('『计划完成』应当大于『2020-10-10』。'); //当计划完成小于计划开始时
|
||||
r($t->updateProgram(10, 1)) && p('message[name]:0') && e('『项目集名称』已经有『项目集1』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。'); //项目集名称已经存在时
|
||||
r($t->updateProgram(10, 5)) && p('message:begin;message:end') && e('父项目集的开始日期:2019-09-09,开始日期不能小于父项目集的开始日期;父项目集的完成日期:2019-09-09,完成日期不能大于父项目集的完成日期');// 项目集开始时间小于父项目集时
|
||||
system("./ztest init");
|
||||
@@ -19,4 +19,5 @@ $project = new Project('admin');
|
||||
$beginId = array(66, 67);
|
||||
|
||||
r($project->checkStatus($beginId[0])) && p() && e('1'); //开始id为66状态不是closed的项目
|
||||
r($project->checkStatus($beginId[1])) && p() && e('0'); //开始id为67状态是closed的项目
|
||||
r($project->checkStatus($beginId[1])) && p() && e('0'); //开始id为67状态是closed的项目
|
||||
system("./ztest init");
|
||||
@@ -23,4 +23,5 @@ $realEnd1 = array('realEnd' => '2022-03-11');
|
||||
//var_dump($project->checkStatusOff($closeId[0], $realEnd1));die;
|
||||
r($project->checkStatusOff($closeId[0], $realEnd1)) && p() && e('1'); //关闭id为20状态不是closed的项目
|
||||
r($project->checkStatusOff($closeId[1], $realEnd1)) && p() && e('0'); //关闭id为26状态是closed的项目
|
||||
r($project->checkStatusOff($closeId[2], $realEnd1)) && p() && e('0'); //关闭id为41状态是suspended的项目
|
||||
r($project->checkStatusOff($closeId[2], $realEnd1)) && p() && e('0'); //关闭id为41状态是suspended的项目
|
||||
system("./ztest init");
|
||||
@@ -9,14 +9,18 @@ title=测试 projectModel::checkHasContent;
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
统计id=13的项目bug数量 >> 3
|
||||
任务数量 >> 13
|
||||
暂停数量 >> 2
|
||||
进行的数量 >> 2
|
||||
完成的数量 >> 0
|
||||
|
||||
*/
|
||||
|
||||
$project = new Project('admin');
|
||||
|
||||
//var_dump($project->getStatData(13));die;
|
||||
|
||||
r($project->getStatData(13)) && p('bugCount') && e(3); //统计id=13的项目bug数量
|
||||
r($project->getStatData(13)) && p('taskCount') && e(13); //任务数量
|
||||
r($project->getStatData(13)) && p('waitCount') && e(2); //暂停数量
|
||||
r($project->getStatData(13)) && p('doingCount') && e(2); //进行的数量
|
||||
r($project->getStatData(13)) && p('finishedCount') && e(0); //完成的数量
|
||||
r($project->getStatData(13)) && p('bugCount') && e('3'); //统计id=13的项目bug数量
|
||||
r($project->getStatData(13)) && p('taskCount') && e('13'); //任务数量
|
||||
r($project->getStatData(13)) && p('waitCount') && e('2'); //暂停数量
|
||||
r($project->getStatData(13)) && p('doingCount') && e('2'); //进行的数量
|
||||
r($project->getStatData(13)) && p('finishedCount') && e('0'); //完成的数量
|
||||
@@ -9,7 +9,7 @@ title=测试 projectModel::getTeamMembers();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
获取id为11的项目团队成员个数 >> 0
|
||||
获取id为11的项目团队成员个数 >> 2
|
||||
获取id为11的项目团队成员个数,开启新手引导 >> 1
|
||||
|
||||
*/
|
||||
@@ -19,4 +19,4 @@ $project = new Project('admin');
|
||||
$getNu = array(11, array('admin', 'pm92'), 11, array('admin'), true);
|
||||
|
||||
r($project->getTeamMembers($getNu[0], $getNu[1])) && p() && e('2'); //获取id为11的项目团队成员个数
|
||||
r($project->getTeamMembers($getNu[2], $getNu[3], $getNu[4])) && p() && e('1'); //获取id为11的项目团队成员个数,开启新手引导
|
||||
r($project->getTeamMembers($getNu[2], $getNu[3], $getNu[4])) && p() && e('1'); //获取id为11的项目团队成员个数,开启新手引导
|
||||
@@ -9,8 +9,10 @@ title=测试 projectModel::getTotalStoriesByProject;
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
|
||||
|
||||
*/
|
||||
|
||||
$project = new Project('admin');
|
||||
|
||||
var_dump($project->getTotalStoriesByProject());die;
|
||||
var_dump($project->getTotalStoriesByProject());die;
|
||||
@@ -9,10 +9,13 @@ title=测试 projectModel::getWorkhour;
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
|
||||
预计61.0小时 >> 61.0
|
||||
消耗95.0小时 >> 95.0
|
||||
|
||||
*/
|
||||
|
||||
$project = new Project('admin');
|
||||
|
||||
var_dump($project->getWorkHour(1));die;
|
||||
r($project->getWorkHour(13)) && p('totalEstimate') && e('61.0'); //预计61.0小时
|
||||
r($project->getWorkHour(13)) && p('totalConsumed') && e('95.0'); //消耗95.0小时
|
||||
r($project->getWorkHour(1000)) && p('totalEstimate') && e(''); //测试不存在的项目
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/project.class.php';
|
||||
|
||||
/**
|
||||
|
||||
@@ -8,8 +9,14 @@ title=测试 programModel::saveState;
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
|
||||
传入存在ID的值14,保存session,返回对应值14 >> 14
|
||||
传入存在ID的值99,保存session,返回第一位默认值11 >> 11
|
||||
|
||||
*/
|
||||
|
||||
$project = $tester->loadModel('project');
|
||||
$project = new Project('dev1');
|
||||
|
||||
$projectId = array(14, 99);
|
||||
|
||||
r($project->saveState($projectId[0])) && p() && e('14'); //传入存在ID的值14,保存session,返回对应值14
|
||||
r($project->saveState($projectId[1])) && p() && e('11'); //传入存在ID的值99,保存session,返回第一位默认值11
|
||||
@@ -23,4 +23,5 @@ $statusId = array(81, 83, 82, 85);
|
||||
r($project->checkStatusBegin($statusId[0])) && p() && e('1'); // 开始id为81状态是suspended的项目(代码缺失elBegan参数,报警告)
|
||||
r($project->checkStatusBegin($statusId[1])) && p() && e('1'); // 开始id为83状态是wait的项目
|
||||
r($project->checkStatusBegin($statusId[2])) && p() && e('0'); // 开始id为82状态是closed的项目
|
||||
r($project->checkStatusBegin($statusId[3])) && p() && e('0'); // 开始id为85状态是doing的项目
|
||||
r($project->checkStatusBegin($statusId[3])) && p() && e('0'); // 开始id为85状态是doing的项目
|
||||
system("./ztest init");
|
||||
@@ -14,40 +14,10 @@ pid=1
|
||||
暂停id为74状态是closed的项目 >> 0
|
||||
|
||||
*/
|
||||
/*
|
||||
class Tester
|
||||
{
|
||||
public function __construct($user)
|
||||
{
|
||||
global $tester;
|
||||
|
||||
su($user);
|
||||
$this->project = $tester->loadModel('project');
|
||||
}
|
||||
|
||||
/**
|
||||
* Check project status after suspend a project.
|
||||
*
|
||||
* @param int $projectID
|
||||
* @access public
|
||||
* @return bool
|
||||
*
|
||||
public function checkStatus($projectID)
|
||||
{
|
||||
$oldProject = $this->project->getById($projectID);
|
||||
if($oldProject->status == 'suspended' or $oldProject->status == 'closed') return false;
|
||||
|
||||
$change = $this->project->suspend($projectID);
|
||||
|
||||
$project = $this->project->getById($projectID);
|
||||
if($project->status != 'suspended') return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
}*/
|
||||
|
||||
$t = new Project('admin');
|
||||
|
||||
r($t->checkStatusStop(56)) && p() && e('1'); // 暂停id为56状态是doing的项目
|
||||
r($t->checkStatusStop(73)) && p() && e('0'); // 暂停id为73状态是suspended的项目
|
||||
r($t->checkStatusStop(74)) && p() && e('0'); // 暂停id为74状态是closed的项目
|
||||
r($t->checkStatusStop(74)) && p() && e('0'); // 暂停id为74状态是closed的项目
|
||||
system("./ztest init");
|
||||
Reference in New Issue
Block a user