+ [misc] Add unit tests for companyZen::saveUriIntoSession() method

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
liugang
2025-11-12 08:25:40 +08:00
co-authored by Claude
parent 73fc0f061b
commit 7b4d7339c6
2 changed files with 53 additions and 0 deletions
+17
View File
@@ -93,4 +93,21 @@ class companyZenTest extends baseTest
if(dao::isError()) return dao::getError();
return $result;
}
/**
* Test saveUriIntoSession method.
*
* @param string $testUri
* @access public
* @return bool
*/
public function saveUriIntoSessionTest(string $testUri = ''): bool
{
if($testUri) $this->instance->app->uri = $testUri;
$this->invokeArgs('saveUriIntoSession', []);
if(dao::isError()) return false;
return true;
}
}
+36
View File
@@ -0,0 +1,36 @@
#!/usr/bin/env php
<?php
/**
title=测试 companyZen::saveUriIntoSession();
timeout=0
cid=0
- 步骤1:不设置URI时调用方法成功 @1
- 步骤2:设置URI为/product时调用方法成功 @1
- 步骤3:设置URI为/project时调用方法成功 @1
- 步骤4:设置URI为/task时调用方法成功 @1
- 步骤5:设置URI为/bug时调用方法成功 @1
*/
// 1. 导入依赖(路径固定,不可修改)
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/zen.class.php';
// 2. zendata数据准备
zenData('user')->gen(10);
// 3. 用户登录(选择合适角色)
su('admin');
// 4. 创建测试实例(变量名与模块名一致)
$companyTest = new companyZenTest();
// 5. 强制要求:必须包含至少5个测试步骤
r($companyTest->saveUriIntoSessionTest('')) && p() && e('1'); // 步骤1:不设置URI时调用方法成功
r($companyTest->saveUriIntoSessionTest('/product-browse-1.html')) && p() && e('1'); // 步骤2:设置URI为/product时调用方法成功
r($companyTest->saveUriIntoSessionTest('/project-browse-1.html')) && p() && e('1'); // 步骤3:设置URI为/project时调用方法成功
r($companyTest->saveUriIntoSessionTest('/task-browse-1.html')) && p() && e('1'); // 步骤4:设置URI为/task时调用方法成功
r($companyTest->saveUriIntoSessionTest('/bug-browse-1.html')) && p() && e('1'); // 步骤5:设置URI为/bug时调用方法成功