+ [misc] Add unit tests for commonModel::sortFeatureMenu() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1005,6 +1005,52 @@ class commonTest
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test sortFeatureMenu method.
|
||||
*
|
||||
* @param int $testCase
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function sortFeatureMenuTest($testCase = 1)
|
||||
{
|
||||
switch($testCase) {
|
||||
case 1: // 验证方法存在性
|
||||
return method_exists('commonModel', 'sortFeatureMenu') ? '1' : '0';
|
||||
|
||||
case 2: // 验证方法为静态方法
|
||||
$reflection = new ReflectionMethod('commonModel', 'sortFeatureMenu');
|
||||
return $reflection->isStatic() ? '1' : '0';
|
||||
|
||||
case 3: // 验证返回类型为bool
|
||||
$reflection = new ReflectionMethod('commonModel', 'sortFeatureMenu');
|
||||
$returnType = $reflection->getReturnType();
|
||||
return ($returnType && $returnType->getName() === 'bool') ? '1' : '0';
|
||||
|
||||
case 4: // 验证参数数量
|
||||
$reflection = new ReflectionMethod('commonModel', 'sortFeatureMenu');
|
||||
return (string)$reflection->getNumberOfParameters();
|
||||
|
||||
case 5: // 验证方法为公共可访问
|
||||
$reflection = new ReflectionMethod('commonModel', 'sortFeatureMenu');
|
||||
return $reflection->isPublic() ? '1' : '0';
|
||||
|
||||
case 6: // 验证参数类型
|
||||
$reflection = new ReflectionMethod('commonModel', 'sortFeatureMenu');
|
||||
$parameters = $reflection->getParameters();
|
||||
if(count($parameters) >= 1) {
|
||||
$firstParam = $parameters[0];
|
||||
$paramType = $firstParam->getType();
|
||||
return ($paramType && $paramType->getName() === 'string') ? '1' : '0';
|
||||
} else {
|
||||
return '0';
|
||||
}
|
||||
|
||||
default:
|
||||
return '0';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Create mock common class for tutorial mode testing.
|
||||
*
|
||||
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 commonModel::sortFeatureMenu();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 执行commonTest模块的sortFeatureMenuTest方法,参数是1 @1
|
||||
- 执行commonTest模块的sortFeatureMenuTest方法,参数是2 @1
|
||||
- 执行commonTest模块的sortFeatureMenuTest方法,参数是3 @1
|
||||
- 执行commonTest模块的sortFeatureMenuTest方法,参数是4 @2
|
||||
- 执行commonTest模块的sortFeatureMenuTest方法,参数是5 @1
|
||||
|
||||
*/
|
||||
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/common.unittest.class.php';
|
||||
|
||||
su('admin');
|
||||
|
||||
$commonTest = new commonTest();
|
||||
|
||||
r($commonTest->sortFeatureMenuTest(1)) && p() && e('1');
|
||||
r($commonTest->sortFeatureMenuTest(2)) && p() && e('1');
|
||||
r($commonTest->sortFeatureMenuTest(3)) && p() && e('1');
|
||||
r($commonTest->sortFeatureMenuTest(4)) && p() && e('2');
|
||||
r($commonTest->sortFeatureMenuTest(5)) && p() && e('1');
|
||||
Reference in New Issue
Block a user