Files
EasySoft-ZenTaoPMS/module/bug/test/zen/getexportfields.php
T
2025-09-15 15:09:49 +08:00

55 lines
1.9 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
su('admin');
/**
title=测试 bugZen::getExportFields();
timeout=0
cid=0
- 执行$containsBasicFields @1
- 执行$branchRemoved @1
- 执行$planRemoved @1
- 执行$hasFields @1
- 执行$validResult @1
*/
global $tester, $app;
$app->rawModule = 'bug';
$app->rawMethod = 'export';
$zen = initReference('bug');
$func = $zen->getMethod('getExportFields');
// 测试步骤1product为false的情况,应该包含基础字段
$result = $func->invokeArgs($zen->newInstance(), [0, false]);
$containsBasicFields = strpos($result, 'id') !== false && strpos($result, 'title') !== false && strpos($result, 'status') !== false;
r($containsBasicFields) && p() && e('1');
// 测试步骤2:normal产品类型,应该移除branch字段
$normalProduct = (object)array('type' => 'normal', 'shadow' => '0');
$result = $func->invokeArgs($zen->newInstance(), [0, $normalProduct]);
$branchRemoved = strpos($result, ',branch,') === false && strpos($result, 'id') !== false;
r($branchRemoved) && p() && e('1');
// 测试步骤3:shadow产品,应该移除plan字段
$shadowProduct = (object)array('type' => 'branch', 'shadow' => '1');
$result = $func->invokeArgs($zen->newInstance(), [0, $shadowProduct]);
$planRemoved = strpos($result, ',plan,') === false && strpos($result, 'id') !== false;
r($planRemoved) && p() && e('1');
// 测试步骤4:设置项目环境,验证执行相关字段处理
$tester->app->tab = 'project';
$result = $func->invokeArgs($zen->newInstance(), [101, $normalProduct]);
$hasFields = strpos($result, 'id') !== false && strpos($result, 'title') !== false;
r($hasFields) && p() && e('1');
// 测试步骤5:边界情况,executionID为0product为空对象
$emptyProduct = (object)array('shadow' => '0');
$result = $func->invokeArgs($zen->newInstance(), [0, $emptyProduct]);
$validResult = is_string($result) && strlen($result) > 0;
r($validResult) && p() && e('1');