80 lines
2.5 KiB
PHP
80 lines
2.5 KiB
PHP
|
|
#!/usr/bin/env php
|
|||
|
|
<?php
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
|
|||
|
|
title=测试 executionZen::buildGroupTasks();
|
|||
|
|
timeout=0
|
|||
|
|
cid=16414
|
|||
|
|
|
|||
|
|
- 期望有3个分组 @3
|
|||
|
|
- 期望有4个状态分组 @4
|
|||
|
|
- 期望有4个指派人分组 @4
|
|||
|
|
- 期望有4个完成人分组 @4
|
|||
|
|
- 期望有3个类型分组 @3
|
|||
|
|
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
|||
|
|
include dirname(__FILE__, 2) . '/lib/executionzen.unittest.class.php';
|
|||
|
|
|
|||
|
|
$table = zenData('user');
|
|||
|
|
$table->id->range('1-4');
|
|||
|
|
$table->account->range('user1,user2,user3,user4');
|
|||
|
|
$table->realname->range('用户1,用户2,用户3,用户4');
|
|||
|
|
$table->gen(4);
|
|||
|
|
|
|||
|
|
$table = zenData('story');
|
|||
|
|
$table->id->range('1-2');
|
|||
|
|
$table->title->range('需求1,需求2');
|
|||
|
|
$table->gen(2);
|
|||
|
|
|
|||
|
|
$table = zenData('task');
|
|||
|
|
$table->id->range('1-10');
|
|||
|
|
$table->story->range('1{3},2{3},0{4}');
|
|||
|
|
$table->status->range('wait{2},doing{3},done{3},closed{2}');
|
|||
|
|
$table->assignedTo->range('user1{3},user2{2},user3{2},user4{3}');
|
|||
|
|
$table->finishedBy->range('user1{2},user2{2},user3{3},user4{3}');
|
|||
|
|
$table->closedBy->range('user1{1},user2{1},user3{2},user4{2},{4}');
|
|||
|
|
$table->type->range('devel{4},test{3},design{3}');
|
|||
|
|
$table->gen(10);
|
|||
|
|
|
|||
|
|
$table = zenData('taskteam');
|
|||
|
|
$table->task->range('5{2},6{2}');
|
|||
|
|
$table->account->range('user1,user2,user3,user4');
|
|||
|
|
$table->gen(4);
|
|||
|
|
|
|||
|
|
su('admin');
|
|||
|
|
|
|||
|
|
$executionZenTest = new executionZenTest();
|
|||
|
|
|
|||
|
|
// 准备用户数据
|
|||
|
|
$users = array(
|
|||
|
|
'' => '',
|
|||
|
|
'user1' => '用户1',
|
|||
|
|
'user2' => '用户2',
|
|||
|
|
'user3' => '用户3',
|
|||
|
|
'user4' => '用户4'
|
|||
|
|
);
|
|||
|
|
|
|||
|
|
// 获取任务数据,带storyTitle和assignedToRealName
|
|||
|
|
$tasks = $executionZenTest->tester->dao->select('t.*, s.title as storyTitle, u.realname as assignedToRealName')
|
|||
|
|
->from(TABLE_TASK)->alias('t')
|
|||
|
|
->leftJoin(TABLE_STORY)->alias('s')->on('t.story = s.id')
|
|||
|
|
->leftJoin(TABLE_USER)->alias('u')->on('t.assignedTo = u.account')
|
|||
|
|
->fetchAll();
|
|||
|
|
|
|||
|
|
// 步骤1:按story分组
|
|||
|
|
r($executionZenTest->buildGroupTasksTest('story', $tasks, $users)) && p('0') && e('3'); // 期望有3个分组
|
|||
|
|
|
|||
|
|
// 步骤2:按status分组
|
|||
|
|
r($executionZenTest->buildGroupTasksTest('status', $tasks, $users)) && p('0') && e('4'); // 期望有4个状态分组
|
|||
|
|
|
|||
|
|
// 步骤3:按assignedTo分组
|
|||
|
|
r($executionZenTest->buildGroupTasksTest('assignedTo', $tasks, $users)) && p('0') && e('4'); // 期望有4个指派人分组
|
|||
|
|
|
|||
|
|
// 步骤4:按finishedBy分组
|
|||
|
|
r($executionZenTest->buildGroupTasksTest('finishedBy', $tasks, $users)) && p('0') && e('4'); // 期望有4个完成人分组
|
|||
|
|
|
|||
|
|
// 步骤5:按type分组
|
|||
|
|
r($executionZenTest->buildGroupTasksTest('type', $tasks, $users)) && p('0') && e('3'); // 期望有3个类型分组
|