+ [misc] Add unit tests for convertTao::buildProjectRoleActorData() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1946,4 +1946,30 @@ class convertTest
|
||||
return 'error: ' . $e->getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test buildProjectRoleActorData method.
|
||||
*
|
||||
* @param array $data
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function buildProjectRoleActorDataTest($data = array())
|
||||
{
|
||||
try {
|
||||
// 使用反射来访问protected方法
|
||||
$reflection = new ReflectionClass($this->objectTao);
|
||||
$method = $reflection->getMethod('buildProjectRoleActorData');
|
||||
$method->setAccessible(true);
|
||||
|
||||
$result = $method->invoke($this->objectTao, $data);
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $result;
|
||||
} catch (Exception $e) {
|
||||
return 'exception: ' . $e->getMessage();
|
||||
} catch (Error $e) {
|
||||
return 'error: ' . $e->getMessage();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 convertTao::buildProjectRoleActorData();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 步骤1:完整数据输入所有字段属性id @1001
|
||||
- 步骤2:缺少pid字段默认值属性pid @~~
|
||||
- 步骤3:包含pid字段值设置属性pid @P001
|
||||
- 步骤4:角色类型字段验证属性roletype @unknown-role
|
||||
- 步骤5:角色参数字段验证属性roletypeparameter @manager
|
||||
|
||||
*/
|
||||
|
||||
// 1. 导入依赖(路径固定,不可修改)
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/convert.unittest.class.php';
|
||||
|
||||
// 2. 用户登录(选择合适角色)
|
||||
su('admin');
|
||||
|
||||
// 3. 创建测试实例(变量名与模块名一致)
|
||||
$convertTest = new convertTest();
|
||||
|
||||
// 4. 强制要求:必须包含至少5个测试步骤
|
||||
r($convertTest->buildProjectRoleActorDataTest(array('id' => 1001, 'pid' => '2001', 'roletype' => 'atlassian-user-role-actor', 'roletypeparameter' => 'admin'))) && p('id') && e('1001'); // 步骤1:完整数据输入所有字段
|
||||
r($convertTest->buildProjectRoleActorDataTest(array('id' => 1002, 'roletype' => 'atlassian-group-role-actor', 'roletypeparameter' => 'developers'))) && p('pid') && e('~~'); // 步骤2:缺少pid字段默认值
|
||||
r($convertTest->buildProjectRoleActorDataTest(array('id' => 1003, 'pid' => 'P001', 'roletype' => 'atlassian-user-role-actor', 'roletypeparameter' => 'testuser'))) && p('pid') && e('P001'); // 步骤3:包含pid字段值设置
|
||||
r($convertTest->buildProjectRoleActorDataTest(array('id' => 1004, 'roletype' => 'unknown-role', 'roletypeparameter' => 'guest'))) && p('roletype') && e('unknown-role'); // 步骤4:角色类型字段验证
|
||||
r($convertTest->buildProjectRoleActorDataTest(array('id' => 1005, 'pid' => '', 'roletype' => 'custom-role-actor', 'roletypeparameter' => 'manager'))) && p('roletypeparameter') && e('manager'); // 步骤5:角色参数字段验证
|
||||
Reference in New Issue
Block a user