+ [misc] Add unit tests for aiModel::getLatestMiniPrograms() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -512,4 +512,20 @@ class aiTest
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test getLatestMiniPrograms method.
|
||||
*
|
||||
* @param object $pager
|
||||
* @param string $order
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function getLatestMiniProgramsTest($pager = null, $order = 'publishedDate_desc')
|
||||
{
|
||||
$result = $this->objectModel->getLatestMiniPrograms($pager, $order);
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 aiModel::getLatestMiniPrograms();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 步骤1:正常情况,返回10条符合条件的记录 @10
|
||||
- 步骤2:不同排序方式,按名称升序 @10
|
||||
- 步骤3:按ID倒序查询 @10
|
||||
- 步骤4:验证返回的都是已发布的小程序第4条的published属性 @1
|
||||
- 步骤5:验证返回的都是未删除的小程序第5条的deleted属性 @0
|
||||
|
||||
*/
|
||||
|
||||
// 1. 导入依赖(路径固定,不可修改)
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/ai.unittest.class.php';
|
||||
|
||||
// 2. zendata数据准备(根据需要配置)
|
||||
$table = zenData('ai_miniprogram');
|
||||
$table->id->range('1-15');
|
||||
$table->name->range('Career Guide,Writing Helper,Code Generator,Translator,Study Plan,Project Manager');
|
||||
$table->category->range('personal,work,development');
|
||||
$table->desc->range('AI miniprogram description,Helps improve work efficiency,Provides intelligent services');
|
||||
$table->model->range('1-3');
|
||||
$table->icon->range('writinghand-7,technologist-6,coding-1,translate-2,book-3');
|
||||
$table->createdBy->range('admin,user,system');
|
||||
$table->createdDate->range('`2025-08-01 10:00:00`,`2025-08-15 10:00:00`');
|
||||
$table->editedBy->range('admin,user,system');
|
||||
$table->editedDate->range('`2025-08-20 10:00:00`,`2025-09-06 10:00:00`');
|
||||
$table->published->range('0{3},1{12}');
|
||||
$table->publishedDate->range('`2025-08-10 10:00:00`,`2025-09-06 10:00:00`');
|
||||
$table->deleted->range('0{13},1{2}');
|
||||
$table->prompt->range('Please help me generate,This is used for,AI assistant will');
|
||||
$table->builtIn->range('0,1');
|
||||
$table->gen(15);
|
||||
|
||||
// 3. 用户登录(选择合适角色)
|
||||
su('admin');
|
||||
|
||||
// 4. 创建测试实例(变量名与模块名一致)
|
||||
$aiTest = new aiTest();
|
||||
|
||||
// 5. 🔴 强制要求:必须包含至少5个测试步骤
|
||||
r(count($aiTest->getLatestMiniProgramsTest())) && p() && e('10'); // 步骤1:正常情况,返回10条符合条件的记录
|
||||
r(count($aiTest->getLatestMiniProgramsTest(null, 'name_asc'))) && p() && e('10'); // 步骤2:不同排序方式,按名称升序
|
||||
r(count($aiTest->getLatestMiniProgramsTest(null, 'id_desc'))) && p() && e('10'); // 步骤3:按ID倒序查询
|
||||
r($aiTest->getLatestMiniProgramsTest()) && p('4:published') && e('1'); // 步骤4:验证返回的都是已发布的小程序
|
||||
r($aiTest->getLatestMiniProgramsTest()) && p('5:deleted') && e('0'); // 步骤5:验证返回的都是未删除的小程序
|
||||
@@ -0,0 +1,57 @@
|
||||
---
|
||||
title: AI小程序测试数据
|
||||
desc: 用于测试getLatestMiniPrograms方法的测试数据
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: 小程序ID
|
||||
range: 1-15
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: name
|
||||
note: 小程序名称
|
||||
range: Career Guide{2},Writing Helper{3},Code Generator{2},Translator{3},Study Plan{2},Project Manager{3}
|
||||
- field: category
|
||||
note: 分类
|
||||
range: personal{5},work{5},development{5}
|
||||
- field: desc
|
||||
note: 描述
|
||||
range: AI miniprogram description{5},Helps improve work efficiency{5},Provides intelligent services{5}
|
||||
- field: model
|
||||
note: 关联模型ID
|
||||
range: 1-3:R
|
||||
- field: icon
|
||||
note: 图标
|
||||
range: writinghand-7{3},technologist-6{3},coding-1{3},translate-2{3},book-3{3}
|
||||
- field: createdBy
|
||||
note: 创建者
|
||||
range: admin{5},user{5},system{5}
|
||||
- field: createdDate
|
||||
note: 创建时间
|
||||
range: (-2M)-(-1M):3D
|
||||
format: YYYY-MM-DD hh:mm:ss
|
||||
- field: editedBy
|
||||
note: 编辑者
|
||||
range: admin{5},user{5},system{5}
|
||||
- field: editedDate
|
||||
note: 编辑时间
|
||||
range: (-1M)-(+0D):2D
|
||||
format: YYYY-MM-DD hh:mm:ss
|
||||
- field: published
|
||||
note: 是否发布
|
||||
range: 0{3},1{12}
|
||||
- field: publishedDate
|
||||
note: 发布时间
|
||||
range: (-25D)-(-5D):2D
|
||||
format: YYYY-MM-DD hh:mm:ss
|
||||
- field: deleted
|
||||
note: 是否删除
|
||||
range: 0{13},1{2}
|
||||
- field: prompt
|
||||
note: 提示词
|
||||
range: Please help me generate..{5},This is used for..{5},AI assistant will..{5}
|
||||
- field: builtIn
|
||||
note: 是否内置
|
||||
range: 0{10},1{5}
|
||||
Reference in New Issue
Block a user