Files
EasySoft-ZenTaoPMS/module/ai/test/model/isclickable.php
T
2025-09-15 15:06:07 +08:00

52 lines
2.6 KiB
PHP
Executable File

#!/usr/bin/env php
<?php
/**
title=测试 aiModel::isClickable();
timeout=0
cid=0
- 步骤1:正常情况,模型启用动作,对象disabled状态 @1
- 步骤2:边界值,模型启用动作,对象已enabled状态 @0
- 步骤3:异常输入,空对象和空动作 @0
- 步骤4:权限验证,助手发布动作,对象disabled状态 @1
- 步骤5:业务规则,助手撤回动作,对象enabled状态 @1
- 步骤6:助手发布动作,对象已enabled状态 @0
- 步骤7:助手撤回动作,对象已disabled状态 @0
- 步骤8:助手编辑动作,对象已enabled状态 @0
- 步骤9:助手编辑动作,对象disabled状态 @1
- 步骤10:未知动作,返回默认true @1
*/
// 1. 导入依赖(路径固定,不可修改)
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/ai.unittest.class.php';
// 2. 用户登录(选择合适角色)
su('admin');
// 3. 创建测试实例(变量名与模块名一致)
$aiTest = new aiTest();
// 4. 准备测试对象数据
$enabledObject = new stdClass();
$enabledObject->enabled = '1';
$disabledObject = new stdClass();
$disabledObject->enabled = '0';
$emptyObject = null;
// 5. 强制要求:必须包含至少5个测试步骤
r($aiTest->isClickableTest($disabledObject, 'modelenable')) && p() && e('1'); // 步骤1:正常情况,模型启用动作,对象disabled状态
r($aiTest->isClickableTest($enabledObject, 'modelenable')) && p() && e('0'); // 步骤2:边界值,模型启用动作,对象已enabled状态
r($aiTest->isClickableTest($emptyObject, '')) && p() && e('0'); // 步骤3:异常输入,空对象和空动作
r($aiTest->isClickableTest($disabledObject, 'assistantpublish')) && p() && e('1'); // 步骤4:权限验证,助手发布动作,对象disabled状态
r($aiTest->isClickableTest($enabledObject, 'assistantwithdraw')) && p() && e('1'); // 步骤5:业务规则,助手撤回动作,对象enabled状态
r($aiTest->isClickableTest($enabledObject, 'assistantpublish')) && p() && e('0'); // 步骤6:助手发布动作,对象已enabled状态
r($aiTest->isClickableTest($disabledObject, 'assistantwithdraw')) && p() && e('0'); // 步骤7:助手撤回动作,对象已disabled状态
r($aiTest->isClickableTest($enabledObject, 'assistantedit')) && p() && e('0'); // 步骤8:助手编辑动作,对象已enabled状态
r($aiTest->isClickableTest($disabledObject, 'assistantedit')) && p() && e('1'); // 步骤9:助手编辑动作,对象disabled状态
r($aiTest->isClickableTest($enabledObject, 'unknownaction')) && p() && e('1'); // 步骤10:未知动作,返回默认true