+ Add doc::getObjectTree unit test.
This commit is contained in:
@@ -843,6 +843,31 @@ class docTest
|
||||
$lib = $this->objectModel->getLibByID($id);
|
||||
|
||||
$item = $this->objectModel->buildLibItem($libID, $lib, $type, $moduleID, $objectID);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
return $item;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取产品、项目、执行文档库的树形结构。
|
||||
* Get a tree structure of the product, project, and execution document library.
|
||||
*
|
||||
* @param int $libID
|
||||
* @param array $libIdList
|
||||
* @param string $type
|
||||
* @param int $moduleID
|
||||
* @param int $objectID
|
||||
* @param string $browseType
|
||||
* @param int $param
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function getObjectTreeTest(int $libID, array $libIdList, string $type, int $moduleID = 0, int $objectID = 0, string $browseType = '', int $param = 0): array
|
||||
{
|
||||
$libs = $this->objectModel->dao->select('*')->from(TABLE_DOCLIB)->where('id')->in($libIdList)->fetchAll('id');
|
||||
$data = $this->objectModel->getObjectTree($libID, $libs, $type, $moduleID, $objectID, $browseType, $param);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
return isset($data[0][$type]) ? $data[0][$type] : array();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
/**
|
||||
|
||||
title=测试 docModel->getObjectTree();
|
||||
timeout=0
|
||||
cid=1
|
||||
|
||||
*/
|
||||
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/doc.class.php';
|
||||
|
||||
$userqueryTable = zdTable('userquery');
|
||||
$userqueryTable->id->range('1-2');
|
||||
$userqueryTable->sql->range("`(( 1 AND `title` LIKE '%文档%' ) AND ( 1 ))`");
|
||||
$userqueryTable->gen(1);
|
||||
|
||||
zdTable('project')->config('execution')->gen(10);
|
||||
zdTable('product')->config('product')->gen(5);
|
||||
zdTable('module')->config('module')->gen(3);
|
||||
zdTable('doclib')->config('doclib')->gen(30);
|
||||
zdTable('doc')->config('doc')->gen(50);
|
||||
zdTable('apilibrelease')->gen(0);
|
||||
zdTable('user')->gen(5);
|
||||
su('admin');
|
||||
|
||||
$libID = 1;
|
||||
$libIds = array(1, 6, 11, 16, 20, 26);
|
||||
$types = array('api', 'custom', 'mine', 'project', 'execution', 'product');
|
||||
$moduleID = 1;
|
||||
$objectIds = array(0, 1, 11, 101);
|
||||
$browseTypes = array('', 'bysearch', 'bysearch');
|
||||
$queries = array(0, 1);
|
||||
|
||||
$docTester = new docTest();
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[0], $moduleID, $objectIds[2], $browseTypes[0], $queries[0])) && p() && e('0'); // 获取api文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[0], $moduleID, $objectIds[2], $browseTypes[1], $queries[1])) && p() && e('0'); // 获取搜索后的api文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[0], $moduleID, $objectIds[2], $browseTypes[2], $queries[1])) && p() && e('0'); // 获取切换版本后的api文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[1], $moduleID, $objectIds[0], $browseTypes[0], $queries[0])) && p('6:type,name,objectType,objectID') && e('docLib,自定义文档库6,custom,0'); // 获取自定义文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[1], $moduleID, $objectIds[0], $browseTypes[1], $queries[1])) && p('6:type,name,objectType,objectID') && e('docLib,自定义文档库6,custom,0'); // 获取搜索后的自定义文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[1], $moduleID, $objectIds[0], $browseTypes[2], $queries[1])) && p('6:type,name,objectType,objectID') && e('docLib,自定义文档库6,custom,0'); // 获取切换版本后的自定义文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[2], $moduleID, $objectIds[0], $browseTypes[0], $queries[0])) && p('11:type,name,objectType,objectID') && e('docLib,我的文档库11,mine,0'); // 获取我的文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[2], $moduleID, $objectIds[0], $browseTypes[1], $queries[1])) && p('11:type,name,objectType,objectID') && e('docLib,我的文档库11,mine,0'); // 获取搜索后的我的文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[2], $moduleID, $objectIds[0], $browseTypes[2], $queries[1])) && p('11:type,name,objectType,objectID') && e('docLib,我的文档库11,mine,0'); // 获取切换版本后的我的文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[3], $moduleID, $objectIds[2], $browseTypes[0], $queries[0])) && p('16:type,name,objectType,objectID') && e('docLib,项目文档主库16,project,11'); // 获取项目文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[3], $moduleID, $objectIds[2], $browseTypes[1], $queries[1])) && p('16:type,name,objectType,objectID') && e('docLib,项目文档主库16,project,11'); // 获取搜索后的项目文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[3], $moduleID, $objectIds[2], $browseTypes[2], $queries[1])) && p('16:type,name,objectType,objectID') && e('docLib,项目文档主库16,project,11'); // 获取切换版本后的项目文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[4], $moduleID, $objectIds[3], $browseTypes[0], $queries[0])) && p('20:type,name,objectType,objectID') && e('docLib,执行文档主库20,execution,101'); // 获取执行文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[4], $moduleID, $objectIds[3], $browseTypes[1], $queries[1])) && p('20:type,name,objectType,objectID') && e('docLib,执行文档主库20,execution,101'); // 获取搜索后的执行文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[4], $moduleID, $objectIds[3], $browseTypes[2], $queries[1])) && p('20:type,name,objectType,objectID') && e('docLib,执行文档主库20,execution,101'); // 获取切换版本后的执行文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[5], $moduleID, $objectIds[1], $browseTypes[0], $queries[0])) && p('26:type,name,objectType,objectID') && e('docLib,产品文档主库26,product,1'); // 获取产品文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[5], $moduleID, $objectIds[1], $browseTypes[1], $queries[1])) && p('26:type,name,objectType,objectID') && e('docLib,产品文档主库26,product,1'); // 获取搜索后的产品文档树
|
||||
r($docTester->getObjectTreeTest($libID, $libIds, $types[5], $moduleID, $objectIds[1], $browseTypes[2], $queries[1])) && p('26:type,name,objectType,objectID') && e('docLib,产品文档主库26,product,1'); // 获取切换版本后的产品文档树
|
||||
Reference in New Issue
Block a user