diff --git a/module/screen/test/lib/screen.unittest.class.php b/module/screen/test/lib/screen.unittest.class.php index 789a74ca19..0e0b6ca397 100755 --- a/module/screen/test/lib/screen.unittest.class.php +++ b/module/screen/test/lib/screen.unittest.class.php @@ -1471,4 +1471,34 @@ class screenTest ); } + /** + * Test commonAction method. + * + * @param int $dimensionID + * @param bool $setMenu + * @access public + * @return mixed + */ + public function commonActionTest($dimensionID, $setMenu = true) + { + global $tester; + + // 包含model.php和zen.php文件 + include_once dirname(__FILE__, 3) . '/model.php'; + include_once dirname(__FILE__, 3) . '/zen.php'; + + // 创建zen对象并调用方法 + $screenZen = new screenZen(); + + // 使用反射调用protected方法 + $reflection = new ReflectionClass($screenZen); + $method = $reflection->getMethod('commonAction'); + $method->setAccessible(true); + + $result = $method->invokeArgs($screenZen, array($dimensionID, $setMenu)); + if(dao::isError()) return dao::getError(); + + return $result; + } + } diff --git a/module/screen/test/zen/commonaction.php b/module/screen/test/zen/commonaction.php new file mode 100755 index 0000000000..4886bc159f --- /dev/null +++ b/module/screen/test/zen/commonaction.php @@ -0,0 +1,29 @@ +#!/usr/bin/env php +commonActionTest(1)) && p() && e('1'); +r($screenTest->commonActionTest(0)) && p() && e('1'); +r($screenTest->commonActionTest(-1)) && p() && e('1'); +r($screenTest->commonActionTest(1, false)) && p() && e('1'); +r($screenTest->commonActionTest(999)) && p() && e('1'); \ No newline at end of file diff --git a/module/screen/zen.php b/module/screen/zen.php index 65309b6e4a..a4a15f4ccf 100644 --- a/module/screen/zen.php +++ b/module/screen/zen.php @@ -1,5 +1,5 @@