+ [misc] Add unit tests for releaseModel::updateRelated() method

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
liugang
2025-09-15 15:06:21 +08:00
co-authored by Claude
parent aab57a2f7e
commit a3a833a28e
3 changed files with 81 additions and 0 deletions
@@ -528,4 +528,21 @@ class releaseTest
return array('error' => $e->getMessage());
}
}
/**
* Test updateRelated method.
*
* @param int $releaseID
* @param string $objectType
* @param int|string|array $objectIdList
* @access public
* @return mixed
*/
public function updateRelatedTest(int $releaseID, string $objectType, int|string|array $objectIdList): mixed
{
$result = $this->objectModel->updateRelated($releaseID, $objectType, $objectIdList);
if(dao::isError()) return dao::getError();
return $result;
}
}
+41
View File
@@ -0,0 +1,41 @@
#!/usr/bin/env php
<?php
/**
title=测试 releaseModel::updateRelated();
timeout=0
cid=0
- 步骤1:整数ID输入 @rue
- 步骤2:字符串ID列表输入 @rue
- 步骤3:数组ID列表输入 @rue
- 步骤4:空值输入 @alse
- 步骤5:无效对象类型 @rue
- 步骤6:重复ID处理 @rue
- 步骤7:混合格式处理 @rue
*/
// 1. 导入依赖
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/release.unittest.class.php';
// 2. zendata数据准备(根据需要配置)
zenData('release')->gen(0);
zenData('releaserelated')->gen(0);
// 3. 用户登录
su('admin');
// 4. 创建测试实例
$releaseTest = new releaseTest();
// 5. 执行测试步骤
r($releaseTest->updateRelatedTest(1, 'story', 101)) && p() && e(true); // 步骤1:整数ID输入
r($releaseTest->updateRelatedTest(2, 'bug', '201,202,203')) && p() && e(true); // 步骤2:字符串ID列表输入
r($releaseTest->updateRelatedTest(3, 'project', array(301, 302, 303))) && p() && e(true); // 步骤3:数组ID列表输入
r($releaseTest->updateRelatedTest(4, 'story', '')) && p() && e(false); // 步骤4:空值输入
r($releaseTest->updateRelatedTest(5, 'invalidtype', 501)) && p() && e(true); // 步骤5:无效对象类型
r($releaseTest->updateRelatedTest(1, 'build', '601,601,602,602')) && p() && e(true); // 步骤6:重复ID处理
r($releaseTest->updateRelatedTest(2, 'story', '701,702,703')) && p() && e(true); // 步骤7:混合格式处理
@@ -0,0 +1,23 @@
---
title: 发布关联数据测试
desc: 用于updateRelated方法的测试数据定义
author: Claude
version: 1.0
fields:
- field: id
note: 关联记录ID
range: 1-100
format: ""
- field: release
note: 发布ID
range: 1-10
- field: objectID
note: 关联对象ID
range: 1-1000
- field: objectType
note: 关联对象类型
range: story{5}, bug{5}, project{3}, build{3}, branch{2}, release{1}, leftBug{1}