* [misc] Enhance unit tests for jobModel::getSonarqubeByRepo() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,20 +1,43 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/job.unittest.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=jobModel->getSonarqubeByRepo();
|
||||
title=测试 jobModel::getSonarqubeByRepo();
|
||||
timeout=0
|
||||
cid=1
|
||||
cid=0
|
||||
|
||||
- 根据repo查询sonarqube第1条的name属性 @这是一个Job1
|
||||
- 步骤1:查询单个版本库返回该repo的最新任务第1条的name属性 @SonarQube任务Repo1_3
|
||||
- 步骤2:查询另一个版本库返回该repo的最新任务第2条的name属性 @SonarQube任务Repo2_2
|
||||
- 步骤3:查询不存在的版本库ID返回空数组 @0
|
||||
- 步骤4:排除指定jobID后返回该repo的其他任务第1条的name属性 @SonarQube任务Repo1_2
|
||||
- 步骤5:显示已删除任务参数为true时包含已删除任务第3条的name属性 @已删除SonarQube任务
|
||||
- 步骤6:不显示已删除任务参数为false时排除已删除任务第3条的name属性 @SonarQube任务Repo3_1
|
||||
- 步骤7:空版本库ID列表返回空数组 @0
|
||||
|
||||
*/
|
||||
|
||||
$repoIDList = array('1', '2');
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/job.unittest.class.php';
|
||||
|
||||
$job = new jobTest();
|
||||
r($job->getSonarqubeByRepoTest($repoIDList)) && p('1:name') && e('这是一个Job1'); // 根据repo查询sonarqube
|
||||
// 准备测试数据
|
||||
$job = zenData('job');
|
||||
$job->id->range('1-10');
|
||||
$job->name->range('SonarQube任务Repo1_1,SonarQube任务Repo1_2,SonarQube任务Repo1_3,SonarQube任务Repo2_1,SonarQube任务Repo2_2,SonarQube任务Repo3_1,已删除SonarQube任务,SonarQube任务Repo4,SonarQube任务Repo5,其他任务');
|
||||
$job->repo->range('1,1,1,2,2,3,3,4,5,99');
|
||||
$job->frame->range('sonarqube,sonarqube,sonarqube,sonarqube,sonarqube,sonarqube,sonarqube,sonarqube,sonarqube,phpunit');
|
||||
$job->engine->range('jenkins,jenkins,jenkins,gitlab,gitlab,jenkins,gitlab,jenkins,gitlab,jenkins');
|
||||
$job->deleted->range('0,0,0,0,0,0,1,0,0,0');
|
||||
$job->gen(10);
|
||||
|
||||
su('admin');
|
||||
|
||||
$jobTest = new jobTest();
|
||||
|
||||
r($jobTest->getSonarqubeByRepoTest(array(1))) && p('1:name') && e('SonarQube任务Repo1_3'); // 步骤1:查询单个版本库返回该repo的最新任务
|
||||
r($jobTest->getSonarqubeByRepoTest(array(2))) && p('2:name') && e('SonarQube任务Repo2_2'); // 步骤2:查询另一个版本库返回该repo的最新任务
|
||||
r($jobTest->getSonarqubeByRepoTest(array(999))) && p() && e('0'); // 步骤3:查询不存在的版本库ID返回空数组
|
||||
r($jobTest->getSonarqubeByRepoTest(array(1), 3)) && p('1:name') && e('SonarQube任务Repo1_2'); // 步骤4:排除指定jobID后返回该repo的其他任务
|
||||
r($jobTest->getSonarqubeByRepoTest(array(3), 0, true)) && p('3:name') && e('已删除SonarQube任务'); // 步骤5:显示已删除任务参数为true时包含已删除任务
|
||||
r($jobTest->getSonarqubeByRepoTest(array(3), 0, false)) && p('3:name') && e('SonarQube任务Repo3_1'); // 步骤6:不显示已删除任务参数为false时排除已删除任务
|
||||
r($jobTest->getSonarqubeByRepoTest(array())) && p() && e('0'); // 步骤7:空版本库ID列表返回空数组
|
||||
@@ -0,0 +1,62 @@
|
||||
---
|
||||
title: Job data for getSonarqubeByRepo test
|
||||
desc: Test data for job table with sonarqube jobs by repository
|
||||
author: Claude
|
||||
version: 1.0
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: Job ID
|
||||
range: 1-10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: name
|
||||
note: Job name
|
||||
range: "这是一个SonarQube任务1,这是一个SonarQube任务2,这是一个SonarQube任务3,Jenkins任务,GitLab任务,已删除SonarQube任务,这是一个SonarQube任务7,这是一个SonarQube任务8,这是一个SonarQube任务9,这是一个SonarQube任务10"
|
||||
- field: repo
|
||||
note: Repository ID
|
||||
range: "1{3},2{2},3{1},4{1},5{1},99{1},100{1}"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: product
|
||||
note: Product ID
|
||||
range: 1-3
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: frame
|
||||
note: Framework type
|
||||
range: "sonarqube{7},phpunit{2},jest{1}"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: engine
|
||||
note: Engine type
|
||||
range: "jenkins{5},gitlab{3},sonarqube{2}"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: server
|
||||
note: Server ID
|
||||
range: 1-3
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: pipeline
|
||||
note: Pipeline config
|
||||
range: "pipeline1,pipeline2,pipeline3"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: deleted
|
||||
note: Deletion status
|
||||
range: "0{8},1{2}"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: createdBy
|
||||
note: Creator
|
||||
range: "admin{7},user1{2},user2{1}"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
- field: createdDate
|
||||
note: Creation date
|
||||
range: "2023-01-01 00:00:00,2023-06-01 00:00:00,2023-12-01 00:00:00"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
Reference in New Issue
Block a user