* Fix bug of get projects, and modify its unit test.

This commit is contained in:
liumengyi
2023-12-25 08:49:41 +08:00
parent 60c7f2e1ed
commit 376f0eb422
2 changed files with 26 additions and 13 deletions
+1 -1
View File
@@ -781,7 +781,7 @@ class projectTao extends projectModel
->beginIF($status == 'undone')->andWhere('status')->notIN('done,closed')->fi()
->beginIF($status == 'unclosed')->andWhere('status')->ne('closed')->fi()
->beginIF($status && !in_array($status, array('all', 'undone', 'unclosed')))->andWhere('status')->eq($status)->fi()
->beginIF($projectID)->orWhere('id')->eq($projectID)->fi()
->beginIF($projectID)->andWhere('id')->eq($projectID)->fi()
->orderBy($orderBy)
->beginIF($limit)->limit($limit)->fi()
->fetchAll('id');
@@ -1,5 +1,26 @@
#!/usr/bin/env php
<?php
/**
title=测试 projectModel::fetchProjectListByQuery($status, $projectID, $orderBy);
cid=1
- 获取未开始的项目数量 @3
- 获取状态不为done和closed的项目数量 @7
- 根据项目ID获取项目 @1
- 获取不存在的项目 @0
- 根据 不匹配的项目ID和状态 获取项目数量 @0
- 根据 匹配的项目ID和状态 获取项目数量 @1
- 按照ID正序获取项目列表,查看排第一个的项目详情
- 属性id @11
- 属性name @项目11
- 按照项目名称倒序获取项目列表,查看排第一个的项目详情
- 属性id @19
- 属性name @项目19
*/
include dirname(__FILE__, 5) . "/test/lib/init.php";
include dirname(__FILE__, 2) . "/project.class.php";
@@ -37,24 +58,16 @@ $stakeholder->gen(9);
su('admin');
/**
title=测试 projectModel::fetchProjectListByQuery($status, $projectID, $orderBy);
timeout=0
cid=1
*/
$projectTester = new Project();
r(count($projectTester->testFetchProjectListByQuery('wait'))) && p() && e('3'); // 获取未开始的项目数量
r(count($projectTester->testFetchProjectListByQuery('undone'))) && p() && e('7'); // 获取状态不为done和closed的项目数量
r(count($projectTester->testFetchProjectListByQuery('', 11))) && p() && e('9'); // 根据项目ID获取项目
r(count($projectTester->testFetchProjectListByQuery('', 10000))) && p() && e('9'); // 获取不存在的项目
r(count($projectTester->testFetchProjectListByQuery('', 11))) && p() && e('1'); // 根据项目ID获取项目
r(count($projectTester->testFetchProjectListByQuery('', 10000))) && p() && e('0'); // 获取不存在的项目
r(count($projectTester->testFetchProjectListByQuery('doing', 11))) && p() && e('3'); // 根据 不匹配的项目ID和状态 获取项目数量
r(count($projectTester->testFetchProjectListByQuery('doing', 12))) && p() && e('2'); // 根据 匹配的项目ID和状态 获取项目数量
r(count($projectTester->testFetchProjectListByQuery('doing', 11))) && p() && e('0'); // 根据 不匹配的项目ID和状态 获取项目数量
r(count($projectTester->testFetchProjectListByQuery('doing', 12))) && p() && e('1'); // 根据 匹配的项目ID和状态 获取项目数量
r(current($projectTester->testFetchProjectListByQuery('all', 0, 'id_asc'))) && p('id,name') && e('11,项目11'); // 按照ID正序获取项目列表,查看排第一个的项目详情
r(current($projectTester->testFetchProjectListByQuery('all', 0, 'name_desc'))) && p('id,name') && e('19,项目19'); // 按照项目名称倒序获取项目列表,查看排第一个的项目详情