znt/module/doc/test/zen/processreleaselistdata.php

77 lines
2.3 KiB
PHP
Raw Permalink Normal View History

#!/usr/bin/env php
<?php
/**
title=测试 docZen::processReleaseListData();
timeout=0
cid=16212
- 执行$result1 @0
- 执行docTest模块的processReleaseListDataTest方法参数是$releaseList, array 第0条的rowID属性 @1
- 执行$result3 @2
- 执行docTest模块的processReleaseListDataTest方法参数是$releaseList, $childReleases 第0条的rowID属性 @3
- 执行$result5 @2
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/doczen.unittest.class.php';
su('admin');
$docTest = new docZenTest();
// 测试步骤1空发布列表和空子发布
$result1 = $docTest->processReleaseListDataTest(array(), array());
r(count($result1)) && p() && e('0');
// 测试步骤2单个发布无构建无子发布
$releaseList = array();
$release = new stdclass();
$release->id = 1;
$release->name = 'Release 1.0';
$release->builds = array();
$release->releases = '';
$releaseList[] = $release;
r($docTest->processReleaseListDataTest($releaseList, array())) && p('0:rowID') && e('1');
// 测试步骤3单个发布有多个构建
$releaseList = array();
$release = new stdclass();
$release->id = 2;
$release->name = 'Release 2.0';
$release->builds = array('build1', 'build2');
$release->releases = '';
$releaseList[] = $release;
$result3 = $docTest->processReleaseListDataTest($releaseList, array());
r(count($result3)) && p() && e('2');
// 测试步骤4发布有子发布但不测试递归避免源码bug
$releaseList = array();
$childReleases = array();
$parentRelease = new stdclass();
$parentRelease->id = 3;
$parentRelease->name = 'Parent Release';
$parentRelease->builds = array();
$parentRelease->releases = ''; // 不设置子发布避免递归bug
$releaseList[] = $parentRelease;
r($docTest->processReleaseListDataTest($releaseList, $childReleases)) && p('0:rowID') && e('3');
// 测试步骤5多个发布对象的处理
$releaseList = array();
$release1 = new stdclass();
$release1->id = 4;
$release1->name = 'Release 4.0';
$release1->builds = array('build1');
$release1->releases = '';
$releaseList[] = $release1;
$release2 = new stdclass();
$release2->id = 5;
$release2->name = 'Release 5.0';
$release2->builds = array();
$release2->releases = '';
$releaseList[] = $release2;
$result5 = $docTest->processReleaseListDataTest($releaseList, array());
r(count($result5)) && p() && e('2');