* Refactor doc::createApiLib unit test.
This commit is contained in:
@@ -36,31 +36,25 @@ class docTest
|
||||
}
|
||||
|
||||
/**
|
||||
* Function createApiLib test by doc
|
||||
* 创建一个API文档库。
|
||||
* Creat a api doc library.
|
||||
*
|
||||
* @param array $param
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return object
|
||||
* @return array|object|false
|
||||
*/
|
||||
public function createApiLibTest($param)
|
||||
public function createApiLibTest(array $param): array|object|bool
|
||||
{
|
||||
global $tester;
|
||||
$tester->loadModel('api');
|
||||
$tester->app->loadLang('doclib');
|
||||
$this->objectModel->loadModel('api');
|
||||
|
||||
$createFields = array('name' => '', 'baseUrl' => '', 'acl' => '', 'desc' => '测试详情');
|
||||
|
||||
foreach($createFields as $field => $defaultValue) $_POST[$field] = $defaultValue;
|
||||
foreach($param as $key => $value) $_POST[$key] = $value;
|
||||
$objectID = $this->objectModel->createApiLib();
|
||||
|
||||
unset($_POST);
|
||||
$apiLib = new stdclass();
|
||||
$createFields = array('name' => '', 'baseUrl' => '', 'acl' => '', 'desc' => '测试详情', 'libType' => 'product', 'product' => 1, 'project' => 0);
|
||||
foreach($createFields as $field => $defaultValue) $apiLib->{$field} = $defaultValue;
|
||||
foreach($param as $key => $value) $apiLib->{$key} = $value;
|
||||
$objectID = $this->objectModel->createApiLib($apiLib);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
$objects = $this->objectModel->getLibById($objectID);
|
||||
|
||||
return $objects;
|
||||
return $this->objectModel->getLibByID($objectID);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,45 +1,33 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/doc.class.php';
|
||||
$doclib = zdTable('doclib');
|
||||
$doclib->id->range('1');
|
||||
$doclib->gen(0);
|
||||
|
||||
zdTable('user')->gen(5);
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 docModel->createApiLib();
|
||||
timeout=0
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
新建公有接口库 >> api;新建api文档库
|
||||
新建私有接口库 >> private;www.zentaopms.com
|
||||
新建自定义接口库 >> custom;1,2,3;admin,dev1,dev10
|
||||
接口库名称为空 >> 『接口库名称』不能为空。
|
||||
重复创建接口库 >> 『接口库名称』已经有『新建api文档库』这条记录了。如果您确定该记录已删除,请到后台-系统设置-回收站还原。
|
||||
|
||||
*/
|
||||
$acl = array('', 'open', 'custom', 'private');
|
||||
$groups = array('1', '2', '3');
|
||||
$users = array('admin', 'dev1', 'dev10');
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/doc.class.php';
|
||||
|
||||
$openApilib = array('name' => '新建api文档库', 'acl' => $acl[1], 'baseUrl' => 'www.zentaopms.com');
|
||||
$privateApilib = array('name' => '新建私有api文档库', 'acl' => $acl[3], 'baseUrl' => 'www.zentaopms.com');
|
||||
$customApilib = array('name' => '新建自定义api文档库', 'acl' => $acl[2], 'baseUrl' => 'www.zentaopms.com', 'groups' => $groups, 'users' => $users);
|
||||
$noName = array('name' => '', 'acl' => $acl[1], 'baseUrl' => 'www.zentaopms.com');
|
||||
$noAcl = array('name' => '无权限', 'acl' => $acl[0], 'baseUrl' => 'www.zentaopms.com');
|
||||
$noBaseUrl = array('name' => 'noBaseUrl', 'acl' => $acl[0], 'baseUrl' => '');
|
||||
zdTable('doclib')->gen(0);
|
||||
zdTable('user')->gen(5);
|
||||
su('admin');
|
||||
|
||||
$doc = new docTest();
|
||||
$acl = array('open', 'custom', 'private');
|
||||
$groups = '1,2,3';
|
||||
$users = 'admin,dev1,dev10';
|
||||
|
||||
r($doc->createApiLibTest($openApilib)) && p('type;name') && e('api;新建api文档库'); //新建公有接口库
|
||||
r($doc->createApiLibTest($privateApilib)) && p('acl;baseUrl') && e('private;www.zentaopms.com'); //新建私有接口库
|
||||
r($doc->createApiLibTest($customApilib)) && p('acl;groups;users') && e('custom;1,2,3;admin,dev1,dev10');//新建自定义接口库
|
||||
r($doc->createApiLibTest($noName)) && p('name:0') && e('『接口库名称』不能为空。'); //接口库名称为空
|
||||
r($doc->createApiLibTest($noAcl)) && p('acl') && e(''); //接口库权限为空
|
||||
r($doc->createApiLibTest($noBaseUrl)) && p('baseUrl') && e(''); //接口库地址为空
|
||||
r($doc->createApiLibTest($openApilib)) && p('name:0') && e('『接口库名称』已经有『新建api文档库』这条记录了。如果您确定该记录已删除,请到后台-系统设置-回收站还原。');//重复创建接口库
|
||||
$openApilib = array('name' => '新建api文档库', 'acl' => $acl[0], 'baseUrl' => 'www.zentaopms.com');
|
||||
$privateApilib = array('name' => '新建私有api文档库', 'acl' => $acl[2], 'baseUrl' => 'www.zentaopms.com');
|
||||
$customApilib = array('name' => '新建自定义api文档库', 'acl' => $acl[1], 'baseUrl' => 'www.zentaopms.com', 'groups' => $groups, 'users' => $users);
|
||||
$noName = array('name' => '', 'acl' => $acl[0], 'baseUrl' => 'www.zentaopms.com');
|
||||
$noBaseUrl = array('name' => 'noBaseUrl', 'acl' => $acl[0], 'baseUrl' => '');
|
||||
|
||||
$docTester = new docTest();
|
||||
r($docTester->createApiLibTest($openApilib)) && p('type;name') && e('api;新建api文档库'); // 新建公有接口库
|
||||
r($docTester->createApiLibTest($privateApilib)) && p('acl;baseUrl') && e('private;www.zentaopms.com'); // 新建私有接口库
|
||||
r($docTester->createApiLibTest($customApilib)) && p('acl') && e('custom'); // 新建自定义接口库
|
||||
r($docTester->createApiLibTest($noName)) && p('name:0') && e('『库名称』不能为空。'); // 接口库名称为空
|
||||
r($docTester->createApiLibTest($noBaseUrl)) && p('baseUrl') && e('www.zentaopms.com'); // 接口库地址为空
|
||||
r($docTester->createApiLibTest($openApilib)) && p('name') && e('[name] => 同一产品下的接口库中『库名称』已经有『新建api文档库』这条记录了。如果您确定该记录已删除,请到后台-系统设置-回收站还原。'); // 重复创建接口库
|
||||
|
||||
Reference in New Issue
Block a user