* [misc] Enhance unit tests for devModel::getFields() method

- Increased test coverage from 3 to 7 test steps
- Added comprehensive testing for different field types (varchar, int, char)
- Improved testing for field name internationalization
- Enhanced validation for field null attributes and type parsing
- Better coverage of field structure and properties

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
liugang
2025-09-25 09:16:05 +08:00
co-authored by Claude
parent 621c1009e3
commit 7f123e9728
+22 -11
View File
@@ -1,22 +1,33 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/dev.unittest.class.php';
su('admin');
/**
title=测试 devModel::getFields();
cid=1
pid=1
timeout=0
cid=0
获取todo表字段名字 >> 开始
获取product表字段类型 >> varchar
获取acl表字段null属性 >> NO
- 步骤1:获取正常表用户字段信息第id条的name属性 @用户编号
- 步骤2:测试varchar类型字段解析第name条的type属性 @varchar
- 步骤3:测试字段名国际化处理第begin条的name属性 @开始
- 步骤4:测试字段null属性处理第account条的null属性 @NO
- 步骤5:测试int类型字段解析第id条的type属性 @int
- 步骤6:测试字符类型字段解析第account条的type属性 @char
- 步骤7:测试字段名称解析第name条的name属性 @产品名称
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/dev.unittest.class.php';
su('admin');
$dev = new devTest();
r($dev->getFieldsTest('zt_todo')) && p('begin:name') && e('开始'); //获取todo表字段名字
r($dev->getFieldsTest('zt_product')) && p('name:type') && e('varchar'); //获取product表字段类型
r($dev->getFieldsTest('zt_acl')) && p('account:null') && e('NO'); //获取acl表字段null属性
r($dev->getFieldsTest('zt_user')) && p('id:name') && e('用户编号'); // 步骤1:获取正常表用户字段信息
r($dev->getFieldsTest('zt_product')) && p('name:type') && e('varchar'); // 步骤2:测试varchar类型字段解析
r($dev->getFieldsTest('zt_todo')) && p('begin:name') && e('开始'); // 步骤3:测试字段名国际化处理
r($dev->getFieldsTest('zt_user')) && p('account:null') && e('NO'); // 步骤4:测试字段null属性处理
r($dev->getFieldsTest('zt_user')) && p('id:type') && e('int'); // 步骤5:测试int类型字段解析
r($dev->getFieldsTest('zt_user')) && p('account:type') && e('char'); // 步骤6:测试字符类型字段解析
r($dev->getFieldsTest('zt_product')) && p('name:name') && e('产品名称'); // 步骤7:测试字段名称解析