Merge branch 'autotest_ly' into 'master'

add company test

See merge request easycorp/zentaopms!2377
This commit is contained in:
孙广明
2022-03-18 07:59:17 +00:00
12 changed files with 391 additions and 3 deletions
+197
View File
@@ -0,0 +1,197 @@
<?php
class companyTest
{
/**
* __construct loadModel execution
*
* @access public
*/
public function __construct()
{
global $tester;
$this->objectModel = $tester->loadModel('company');
}
/**
* function update test by execution
*
* @param string $objectID
* @param array $param
* @access public
* @return array
*/
public function updateObject($objectID, $param = array())
{
global $tester;
$object = $tester->dbh->query("SELECT `name`,`phone`,`fax`,`address`,`zipcode`,`website`,`backyard`,`guest`
FROM zt_company WHERE id = $objectID")->fetch();
foreach($object as $field => $defaultValue) $_POST[$field] = $defaultValue;
foreach($param as $key => $value) $_POST[$key] = $value;
$this->objectModel->update();
$change = $tester->dbh->query("select * from zt_company WHERE id = $objectID")->fetch();
unset($_POST);
if(dao::isError())
{
return dao::getError();
}
else
{
return $change;
}
}
/**
* function getList test by company
*
* @param string $count
* @access public
* @return array
*/
public function getListTest($count)
{
$object = $this->objectModel->getList();
if(dao::isError())
{
$error = dao::getError();
return $error;
}
elseif($count == 1)
{
return count($object);
}
else
{
return $object;
}
}
/**
* function getFirst test by company
*
* @access public
* @return array
*/
public function getFirstTest()
{
$object = $this->objectModel->getFirst();
if(dao::isError())
{
$error = dao::getError();
return $error;
}
else
{
return $object;
}
}
/**
* function getByID test by company
*
* @param string $companyID
* @access public
* @return array
*/
public function getByIDTest($companyID = '')
{
$object = $this->objectModel->getByID($companyID);
if(dao::isError())
{
$error = dao::getError();
return $error;
}
else
{
return $object;
}
}
/**
* function getUsers test by company
*
* @param string $count
* @param string $browseType
* @param string $type
* @param string $queryID
* @param string $deptID
* @param string $sort
* @access public
* @return array
*/
public function getUsersTest($count, $browseType, $type, $queryID, $deptID, $sort = '')
{
$object = $this->objectModel->getUsers($browseType, $type, $queryID, $deptID, $sort);
if(dao::isError())
{
$error = dao::getError();
return $error;
}
elseif($count == 1)
{
return count($object);
}
else
{
return $object;
}
}
/**
* function getOutsideCompanies test by company
*
* @access public
* @return array
*/
public function getOutsideCompaniesTest()
{
$object = $this->objectModel->getOutsideCompanies();
if(dao::isError())
{
$error = dao::getError();
return $error;
}
else
{
return $object;
}
}
/**
* function getCompanyUserPairs test by company
*
* @param string $count
* @access public
* @return array
*/
public function getCompanyUserPairsTest($count)
{
$object = $this->objectModel->getCompanyUserPairs();
if(dao::isError())
{
$error = dao::getError();
return $error;
}
elseif($count == 1)
{
return count($object);
}
else
{
return $object;
}
}
}
+2 -2
View File
@@ -5,10 +5,10 @@ version: "1.0"
fields:
- field: id
note: "id"
range: 1
range: 1-2
- field: name
note: "公司名"
range: 易软天创网络科技有限公司
range: 易软天创网络科技有限公司,外部公司
- field: admins
note: "管理员"
prefix: ","
+1 -1
View File
@@ -1,7 +1,7 @@
<?php
$builder = new stdclass();
$builder->company = array('rows' => 1, 'extends' => array('company'));
$builder->company = array('rows' => 2, 'extends' => array('company'));
$builder->user = array('rows' => 1000, 'extends' => array('user'));
$builder->todo = array('rows' => 2000, 'extends' => array('todo'));
$builder->effort = array('rows' => 100, 'extends' => array('effort'));
+1
View File
@@ -280,6 +280,7 @@ class Processor
$this->dao->query("DELETE FROM `zt_userquery`;");
$this->dao->query("INSERT INTO `zt_userquery` (`id`, `account`, `module`, `title`, `form`, `sql`, `shortcut`) VALUES (1, 'admin', 'task', '任务查询测试条件', 'a:60:{s:9:\"fieldname\";s:0:\"\";s:11:\"fieldstatus\";s:0:\"\";s:9:\"fielddesc\";s:0:\"\";s:15:\"fieldassignedTo\";s:0:\"\";s:8:\"fieldpri\";s:1:\"0\";s:14:\"fieldexecution\";s:0:\"\";s:11:\"fieldmodule\";s:4:\"ZERO\";s:13:\"fieldestimate\";s:0:\"\";s:9:\"fieldleft\";s:0:\"\";s:13:\"fieldconsumed\";s:0:\"\";s:9:\"fieldtype\";s:0:\"\";s:12:\"fieldfromBug\";s:0:\"\";s:17:\"fieldclosedReason\";s:0:\"\";s:13:\"fieldopenedBy\";s:0:\"\";s:15:\"fieldfinishedBy\";s:0:\"\";s:13:\"fieldclosedBy\";s:0:\"\";s:13:\"fieldcancelBy\";s:1:\"0\";s:17:\"fieldlastEditedBy\";s:0:\"\";s:11:\"fieldmailto\";s:0:\"\";s:17:\"fieldfinishedList\";s:0:\"\";s:15:\"fieldopenedDate\";s:0:\"\";s:13:\"fielddeadline\";s:0:\"\";s:15:\"fieldestStarted\";s:0:\"\";s:16:\"fieldrealStarted\";s:0:\"\";s:17:\"fieldassignedDate\";s:0:\"\";s:17:\"fieldfinishedDate\";s:0:\"\";s:15:\"fieldclosedDate\";s:0:\"\";s:17:\"fieldcanceledDate\";s:0:\"\";s:19:\"fieldlastEditedDate\";s:0:\"\";s:7:\"fieldid\";s:0:\"\";s:15:\"fieldcanceledBy\";s:0:\"\";s:6:\"andOr1\";s:3:\"AND\";s:6:\"field1\";s:4:\"name\";s:9:\"operator1\";s:7:\"include\";s:6:\"value1\";s:2:\"aa\";s:6:\"andOr2\";s:3:\"and\";s:6:\"field2\";s:2:\"id\";s:9:\"operator2\";s:1:\"=\";s:6:\"value2\";s:0:\"\";s:6:\"andOr3\";s:3:\"and\";s:6:\"field3\";s:6:\"status\";s:9:\"operator3\";s:1:\"=\";s:6:\"value3\";s:0:\"\";s:10:\"groupAndOr\";s:3:\"and\";s:6:\"andOr4\";s:3:\"AND\";s:6:\"field4\";s:4:\"desc\";s:9:\"operator4\";s:7:\"include\";s:6:\"value4\";s:0:\"\";s:6:\"andOr5\";s:3:\"and\";s:6:\"field5\";s:10:\"assignedTo\";s:9:\"operator5\";s:1:\"=\";s:6:\"value5\";s:0:\"\";s:6:\"andOr6\";s:3:\"and\";s:6:\"field6\";s:3:\"pri\";s:9:\"operator6\";s:1:\"=\";s:6:\"value6\";s:1:\"0\";s:6:\"module\";s:4:\"task\";s:9:\"actionURL\";s:77:\"/index.php?m=execution&f=task&executionID=101&status=bySearch&param=myQueryID\";s:10:\"groupItems\";s:1:\"3\";s:8:\"formType\";s:4:\"lite\";}', '(( 1 AND `name` LIKE \'%11%\' ) AND ( 1 )) AND deleted = \'0\'', '0');");
$this->dao->query("INSERT INTO `zt_userquery` (`id`, `account`, `module`, `title`, `form`, `sql`, `shortcut`) VALUES (2, 'admin', 'executionStory', '需求查找条件', 'a:56:{s:10:\"fieldtitle\";s:0:\"\";s:13:\"fieldkeywords\";s:0:\"\";s:11:\"fieldstatus\";s:0:\"\";s:10:\"fieldstage\";s:0:\"\";s:8:\"fieldpri\";s:1:\"0\";s:12:\"fieldproduct\";s:1:\"0\";s:11:\"fieldbranch\";s:0:\"\";s:11:\"fieldmodule\";s:4:\"ZERO\";s:9:\"fieldplan\";s:0:\"\";s:13:\"fieldestimate\";s:0:\"\";s:11:\"fieldsource\";s:0:\"\";s:15:\"fieldsourceNote\";s:0:\"\";s:12:\"fieldfromBug\";s:0:\"\";s:13:\"fieldopenedBy\";s:0:\"\";s:15:\"fieldreviewedBy\";s:0:\"\";s:15:\"fieldassignedTo\";s:0:\"\";s:13:\"fieldclosedBy\";s:0:\"\";s:17:\"fieldlastEditedBy\";s:0:\"\";s:11:\"fieldmailto\";s:0:\"\";s:17:\"fieldclosedReason\";s:0:\"\";s:12:\"fieldversion\";s:0:\"\";s:15:\"fieldopenedDate\";s:0:\"\";s:17:\"fieldreviewedDate\";s:0:\"\";s:17:\"fieldassignedDate\";s:0:\"\";s:15:\"fieldclosedDate\";s:0:\"\";s:19:\"fieldlastEditedDate\";s:0:\"\";s:7:\"fieldid\";s:0:\"\";s:6:\"andOr1\";s:3:\"AND\";s:6:\"field1\";s:5:\"title\";s:9:\"operator1\";s:7:\"include\";s:6:\"value1\";s:3:\"362\";s:6:\"andOr2\";s:3:\"and\";s:6:\"field2\";s:2:\"id\";s:9:\"operator2\";s:1:\"=\";s:6:\"value2\";s:0:\"\";s:6:\"andOr3\";s:3:\"and\";s:6:\"field3\";s:8:\"keywords\";s:9:\"operator3\";s:7:\"include\";s:6:\"value3\";s:0:\"\";s:10:\"groupAndOr\";s:3:\"and\";s:6:\"andOr4\";s:3:\"AND\";s:6:\"field4\";s:5:\"stage\";s:9:\"operator4\";s:1:\"=\";s:6:\"value4\";s:0:\"\";s:6:\"andOr5\";s:3:\"and\";s:6:\"field5\";s:6:\"status\";s:9:\"operator5\";s:1:\"=\";s:6:\"value5\";s:0:\"\";s:6:\"andOr6\";s:3:\"and\";s:6:\"field6\";s:3:\"pri\";s:9:\"operator6\";s:1:\"=\";s:6:\"value6\";s:1:\"0\";s:6:\"module\";s:14:\"executionStory\";s:9:\"actionURL\";s:95:\"/index.php?m=execution&f=story&executionID=101&orderBy=pri_desc&type=bySearch&queryID=myQueryID\";s:10:\"groupItems\";s:1:\"3\";s:8:\"formType\";s:4:\"lite\";}', '(( 1 AND `title` LIKE \'%362%\' ) AND ( 1 ))', '0');");
$this->dao->query("INSERT INTO `zt_userquery` (`id`, `account`, `module`, `title`, `form`, `sql`, `shortcut`) VALUES (3, 'admin', 'user', '用户测试条件', 'a:48:{s:13:\"fieldrealname\";s:0:\"\";s:10:\"fieldemail\";s:0:\"\";s:9:\"fielddept\";s:0:\"\";s:12:\"fieldaccount\";s:0:\"\";s:9:\"fieldrole\";s:0:\"\";s:10:\"fieldphone\";s:0:\"\";s:9:\"fieldjoin\";s:0:\"\";s:12:\"fieldvisions\";s:3:\"rnd\";s:7:\"fieldid\";s:0:\"\";s:13:\"fieldcommiter\";s:1:\"0\";s:11:\"fieldgender\";s:1:\"m\";s:7:\"fieldqq\";s:0:\"\";s:10:\"fieldskype\";s:0:\"\";s:13:\"fielddingding\";s:0:\"\";s:11:\"fieldweixin\";s:0:\"\";s:10:\"fieldslack\";s:0:\"\";s:13:\"fieldwhatsapp\";s:0:\"\";s:12:\"fieldaddress\";s:0:\"\";s:12:\"fieldzipcode\";s:0:\"\";s:6:\"andOr1\";s:3:\"AND\";s:6:\"field1\";s:8:\"realname\";s:9:\"operator1\";s:7:\"include\";s:6:\"value1\";s:9:\"白名单\";s:6:\"andOr2\";s:3:\"and\";s:6:\"field2\";s:5:\"email\";s:9:\"operator2\";s:7:\"include\";s:6:\"value2\";s:0:\"\";s:6:\"andOr3\";s:3:\"and\";s:6:\"field3\";s:4:\"dept\";s:9:\"operator3\";s:6:\"belong\";s:6:\"value3\";s:0:\"\";s:10:\"groupAndOr\";s:3:\"and\";s:6:\"andOr4\";s:3:\"AND\";s:6:\"field4\";s:7:\"account\";s:9:\"operator4\";s:7:\"include\";s:6:\"value4\";s:0:\"\";s:6:\"andOr5\";s:3:\"and\";s:6:\"field5\";s:4:\"role\";s:9:\"operator5\";s:1:\"=\";s:6:\"value5\";s:0:\"\";s:6:\"andOr6\";s:3:\"and\";s:6:\"field6\";s:5:\"phone\";s:9:\"operator6\";s:7:\"include\";s:6:\"value6\";s:0:\"\";s:6:\"module\";s:4:\"user\";s:9:\"actionURL\";s:74:\"/index.php?m=company&f=browse&browseType=all&param=myQueryID&type=bysearch\";s:10:\"groupItems\";s:1:\"3\";s:8:\"formType\";s:4:\"lite\";}', '(( 1 AND `realname` LIKE \'%白名单%\' ) AND ( 1 ))', '0');");
}
/**
+22
View File
@@ -0,0 +1,22 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->getByIDTest();
cid=1
pid=1
根据id查询公司 >> 易软天创网络科技有限公司
错误id查询 >> 0
*/
$companyIDList = array('0', '1');
$company = new companyTest();
r($company->getByIDTest($companyIDList[1])) && p('name') && e('易软天创网络科技有限公司'); // 根据id查询公司
r($company->getByIDTest($companyIDList[0])) && p() && e('0'); // 错误id查询
+22
View File
@@ -0,0 +1,22 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->getCompanyUserPairsTest();
cid=1
pid=1
公司用户键值组合 >> 易软天创网络科技有限公司/研发主管1
公司用户键值数量统计 >> 1000
*/
$count = array('0','1');
$company = new companyTest();
r($company->getCompanyUserPairsTest($count[0])) && p('td1') && e('易软天创网络科技有限公司/研发主管1'); // 公司用户键值组合
r($company->getCompanyUserPairsTest($count[1])) && p() && e('1000'); // 公司用户键值数量统计
+18
View File
@@ -0,0 +1,18 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->getFirstTest();
cid=1
pid=1
公司信息第一条查询 >> 易软天创网络科技有限公司
*/
$company = new companyTest();
r($company->getFirstTest()) && p('name') && e('易软天创网络科技有限公司'); // 公司信息第一条查询
+22
View File
@@ -0,0 +1,22 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->getListTest();
cid=1
pid=1
公司信息列表查询 >> 易软天创网络科技有限公司,,admin,
公司信息统计 >> 2
*/
$count = array('0','1');
$company = new companyTest();
r($company->getListTest($count[0])) && p('0:name,admins') && e('易软天创网络科技有限公司,,admin,'); // 公司信息列表查询
r($company->getListTest($count[1])) && p() && e('2'); // 公司信息统计
+18
View File
@@ -0,0 +1,18 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->getOutsideCompaniesTest();
cid=1
pid=1
查询外部公司 >> 外部公司
*/
$company = new companyTest();
r($company->getOutsideCompaniesTest()) && p('2') && e('外部公司'); // 查询外部公司
+43
View File
@@ -0,0 +1,43 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->getUsersTest();
cid=1
pid=1
查询内部人员 >> admin,admin
查询内部人员统计 >> 999
查询外部人员 >> outside1,用户1
查询外部部人员统计 >> 1
根据部门查询人员 >> admin,admin,1
type未传值按部门查询人员 >> 999
根据部门查询人员统计 >> 10
根据查询条件查询 >> program1whitelist,项目集1白名单用户
根据查询条件'查询统计 >> 1
根据account降序排序 >> program1whitelist,项目集1白名单用户
*/
$count = array('0','1');
$browseType = array('inside', 'outside');
$type = array('', 'bydept');
$queryID = array('0', '3');
$deptID = array('0', '1');
$sort = array('realname_asc', 'account_desc');
$company = new companyTest();
r($company->getUsersTest($count[0], $browseType[0], $type[0], $queryID[0], $deptID[0], $sort[0])) && p('0:account,realname') && e('admin,admin'); // 查询内部人员
r($company->getUsersTest($count[1], $browseType[0], $type[0], $queryID[0], $deptID[0], $sort[0])) && p() && e('999'); // 查询内部人员统计
r($company->getUsersTest($count[0], $browseType[1], $type[0], $queryID[0], $deptID[0], $sort[0])) && p('0:account,realname') && e('outside1,用户1'); // 查询外部人员
r($company->getUsersTest($count[1], $browseType[1], $type[0], $queryID[0], $deptID[0], $sort[0])) && p() && e('1'); // 查询外部部人员统计
r($company->getUsersTest($count[0], $browseType[0], $type[1], $queryID[0], $deptID[1], $sort[0])) && p('0:account,realname,dept') && e('admin,admin,1'); // 根据部门查询人员
r($company->getUsersTest($count[1], $browseType[0], $type[0], $queryID[0], $deptID[1], $sort[0])) && p() && e('999'); // type未传值按部门查询人员
r($company->getUsersTest($count[1], $browseType[0], $type[1], $queryID[0], $deptID[1], $sort[0])) && p() && e('10'); // 根据部门查询人员统计
r($company->getUsersTest($count[0], $browseType[0], $type[0], $queryID[1], $deptID[0], $sort[0])) && p('0:account,realname') && e('program1whitelist,项目集1白名单用户'); // 根据查询条件查询
r($company->getUsersTest($count[1], $browseType[0], $type[0], $queryID[1], $deptID[0], $sort[0])) && p() && e('1'); // 根据查询条件'查询统计
r($company->getUsersTest($count[0], $browseType[0], $type[0], $queryID[0], $deptID[0], $sort[1])) && p('0:account,realname') && e('program1whitelist,项目集1白名单用户'); // 根据account降序排序
+42
View File
@@ -0,0 +1,42 @@
#!/usr/bin/env php
<?php
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
include dirname(dirname(dirname(__FILE__))) . '/class/company.class.php';
su('admin');
/**
title=测试companyModel->update();
cid=1
pid=1
修改公司名称 >> 修改公司名一
修改公司电话 >> 18640561601
修改公司地址 >> 地址信息
修改公司邮编 >> 710000
修改公司网址 >> www.baidu.com
修改公司网址前缀 >> https://
修改公司游客访问控制 >> 1
*/
$companyID = 1;
$changeName = array('name' => '修改公司名一');
$changePhone = array('phone' => '18640561601');
$changeAddress = array('address' => '地址信息');
$changeZipcode = array('zipcode' =>'710000');
$changeWebsite = array('website' => 'www.baidu.com');
$changeBackyard = array('backyard' => 'https://');
$changeGuest = array('guest' => '1');
$company = new companyTest();
r($company->updateObject($companyID, $changeName)) && p('name') && e('修改公司名一'); // 修改公司名称
r($company->updateObject($companyID, $changePhone)) && p('phone') && e('18640561601'); // 修改公司电话
r($company->updateObject($companyID, $changeAddress)) && p('address') && e('地址信息'); // 修改公司地址
r($company->updateObject($companyID, $changeZipcode)) && p('zipcode') && e('710000'); // 修改公司邮编
r($company->updateObject($companyID, $changeWebsite)) && p('website') && e('www.baidu.com'); // 修改公司网址
r($company->updateObject($companyID, $changeBackyard)) && p('backyard') && e('https://'); // 修改公司网址前缀
r($company->updateObject($companyID, $changeGuest)) && p('guest') && e('1'); // 修改公司游客访问控制
system("./ztest init");
+3
View File
@@ -40,6 +40,9 @@ switch($argv[1])
case 'bug':
ztfRun('model/bug');
break;
case 'company':
ztfRun('model/company');
break;
case 'model':
ztfRun('model');
break;