* Optimize api getInfoFromPackage function and finish unit test script.

This commit is contained in:
wangyuting
2023-12-07 14:12:33 +08:00
parent 2d4039fda3
commit b32ae50e60
6 changed files with 42 additions and 6 deletions
+1
View File
@@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* The control file of extension module of ZenTaoPMS.
*
+10 -3
View File
@@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* The model file of extension module of ZenTaoCMS.
*
@@ -184,13 +185,14 @@ class extensionModel extends model
}
/**
* 根据插件代号从插件包获取插件信息。
* Get info of an extension from the package file.
*
* @param string $extension
* @param string $extension
* @access public
* @return object
*/
public function getInfoFromPackage($extension)
public function getInfoFromPackage(string $extension): object
{
/* Init the data. */
$data = new stdclass();
@@ -206,7 +208,11 @@ class extensionModel extends model
$data->depends = '';
$info = $this->parseExtensionCFG($extension);
foreach($info as $key => $value) if(isset($data->$key)) $data->$key = is_null($value) ? '' : $value;
foreach($info as $key => $value)
{
if(isset($data->$key)) $data->$key = is_null($value) ? '' : $value;
}
if(isset($info->zentaoversion)) $data->zentaoCompatible = $info->zentaoversion;
if(isset($info->zentao['compatible'])) $data->zentaoCompatible = $info->zentao['compatible'];
if(isset($info->depends)) $data->depends = json_encode($info->depends);
@@ -215,6 +221,7 @@ class extensionModel extends model
}
/**
* 根据插件代号从插件包获取配置信息。
* Parse extension's config file.
*
* @param string $extension
+24
View File
@@ -0,0 +1,24 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
su('admin');
/**
title=测试 extensionModel->getInfoFromPackage();
timeout=0
cid=1
- 获取插件1的详细信息
- 属性name @code1
- 属性code @code1
- 属性version @unknown
- 属性author @unknown
- 属性desc @code1
*/
global $tester;
$tester->loadModel('extension');
r($tester->extension->getInfoFromPackage('code1')) && p('name,code,version,author,desc') && e('code1,code1,unknown,unknown,code1'); // 获取插件1的详细信息
+1
View File
@@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* The control file of misc of ZenTaoPMS.
*
+1
View File
@@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* The model file of misc module of ZenTaoPMS.
* @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.cnezsoft.com)
+5 -3
View File
@@ -111,6 +111,8 @@ class testtask extends control
$users = $this->loadModel('user')->getPairs('noclosed|noletter');
foreach($testtasks as $testtask)
{
if(empty($testtask->members)) continue;
$members = array();
foreach(explode(',', $testtask->members) as $member) $members[] = zget($users, $member);
$testtask->members = implode(',', array_unique($members));
@@ -1150,9 +1152,9 @@ class testtask extends control
}
/**
* AJAX: Get executionID by buildID.
*
* @param int $buildID
 * AJAX: Get executionID by buildID.
*
* @param int $buildID
* @access public
* @return int
*/