From ee3f8b49706c446db80d96d2d9ba5369e41aeba6 Mon Sep 17 00:00:00 2001 From: liugang Date: Tue, 23 Sep 2025 11:03:48 +0800 Subject: [PATCH] * [misc] Enhance unit tests for repoModel::getImportedProjects() method MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../repo/test/model/getimportedprojects.php | 49 ++++++++++++++----- 1 file changed, 38 insertions(+), 11 deletions(-) diff --git a/module/repo/test/model/getimportedprojects.php b/module/repo/test/model/getimportedprojects.php index cd70b9c746..daa20f6a5f 100755 --- a/module/repo/test/model/getimportedprojects.php +++ b/module/repo/test/model/getimportedprojects.php @@ -1,23 +1,50 @@ #!/usr/bin/env php getImportedProjects(); +title=测试 repoModel::getImportedProjects(); timeout=0 -cid=1 +cid=0 -- 查询已关联的版本库服务器ID为1的版本库列表属性1 @1 -- 查询未关联的版本库服务器ID为2的版本库列表,结果应该为空属性1 @0 +- 期望返回3个项目 @3 +- 期望返回空数组 @0 +- 期望返回空数组 @0 +- 期望返回空数组 @0 +- 期望返回空数组 @0 */ -zenData('repo')->loadYaml('repo')->gen(4); +include dirname(__FILE__, 5) . '/test/lib/init.php'; +include dirname(__FILE__, 2) . '/lib/repo.unittest.class.php'; -$repo = $tester->loadModel('repo'); +// 准备测试数据 +$table = zenData('repo'); +$table->id->range('1-10'); +$table->product->range('1,2,1,2,1'); +$table->name->range('repo1,repo2,repo3,repo4,repo5'); +$table->serviceHost->range('1,1,2,3,1'); +$table->serviceProject->range('100,200,300,400,500'); +$table->deleted->range('0'); +$table->gen(5); -r($repo->getImportedProjects(1)) && p('1') && e('1'); // 查询已关联的版本库服务器ID为1的版本库列表 -r($repo->getImportedProjects(2)) && p('1') && e('0'); // 查询未关联的版本库服务器ID为2的版本库列表,结果应该为空 \ No newline at end of file +// 用户登录 +su('admin'); + +// 创建测试实例 +$repoTest = new repoTest(); + +// 测试步骤1:正常查询存在版本库的服务器ID为1 +r(count($repoTest->getImportedProjectsTest(1))) && p() && e('3'); // 期望返回3个项目 + +// 测试步骤2:查询不存在版本库的服务器ID +r(count($repoTest->getImportedProjectsTest(999))) && p() && e('0'); // 期望返回空数组 + +// 测试步骤3:边界值测试服务器ID为0 +r(count($repoTest->getImportedProjectsTest(0))) && p() && e('0'); // 期望返回空数组 + +// 测试步骤4:负数服务器ID测试 +r(count($repoTest->getImportedProjectsTest(-1))) && p() && e('0'); // 期望返回空数组 + +// 测试步骤5:超大服务器ID测试 +r(count($repoTest->getImportedProjectsTest(999999))) && p() && e('0'); // 期望返回空数组 \ No newline at end of file