+ Add case for afterMerge method.

This commit is contained in:
tianshujie
2023-09-21 10:45:22 +08:00
parent 4f118eb7c1
commit 1721b485f6
6 changed files with 148 additions and 0 deletions
+21
View File
@@ -416,4 +416,25 @@ class branchTest
$branches = $this->objectModel->dao->select('*')->from(TABLE_BRANCH)->where('deleted')->eq(0)->andWhere('product')->eq($productID)->fetchAll();
return count($branches);
}
/**
* 合并分支后的其他数据处理。
* other data process after merge branch.
*
* @param int $productID
* @param string $mergedBranches
* @param object $data
* @access public
* @return array|int
*/
public function afterMergeTest(int $productID, string $mergedBranches, object $data): array|int
{
$targetBranch = $data->targetBranch;
$objectID = $this->objectModel->afterMerge($productID, $targetBranch, $mergedBranches, $data);
if(dao::isError()) return dao::getError();
$releases = $this->objectModel->dao->select('*')->from(TABLE_RELEASE)->where('deleted')->eq(0)->andWhere('branch')->in($data->mergedBranchIDList)->fetchAll();
return count($releases);
}
}
+51
View File
@@ -0,0 +1,51 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/branch.class.php';
zdTable('product')->config('product')->gen(10);
zdTable('branch')->config('branch')->gen(30);
zdTable('projectproduct')->config('projectproduct')->gen(30);
zdTable('productplan')->config('productplan')->gen(30);
zdTable('release')->config('release')->gen(30);
zdTable('build')->config('build')->gen(30);
zdTable('story')->config('story')->gen(30);
zdTable('user')->gen(5);
zdTable('module')->gen(0);
zdTable('bug')->gen(0);
zdTable('case')->gen(0);
zdTable('projectstory')->gen(0);
su('admin');
/**
title=测试 branchModel->afterMerge();
timeout=0
cid=1
*/
$productID = array(6, 7);
$mergedBranches = array(1, 4, 6);
$mergeBranch1 = new stdclass();
$mergeBranch1->createBranch = 0;
$mergeBranch1->mergedBranchIDList = array(1);
$mergeBranch1->targetBranch = 2;
$mergeBranch2 = new stdclass();
$mergeBranch2->name = '新建合并的分支';
$mergeBranch2->desc = '合并分支的描述';
$mergeBranch2->createBranch = 1;
$mergeBranch2->mergedBranchIDList = array(2);
$mergeBranch2->targetBranch = 0;
$mergeBranch3 = new stdclass();
$mergeBranch3->createBranch = 0;
$mergeBranch3->mergedBranchIDList = array(4, 5);
$mergeBranch3->targetBranch = 0;
$branchTester = new branchTest();
r($branchTester->afterMergeTest($productID[0], $mergedBranches[0], $mergeBranch1)) && p() && e('0'); // 测试合并分支1 到 分支2
r($branchTester->afterMergeTest($productID[0], $mergedBranches[1], $mergeBranch2)) && p() && e('1'); // 测试合并分支4 到 新建分支
r($branchTester->afterMergeTest($productID[1], $mergedBranches[2], $mergeBranch3)) && p() && e('1'); // 测试合并分支6 到 主干
+17
View File
@@ -0,0 +1,17 @@
title: zt_build
author: Shujie Tian
version: 1.0.0
fields:
- field: id
range: 1-30
- field: name
range: 1-30
prefix: '版本'
- field: product
range: 1-10{3}
- field: branch
renge: '0{16},2-14'
- field: date
range: '`2021-01-01`,`2021-06-01`,`2022-01-01`,`2022-07-01`,`2030-01-01`'
- field: stories
range: '`,1,2,3`,`11,12,13,14`,[]{13},`,1,2,3,52,53,56,58`,`51,54,57,59,`,`62,66,68,`'
+21
View File
@@ -0,0 +1,21 @@
title: zt_productplan
author: Shujie Tian
version: 1.0.0
fields:
- field: id
range: 1-100
- field: title
range: 1-100
prefix: '计划'
- field: product
range: 1-10{3}
- field: branch
range: '0{16},2-14'
- field: parent
range: '`-1`,1,0{98}'
- field: status
range: wait,doing,done,closed
- field: begin
range: '`2021-01-01`,`2021-06-01`,`2022-01-01`,`2022-07-01`,`2030-01-01`'
- field: end
range: '`2021-01-30`,`2021-06-30`,`2022-01-30`,`2022-07-30`,`2030-01-01`'
+21
View File
@@ -0,0 +1,21 @@
title: zt_release
author: Shujie Tian
version: 1.0.0
fields:
- field: id
range: 1-100
- field: name
range: 1-100
prefix: '发布'
- field: product
range: 1-10{3}
- field: branch
range: '0{16},2-14'
- field: status
range: 'normal{20},terminate{10}'
- field: date
range: '`2021-01-01`,`2021-06-01`,`2022-01-01`,`2022-07-01`,`2030-01-01`'
- field: build
renge: 1-30
- field: stories
range: '`,1,2,3`,`11,12,13,14`,[]{13},`,1,2,3,52,53,56,58`,`51,54,57,59,`,`62,66,68,`'
+17
View File
@@ -0,0 +1,17 @@
title: zt_story
author: Shujie Tian
version: 1.0.0
fields:
- field: id
range: 1-100
- field: title
range: 1-100
prefix: '需求'
- field: product
range: 1-10{10}
- field: branch
range: '0{55},2-15{5}'
- field: stage
range: 'wait,planned,projected,developing,developed,testing,tested,verified,released,closed'
- field: status
range: 'draft,changing,active{7},closed'