+ [misc] Add unit tests for markModel::isMark() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -42,4 +42,22 @@ class markTest
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test isMark method.
|
||||
*
|
||||
* @param string $objectType
|
||||
* @param int $objectID
|
||||
* @param string $version
|
||||
* @param string $mark
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function isMarkTest(string $objectType, int $objectID, string $version, string $mark = 'view')
|
||||
{
|
||||
$result = $this->objectModel->isMark($objectType, $objectID, $version, $mark);
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 markModel::isMark();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 步骤1:查询存在的标记记录第0条的objectID属性 @1
|
||||
- 步骤2:查询不存在的对象ID @0
|
||||
- 步骤3:查询不存在的对象类型 @0
|
||||
- 步骤4:查询不存在的版本 @0
|
||||
- 步骤5:查询不同的标记类型 @0
|
||||
|
||||
*/
|
||||
|
||||
// 1. 导入依赖(路径固定,不可修改)
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/mark.unittest.class.php';
|
||||
|
||||
// 2. zendata数据准备(根据需要配置)
|
||||
$table = zenData('mark');
|
||||
$table->objectType->range('story,task,bug');
|
||||
$table->objectID->range('1-10');
|
||||
$table->version->range('1.0,1.1,2.0');
|
||||
$table->account->range('admin,user1,user2');
|
||||
$table->mark->range('view,edit,delete');
|
||||
$table->extra->range('');
|
||||
$table->gen(20);
|
||||
|
||||
// 3. 用户登录(选择合适角色)
|
||||
su('admin');
|
||||
|
||||
// 4. 创建测试实例(变量名与模块名一致)
|
||||
$markTest = new markTest();
|
||||
|
||||
// 5. 强制要求:必须包含至少5个测试步骤
|
||||
r($markTest->isMarkTest('story', 1, '1.0', 'view')) && p('0:objectID') && e('1'); // 步骤1:查询存在的标记记录
|
||||
r($markTest->isMarkTest('story', 999, '1.0', 'view')) && p() && e('0'); // 步骤2:查询不存在的对象ID
|
||||
r($markTest->isMarkTest('nonexistent', 1, '1.0', 'view')) && p() && e('0'); // 步骤3:查询不存在的对象类型
|
||||
r($markTest->isMarkTest('story', 1, '9.9', 'view')) && p() && e('0'); // 步骤4:查询不存在的版本
|
||||
r($markTest->isMarkTest('story', 1, '1.0', 'edit')) && p() && e('0'); // 步骤5:查询不同的标记类型
|
||||
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: isMark方法测试数据
|
||||
desc: 用于测试markModel::isMark()方法的测试数据配置
|
||||
author: Claude Code
|
||||
version: 1.0
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: 标记ID
|
||||
range: 1-20
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: objectType
|
||||
note: 对象类型
|
||||
range: story{7},task{7},bug{6}
|
||||
- field: objectID
|
||||
note: 对象ID
|
||||
range: 1-10
|
||||
- field: version
|
||||
note: 版本号
|
||||
range: 1.0{8},1.1{6},2.0{6}
|
||||
- field: account
|
||||
note: 用户账号
|
||||
range: admin{10},user1{5},user2{5}
|
||||
- field: mark
|
||||
note: 标记类型
|
||||
range: view{12},edit{4},delete{4}
|
||||
- field: extra
|
||||
note: 扩展字段
|
||||
range: []{20}
|
||||
- field: date
|
||||
note: 创建时间
|
||||
range: (-1M)-(w):1D
|
||||
format: YYYY-MM-DD hh:mm:ss
|
||||
Reference in New Issue
Block a user