+ [misc] Add unit tests for myTao::fetchRequirementsBySearch() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -795,4 +795,27 @@ class myTest
|
||||
|
||||
return count($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test fetchRequirementsBySearch method.
|
||||
*
|
||||
* @param string $myRequirementQuery
|
||||
* @param string $type
|
||||
* @param string $orderBy
|
||||
* @param object $pager
|
||||
* @param array $requirementIDList
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function fetchRequirementsBySearchTest(string $myRequirementQuery, string $type, string $orderBy, ?object $pager = null, array $requirementIDList = array())
|
||||
{
|
||||
$reflection = new ReflectionClass($this->objectTao);
|
||||
$method = $reflection->getMethod('fetchRequirementsBySearch');
|
||||
$method->setAccessible(true);
|
||||
|
||||
$result = $method->invokeArgs($this->objectTao, [$myRequirementQuery, $type, $orderBy, $pager, $requirementIDList]);
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return count($result);
|
||||
}
|
||||
}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 myTao::fetchRequirementsBySearch();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 执行myTest模块的fetchRequirementsBySearchTest方法,参数是"t1.deleted = '0'", 'contribute', 'id_desc', null, array @3
|
||||
- 执行myTest模块的fetchRequirementsBySearchTest方法,参数是"t1.deleted = '0'", 'assigned', 'id_desc', null, array @3
|
||||
- 执行myTest模块的fetchRequirementsBySearchTest方法,参数是"1 = 1", 'contribute', 'id_desc', null, array @3
|
||||
- 执行myTest模块的fetchRequirementsBySearchTest方法,参数是"t1.deleted = '0'", 'contribute', 'id_desc', null, array @4
|
||||
- 执行myTest模块的fetchRequirementsBySearchTest方法,参数是"t1.deleted = '0'", 'contribute', 'priOrder_desc', null, array @3
|
||||
|
||||
*/
|
||||
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/my.unittest.class.php';
|
||||
|
||||
zenData('story')->loadYaml('story_fetchrequirementsbysearch', false, 2)->gen(10);
|
||||
zenData('product')->loadYaml('product_fetchrequirementsbysearch', false, 2)->gen(3);
|
||||
zenData('storyreview')->loadYaml('storyreview_fetchrequirementsbysearch', false, 2)->gen(10);
|
||||
|
||||
su('admin');
|
||||
|
||||
$myTest = new myTest();
|
||||
|
||||
r($myTest->fetchRequirementsBySearchTest("t1.deleted = '0'", 'contribute', 'id_desc', null, array())) && p() && e(3);
|
||||
r($myTest->fetchRequirementsBySearchTest("t1.deleted = '0'", 'assigned', 'id_desc', null, array())) && p() && e(3);
|
||||
r($myTest->fetchRequirementsBySearchTest("1 = 1", 'contribute', 'id_desc', null, array())) && p() && e(3);
|
||||
r($myTest->fetchRequirementsBySearchTest("t1.deleted = '0'", 'contribute', 'id_desc', null, array(1, 2, 3))) && p() && e(4);
|
||||
r($myTest->fetchRequirementsBySearchTest("t1.deleted = '0'", 'contribute', 'priOrder_desc', null, array())) && p() && e(3);
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
title: 产品数据
|
||||
desc: fetchRequirementsBySearch测试的产品数据
|
||||
author: Claude Code
|
||||
version: "1.0"
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
range: 1-3
|
||||
|
||||
- field: name
|
||||
range: '产品A,产品B,产品C'
|
||||
|
||||
- field: code
|
||||
range: 'PROD-A,PROD-B,PROD-C'
|
||||
|
||||
- field: type
|
||||
range: normal{3}
|
||||
|
||||
- field: status
|
||||
range: normal{3}
|
||||
|
||||
- field: deleted
|
||||
range: 0{3}
|
||||
@@ -0,0 +1,66 @@
|
||||
---
|
||||
title: 用户需求数据
|
||||
desc: fetchRequirementsBySearch测试的用户需求数据
|
||||
author: Claude Code
|
||||
version: "1.0"
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
range: 1-10
|
||||
|
||||
- field: vision
|
||||
range: rnd{10}
|
||||
|
||||
- field: parent
|
||||
range: 0{10}
|
||||
|
||||
- field: isParent
|
||||
range: 0{10}
|
||||
|
||||
- field: root
|
||||
range: 0{10}
|
||||
|
||||
- field: product
|
||||
range: 1-3
|
||||
|
||||
- field: branch
|
||||
range: 0{10}
|
||||
|
||||
- field: module
|
||||
range: 0{10}
|
||||
|
||||
- field: title
|
||||
range: '用户需求{1-10}'
|
||||
|
||||
- field: type
|
||||
range: requirement{10}
|
||||
|
||||
- field: category
|
||||
range: feature{10}
|
||||
|
||||
- field: pri
|
||||
range: 1-4
|
||||
|
||||
- field: estimate
|
||||
range: 1-10
|
||||
|
||||
- field: status
|
||||
range: active{3},reviewing{2},draft{2},closed{3}
|
||||
|
||||
- field: assignedTo
|
||||
range: admin{3},user1{3},user2{3},user3{1}
|
||||
|
||||
- field: openedBy
|
||||
range: admin{4},user1{3},user2{3}
|
||||
|
||||
- field: openedDate
|
||||
range: '2024-01-01 10:00:00{5},2024-02-01 10:00:00{5}'
|
||||
|
||||
- field: closedBy
|
||||
range: ''{7},admin{2},user1{1}
|
||||
|
||||
- field: closedDate
|
||||
range: '0000-00-00 00:00:00'{7},'2024-03-01 10:00:00'{3}
|
||||
|
||||
- field: deleted
|
||||
range: 0{10}
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: 需求评审数据
|
||||
desc: fetchRequirementsBySearch测试的评审数据
|
||||
author: Claude Code
|
||||
version: "1.0"
|
||||
|
||||
fields:
|
||||
- field: story
|
||||
range: 1-10
|
||||
|
||||
- field: version
|
||||
range: 1{10}
|
||||
|
||||
- field: reviewer
|
||||
range: admin{4},user1{3},user2{3}
|
||||
|
||||
- field: result
|
||||
range: ''{8},pass{2}
|
||||
|
||||
- field: reviewDate
|
||||
range: '0000-00-00 00:00:00'{8},'2024-01-15 10:00:00'{2}
|
||||
Reference in New Issue
Block a user