diff --git a/module/build/test/zen/assigneditdata.php b/module/build/test/zen/assigneditdata.php new file mode 100755 index 0000000000..2c6b7e50a4 --- /dev/null +++ b/module/build/test/zen/assigneditdata.php @@ -0,0 +1,154 @@ +#!/usr/bin/env php +id->range('1-10'); +$product->name->range('Product1,Product2,Product3,ProductBranch1,ProductBranch2,Product6{5}'); +$product->type->range('normal{6},branch{4}'); +$product->status->range('normal{10}'); +$product->acl->range('open{6},private{2},custom{2}'); +$product->deleted->range('0'); +$product->gen(10); + +$project = zenData('project'); +$project->id->range('1-10'); +$project->name->range('Project{10}'); +$project->type->range('project{10}'); +$project->status->range('wait{2},doing{5},done{3}'); +$project->model->range('scrum{5},waterfall{3},kanban{2}'); +$project->hasProduct->range('1{8},0{2}'); +$project->parent->range('0'); +$project->path->range('`,1,`,`,2,`,`,3,`,`,4,`,`,5,`,`,6,`,`,7,`,`,8,`,`,9,`,`,10,`'); +$project->grade->range('1'); +$project->deleted->range('0'); +$project->gen(10); + +$branch = zenData('branch'); +$branch->id->range('1-10'); +$branch->product->range('1-5'); +$branch->name->range('主干,分支一,分支二,分支三,分支四{6}'); +$branch->status->range('active{8},closed{2}'); +$branch->deleted->range('0'); +$branch->gen(10); + +$execution = zenData('project'); +$execution->id->range('11-20'); +$execution->project->range('1-3'); +$execution->name->range('Sprint1,Sprint2,Sprint3,迭代1,迭代2{6}'); +$execution->type->range('sprint{5},stage{5}'); +$execution->status->range('wait{2},doing{5},done{3}'); +$execution->parent->range('1-3'); +$execution->path->range('`,1,11,`,`,1,12,`,`,2,13,`,`,2,14,`,`,3,15,`,`,3,16,`,`,1,17,`,`,2,18,`,`,3,19,`,`,1,20,`'); +$execution->grade->range('2'); +$execution->deleted->range('0'); +$execution->gen(10); + +$build = zenData('build'); +$build->id->range('1-10'); +$build->project->range('1-3'); +$build->product->range('1-5'); +$build->branch->range('0,1,2,3'); +$build->execution->range('0,1,2,3'); +$build->builds->range('[]'); +$build->system->range('0-2'); +$build->name->range('Build{10}'); +$build->builder->range('admin,user1,user2'); +$build->deleted->range('0'); +$build->gen(10); + +$projectProduct = zenData('projectproduct'); +$projectProduct->project->range('1-20'); +$projectProduct->product->range('1-5'); +$projectProduct->gen(20); + +$user = zenData('user'); +$user->id->range('1-5'); +$user->account->range('admin,user1,user2,user3,user4'); +$user->realname->range('管理员,用户1,用户2,用户3,用户4'); +$user->deleted->range('0'); +$user->gen(5); + +global $tester; +$tester->app->rawModule = 'build'; +$tester->app->rawMethod = 'edit'; +$tester->app->tab = 'project'; +$tester->app->moduleName = 'build'; +$tester->app->methodName = 'edit'; +$_SESSION['project'] = 1; + +su('admin'); + +$buildTest = new buildZenTest(); + +$build1 = new stdclass(); +$build1->id = 1; +$build1->project = 1; +$build1->product = 1; +$build1->branch = '0'; +$build1->execution = 11; +$build1->builds = ''; +$build1->system = 0; +$build1->name = 'Build1'; + +$build2 = new stdclass(); +$build2->id = 2; +$build2->project = 1; +$build2->product = 2; +$build2->branch = '0'; +$build2->execution = 0; +$build2->builds = '1'; +$build2->system = 1; +$build2->name = 'Build2'; + +$build3 = new stdclass(); +$build3->id = 3; +$build3->project = 2; +$build3->product = 4; +$build3->branch = '1,2'; +$build3->execution = 13; +$build3->builds = ''; +$build3->system = 0; +$build3->name = 'Build3'; + +$build4 = new stdclass(); +$build4->id = 4; +$build4->project = 1; +$build4->product = 6; +$build4->branch = '0'; +$build4->execution = 11; +$build4->builds = ''; +$build4->system = 0; +$build4->name = 'Build4'; + +$build5 = new stdclass(); +$build5->id = 5; +$build5->project = 1; +$build5->product = 1; +$build5->branch = '0'; +$build5->execution = 21; +$build5->builds = ''; +$build5->system = 0; +$build5->name = 'Build5'; + +r($buildTest->assignEditDataTest($build1)) && p('products:1') && e('Product1'); +r($buildTest->assignEditDataTest($build2)) && p('executionType') && e('0'); +r($buildTest->assignEditDataTest($build3)) && p('products:4') && e('ProductBranch1'); +r($buildTest->assignEditDataTest($build4)) && p('product:name') && e('Product6'); +r($buildTest->assignEditDataTest($build5)) && p('executionType') && e('0'); \ No newline at end of file diff --git a/module/build/test/zen/yaml/assigneditdata/branch.yaml b/module/build/test/zen/yaml/assigneditdata/branch.yaml new file mode 100644 index 0000000000..746656a325 --- /dev/null +++ b/module/build/test/zen/yaml/assigneditdata/branch.yaml @@ -0,0 +1,46 @@ +--- +title: 分支数据for assignEditData测试 +desc: 为assignEditData方法提供分支测试数据 +author: system +version: 1.0 + +fields: +- field: id + note: 分支ID + range: 1-10 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: product + note: 产品ID + range: 1-5 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: name + note: 分支名称 + range: '主干,分支一,分支二,分支三,分支四{6}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: status + note: 分支状态 + range: 'active{8},closed{2}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: deleted + note: 是否删除 + range: '0' + prefix: "" + postfix: "" + loop: 0 + format: "" diff --git a/module/build/test/zen/yaml/assigneditdata/build.yaml b/module/build/test/zen/yaml/assigneditdata/build.yaml new file mode 100644 index 0000000000..0a0e92099b --- /dev/null +++ b/module/build/test/zen/yaml/assigneditdata/build.yaml @@ -0,0 +1,94 @@ +--- +title: 版本编辑数据分配测试数据 +desc: 为assignEditData方法提供版本测试数据 +author: system +version: 1.0 + +fields: +- field: id + note: 版本ID + range: 1-10 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: project + note: 项目ID + range: 1-3 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: product + note: 产品ID + range: 1-5 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: branch + note: 分支ID + range: '0,1,2,3' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: execution + note: 执行ID + range: '0,1,2,3' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: builds + note: 关联版本 + range: '[]' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: system + note: 系统ID + range: 0-2 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: name + note: 版本名称 + range: 'Build{10}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: date + note: 创建日期 + range: '2023-01-01:2023-12-31' + prefix: "" + postfix: "" + loop: 0 + format: "YYYY-MM-DD" + +- field: builder + note: 构建者 + range: 'admin,user1,user2' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: deleted + note: 是否删除 + range: '0' + prefix: "" + postfix: "" + loop: 0 + format: "" diff --git a/module/build/test/zen/yaml/assigneditdata/execution.yaml b/module/build/test/zen/yaml/assigneditdata/execution.yaml new file mode 100644 index 0000000000..c77a05a34f --- /dev/null +++ b/module/build/test/zen/yaml/assigneditdata/execution.yaml @@ -0,0 +1,54 @@ +--- +title: 执行数据for assignEditData测试 +desc: 为assignEditData方法提供执行测试数据 +author: system +version: 1.0 + +fields: +- field: id + note: 执行ID + range: 1-10 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: project + note: 项目ID + range: 1-3 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: name + note: 执行名称 + range: 'Sprint{5},迭代{5}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: type + note: 执行类型 + range: 'sprint{5},stage{5}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: status + note: 执行状态 + range: 'wait{2},doing{5},done{3}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: deleted + note: 是否删除 + range: '0' + prefix: "" + postfix: "" + loop: 0 + format: "" diff --git a/module/build/test/zen/yaml/assigneditdata/product.yaml b/module/build/test/zen/yaml/assigneditdata/product.yaml new file mode 100644 index 0000000000..9cfc4e97d5 --- /dev/null +++ b/module/build/test/zen/yaml/assigneditdata/product.yaml @@ -0,0 +1,62 @@ +--- +title: 产品数据for assignEditData测试 +desc: 为assignEditData方法提供产品测试数据 +author: system +version: 1.0 + +fields: +- field: id + note: 产品ID + range: 1-10 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: name + note: 产品名称 + range: 'Product1,Product2,Product3,ProductBranch1,ProductBranch2,Product6{5}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: type + note: 产品类型 + range: 'normal{6},branch{4}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: status + note: 产品状态 + range: 'normal{10}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: acl + note: 访问控制 + range: 'open{6},private{2},custom{2}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: createdBy + note: 创建者 + range: 'admin,user1,user2' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: deleted + note: 是否删除 + range: '0' + prefix: "" + postfix: "" + loop: 0 + format: "" diff --git a/module/build/test/zen/yaml/assigneditdata/project.yaml b/module/build/test/zen/yaml/assigneditdata/project.yaml new file mode 100644 index 0000000000..a6db737a39 --- /dev/null +++ b/module/build/test/zen/yaml/assigneditdata/project.yaml @@ -0,0 +1,62 @@ +--- +title: 项目数据for assignEditData测试 +desc: 为assignEditData方法提供项目测试数据 +author: system +version: 1.0 + +fields: +- field: id + note: 项目ID + range: 1-10 + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: name + note: 项目名称 + range: 'Project{10}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: type + note: 项目类型 + range: 'project{10}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: status + note: 项目状态 + range: 'wait{2},doing{5},done{3}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: model + note: 项目模型 + range: 'scrum{5},waterfall{3},kanban{2}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: hasProduct + note: 是否关联产品 + range: '1{8},0{2}' + prefix: "" + postfix: "" + loop: 0 + format: "" + +- field: deleted + note: 是否删除 + range: '0' + prefix: "" + postfix: "" + loop: 0 + format: ""