+ [misc] Add unit tests for bugZen::processRepoIssueActions() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -4423,4 +4423,34 @@ class bugTest
|
||||
|
||||
return $chartOption;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test processRepoIssueActions method.
|
||||
*
|
||||
* @param int $repoID
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function processRepoIssueActionsTest($repoID = null)
|
||||
{
|
||||
try {
|
||||
// 使用反射调用受保护的方法
|
||||
$zenClass = initReference('bug');
|
||||
$method = $zenClass->getMethod('processRepoIssueActions');
|
||||
$zenInstance = $zenClass->newInstance();
|
||||
|
||||
$result = $method->invokeArgs($zenInstance, array($repoID));
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
// 返回相关配置以供断言
|
||||
return array(
|
||||
'repoID' => $zenInstance->view->repoID ?? null,
|
||||
'mainActions' => $zenInstance->config->bug->actions->view['mainActions'] ?? null,
|
||||
'suffixActions' => $zenInstance->config->bug->actions->view['suffixActions'] ?? null
|
||||
);
|
||||
} catch (Exception $e) {
|
||||
return array('error' => $e->getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 bugZen::processRepoIssueActions();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 步骤1:正常仓库ID属性repoID @1
|
||||
- 步骤2:边界值0属性repoID @0
|
||||
- 步骤3:负数ID属性repoID @-1
|
||||
- 步骤4:验证主要操作
|
||||
- 第mainActions条的0属性 @confirm
|
||||
- 第mainActions条的1属性 @assignTo
|
||||
- 第mainActions条的2属性 @resolve
|
||||
- 第mainActions条的3属性 @close
|
||||
- 第mainActions条的4属性 @activate
|
||||
- 步骤5:验证后缀操作第suffixActions条的0属性 @delete
|
||||
|
||||
*/
|
||||
|
||||
// 1. 导入依赖
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/bug.unittest.class.php';
|
||||
|
||||
// 2. 用户登录
|
||||
su('admin');
|
||||
|
||||
// 3. 创建测试实例
|
||||
$bugTest = new bugTest();
|
||||
|
||||
// 4. 执行测试步骤
|
||||
r($bugTest->processRepoIssueActionsTest(1)) && p('repoID') && e('1'); // 步骤1:正常仓库ID
|
||||
r($bugTest->processRepoIssueActionsTest(0)) && p('repoID') && e('0'); // 步骤2:边界值0
|
||||
r($bugTest->processRepoIssueActionsTest(-1)) && p('repoID') && e('-1'); // 步骤3:负数ID
|
||||
r($bugTest->processRepoIssueActionsTest(100)) && p('mainActions:0,1,2,3,4') && e('confirm,assignTo,resolve,close,activate'); // 步骤4:验证主要操作
|
||||
r($bugTest->processRepoIssueActionsTest(200)) && p('suffixActions:0') && e('delete'); // 步骤5:验证后缀操作
|
||||
Reference in New Issue
Block a user