+ [misc] Add unit tests for productZen::getExportData() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -477,4 +477,22 @@ class productZenTest extends baseTest
|
||||
if(dao::isError()) return dao::getError();
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test getExportData method.
|
||||
*
|
||||
* @param int $programID
|
||||
* @param string $browseType
|
||||
* @param string $orderBy
|
||||
* @param int $param
|
||||
* @param object $pager
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function getExportDataTest(int $programID = 0, string $browseType = 'all', string $orderBy = 'order_asc', int $param = 0, ?object $pager = null)
|
||||
{
|
||||
$result = $this->invokeArgs('getExportData', array($programID, $browseType, $orderBy, $param, $pager));
|
||||
if(dao::isError()) return dao::getError();
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 productZen::getExportData();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 步骤1:测试获取全部产品导出数据 @10
|
||||
- 步骤2:测试获取项目集1的产品导出数据 @1
|
||||
- 步骤3:测试获取项目集2的产品导出数据 @1
|
||||
- 步骤4:测试获取全部产品导出数据不受browseType影响 @10
|
||||
- 步骤5:测试返回数据包含formatDataForList处理后的字段第0条的type属性 @product
|
||||
|
||||
*/
|
||||
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/zen.class.php';
|
||||
|
||||
zendata('product')->loadYaml('getexportdata', false, 2)->gen(10);
|
||||
zendata('user')->loadYaml('getexportdata', false, 2)->gen(10);
|
||||
|
||||
su('admin');
|
||||
|
||||
$productTest = new productZenTest();
|
||||
|
||||
r(count($productTest->getExportDataTest(0, 'all', 'order_asc', 0, null))) && p() && e('10'); // 步骤1:测试获取全部产品导出数据
|
||||
r(count($productTest->getExportDataTest(1, 'all', 'order_asc', 0, null))) && p() && e('1'); // 步骤2:测试获取项目集1的产品导出数据
|
||||
r(count($productTest->getExportDataTest(2, 'all', 'order_asc', 0, null))) && p() && e('1'); // 步骤3:测试获取项目集2的产品导出数据
|
||||
r(count($productTest->getExportDataTest(0, 'noclosed', 'order_asc', 0, null))) && p() && e('10'); // 步骤4:测试获取全部产品导出数据不受browseType影响
|
||||
r($productTest->getExportDataTest(0, 'all', 'order_asc', 0, null)) && p('0:type') && e('product'); // 步骤5:测试返回数据包含formatDataForList处理后的字段
|
||||
@@ -0,0 +1,180 @@
|
||||
---
|
||||
title: 产品表测试数据
|
||||
desc: 用于测试 getExportData 方法的产品数据
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: 产品ID
|
||||
range: 1-10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: program
|
||||
note: 所属项目集
|
||||
range: 0{5},1{3},2{2}
|
||||
- field: name
|
||||
note: 产品名称
|
||||
range: 产品A,产品B,产品C,产品D,产品E,产品F,产品G,产品H,产品I,产品J
|
||||
- field: code
|
||||
note: 产品代码
|
||||
range: 1-10
|
||||
format: "PRD%02d"
|
||||
- field: shadow
|
||||
note: 是否影子产品
|
||||
range: 0
|
||||
- field: bind
|
||||
note: 是否绑定
|
||||
range: '0'
|
||||
- field: line
|
||||
note: 产品线
|
||||
range: 0{7},1{2},2{1}
|
||||
- field: type
|
||||
note: 产品类型
|
||||
range: normal{8},branch{1},platform{1}
|
||||
- field: status
|
||||
note: 产品状态
|
||||
range: normal{7},closed{3}
|
||||
- field: subStatus
|
||||
note: 子状态
|
||||
range: ''
|
||||
- field: desc
|
||||
note: 产品描述
|
||||
range: 这是产品描述{10}
|
||||
- field: PO
|
||||
note: 产品负责人
|
||||
range: admin{3},user1{2},user2{2},user3{3}
|
||||
- field: QD
|
||||
note: 测试负责人
|
||||
range: admin{5},user1{5}
|
||||
- field: RD
|
||||
note: 发布负责人
|
||||
range: admin{5},user2{5}
|
||||
- field: feedback
|
||||
note: 反馈负责人
|
||||
range: ''
|
||||
- field: ticket
|
||||
note: 工单负责人
|
||||
range: ''
|
||||
- field: workflowGroup
|
||||
note: 工作流分组
|
||||
range: 0
|
||||
- field: acl
|
||||
note: 访问控制
|
||||
range: open{6},private{2},custom{2}
|
||||
- field: groups
|
||||
note: 分组权限
|
||||
range: ''
|
||||
- field: whitelist
|
||||
note: 白名单
|
||||
range: ''
|
||||
- field: reviewer
|
||||
note: 评审人
|
||||
range: ''
|
||||
- field: PMT
|
||||
note: PMT成员
|
||||
range: ''
|
||||
- field: draftEpics
|
||||
note: 草稿史诗数
|
||||
range: 0-5
|
||||
- field: activeEpics
|
||||
note: 激活史诗数
|
||||
range: 0-10
|
||||
- field: changingEpics
|
||||
note: 变更中史诗数
|
||||
range: 0-3
|
||||
- field: reviewingEpics
|
||||
note: 评审中史诗数
|
||||
range: 0-2
|
||||
- field: finishedEpics
|
||||
note: 已完成史诗数
|
||||
range: 0-8
|
||||
- field: closedEpics
|
||||
note: 已关闭史诗数
|
||||
range: 0-5
|
||||
- field: totalEpics
|
||||
note: 总史诗数
|
||||
range: 0-20
|
||||
- field: draftRequirements
|
||||
note: 草稿需求数
|
||||
range: 0-5
|
||||
- field: activeRequirements
|
||||
note: 激活需求数
|
||||
range: 5-15
|
||||
- field: changingRequirements
|
||||
note: 变更中需求数
|
||||
range: 0-3
|
||||
- field: reviewingRequirements
|
||||
note: 评审中需求数
|
||||
range: 0-2
|
||||
- field: finishedRequirements
|
||||
note: 已完成需求数
|
||||
range: 3-10
|
||||
- field: closedRequirements
|
||||
note: 已关闭需求数
|
||||
range: 0-5
|
||||
- field: totalRequirements
|
||||
note: 总需求数
|
||||
range: 10-30
|
||||
- field: draftStories
|
||||
note: 草稿故事数
|
||||
range: 0-5
|
||||
- field: activeStories
|
||||
note: 激活故事数
|
||||
range: 10-20
|
||||
- field: changingStories
|
||||
note: 变更中故事数
|
||||
range: 0-3
|
||||
- field: reviewingStories
|
||||
note: 评审中故事数
|
||||
range: 0-2
|
||||
- field: finishedStories
|
||||
note: 已完成故事数
|
||||
range: 5-15
|
||||
- field: closedStories
|
||||
note: 已关闭故事数
|
||||
range: 0-5
|
||||
- field: totalStories
|
||||
note: 总故事数
|
||||
range: 20-40
|
||||
- field: unresolvedBugs
|
||||
note: 未解决Bug数
|
||||
range: 0-10
|
||||
- field: closedBugs
|
||||
note: 已关闭Bug数
|
||||
range: 0-15
|
||||
- field: fixedBugs
|
||||
note: 已修复Bug数
|
||||
range: 0-20
|
||||
- field: totalBugs
|
||||
note: 总Bug数
|
||||
range: 0-30
|
||||
- field: plans
|
||||
note: 计划数
|
||||
range: 0-5
|
||||
- field: releases
|
||||
note: 发布数
|
||||
range: 0-8
|
||||
- field: createdBy
|
||||
note: 创建者
|
||||
range: admin{7},user1{2},user2{1}
|
||||
- field: createdDate
|
||||
note: 创建时间
|
||||
range: (-180d)-(-1d):10d
|
||||
type: timestamp
|
||||
format: YYYY-MM-DD hh:mm:ss
|
||||
- field: createdVersion
|
||||
note: 创建版本
|
||||
range: ''
|
||||
- field: closedDate
|
||||
note: 关闭日期
|
||||
range: '[]{7},(-30d)-(-1d):5d{3}'
|
||||
type: timestamp
|
||||
format: YYYY-MM-DD
|
||||
- field: order
|
||||
note: 排序
|
||||
range: 1-10
|
||||
- field: vision
|
||||
note: 视图
|
||||
range: rnd
|
||||
- field: deleted
|
||||
note: 是否删除
|
||||
range: '0'
|
||||
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: 用户表测试数据
|
||||
desc: 用于测试 getExportData 方法的用户数据
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: 用户ID
|
||||
range: 1-10
|
||||
- field: account
|
||||
note: 账号
|
||||
range: admin,user1,user2,user3,user4,user5,user6,user7,user8,user9
|
||||
- field: realname
|
||||
note: 真实姓名
|
||||
range: 管理员,用户1,用户2,用户3,用户4,用户5,用户6,用户7,用户8,用户9
|
||||
- field: role
|
||||
note: 角色
|
||||
range: admin,dev{3},qa{2},pm{2},po{2}
|
||||
- field: deleted
|
||||
note: 是否删除
|
||||
range: '0'
|
||||
Reference in New Issue
Block a user