diff --git a/module/convert/test/lib/convert.unittest.class.php b/module/convert/test/lib/convert.unittest.class.php index 5ffc5b751b..c09287316a 100644 --- a/module/convert/test/lib/convert.unittest.class.php +++ b/module/convert/test/lib/convert.unittest.class.php @@ -552,4 +552,54 @@ class convertTest return 'exception: ' . $e->getMessage(); } } + + /** + * Test getObjectDefaultValue method. + * + * @param string $step + * @param array $sessionData + * @access public + * @return mixed + */ + public function getObjectDefaultValueTest($step = '', $sessionData = array()) + { + // 备份原始session数据 + global $app; + $originalJiraRelation = $app->session->jiraRelation ?? null; + + // 设置测试session数据 + if(!empty($sessionData['jiraRelation'])) { + $app->session->set('jiraRelation', $sessionData['jiraRelation']); + } + + try { + $result = $this->objectModel->getObjectDefaultValue($step); + if(dao::isError()) { + $errors = dao::getError(); + // 恢复原始session数据 + if($originalJiraRelation !== null) { + $app->session->set('jiraRelation', $originalJiraRelation); + } else { + $app->session->destroy('jiraRelation'); + } + return $errors; + } + + // 恢复原始session数据 + if($originalJiraRelation !== null) { + $app->session->set('jiraRelation', $originalJiraRelation); + } else { + $app->session->destroy('jiraRelation'); + } + return $result; + } catch (Exception $e) { + // 恢复原始session数据 + if($originalJiraRelation !== null) { + $app->session->set('jiraRelation', $originalJiraRelation); + } else { + $app->session->destroy('jiraRelation'); + } + return 'exception: ' . $e->getMessage(); + } + } } \ No newline at end of file diff --git a/module/convert/test/model/getobjectdefaultvalue.php b/module/convert/test/model/getobjectdefaultvalue.php new file mode 100755 index 0000000000..229a2da102 --- /dev/null +++ b/module/convert/test/model/getobjectdefaultvalue.php @@ -0,0 +1,33 @@ +#!/usr/bin/env php +getObjectDefaultValueTest('object', array())) && p('zentaoObject:Epic') && e('requirement'); // 步骤1:测试object步骤返回配置数组 +r($convertTest->getObjectDefaultValueTest('1001', array('jiraRelation' => json_encode(array('zentaoObject' => array('1001' => 'story')))))) && p('zentaoStatus1001:Open') && e('draft'); // 步骤2:测试有效步骤ID返回默认值数组 +r($convertTest->getObjectDefaultValueTest('9999', array('jiraRelation' => json_encode(array('zentaoObject' => array('1001' => 'story')))))) && p() && e('0'); // 步骤3:测试无效步骤ID返回空数组 +r($convertTest->getObjectDefaultValueTest('', array('jiraRelation' => json_encode(array('zentaoObject' => array('1001' => 'story')))))) && p() && e('0'); // 步骤4:测试空字符串返回空数组 +r($convertTest->getObjectDefaultValueTest('1001', array('jiraRelation' => ''))) && p() && e('0'); // 步骤5:测试空jiraRelation返回空数组 \ No newline at end of file