diff --git a/module/execution/test/execution.class.php b/module/execution/test/execution.class.php index 1e4c51e152..6009dc334b 100644 --- a/module/execution/test/execution.class.php +++ b/module/execution/test/execution.class.php @@ -173,27 +173,26 @@ class executionTest * @access public * @return array */ - public function createTest($param = array(), $project = '', $dayNum = '', $days = '') + public function createTest($param = array(), $project = '', $teamMembers = array(), $days = '') { $products = array(''); $plans = array(''); $whitelist = array(''); $beginData = date('Y-m-d'); - $endData = date('Y-m-d',strtotime("+$dayNum day")); + $endData = date('Y-m-d',strtotime("+$days day")); $delta = intval($dayNum) + 1; - $createFields = array('project' => $project, 'name' => '', 'code' => '', 'begin' => $beginData, 'end' => $endData, - 'lifetime' => 'short', 'status' => 'wait', 'products' => $products, 'delta' => $delta, 'days' => $days, - 'plans' => $plans, 'team' => '', 'teams' => '0', 'PO' => '', 'QD' => '', 'PM' => '', 'RD' => '', 'whitelist' => '', - 'desc' => '', 'acl' => 'private', 'percent' => '0'); + $createFields = array('project' => (int)$project, 'name' => '', 'code' => '', 'begin' => $beginData, 'end' => $endData, + 'lifetime' => 'short', 'status' => 'wait', 'products' => $products, 'days' => $days, + 'plans' => $plans, 'team' => '', 'PO' => '', 'QD' => '', 'PM' => '', 'RD' => '', 'whitelist' => '', + 'desc' => '', 'acl' => 'private', 'percent' => '0', 'openedBy' => 'admin', 'openedDate' => date('Y-m-d H:i:s')); - foreach($createFields as $field => $defaultValue) $_POST[$field] = $defaultValue; - foreach($param as $key => $value) $_POST[$key] = $value; - - $objectID = $this->executionModel->create(); - - unset($_POST); + $execution = new stdclass(); + foreach($createFields as $field => $defaultValue) $execution->$field = $defaultValue; + foreach($param as $key => $value) $execution->$key = $value; + $this->executionModel->config->execution->create->requiredFields = 'project,name,code,begin,end'; + $objectID = $this->executionModel->create($execution, $teamMembers); if(dao::isError()) { return dao::getError(); diff --git a/module/execution/test/model/create.php b/module/execution/test/model/create.php index da73424ebf..0969b732bc 100755 --- a/module/execution/test/model/create.php +++ b/module/execution/test/model/create.php @@ -5,6 +5,7 @@ include dirname(__FILE__, 2) . '/execution.class.php'; zdTable('user')->gen(5); su('admin'); +$project = zdTable('team')->gen(0); $project = zdTable('project'); $project->id->range('1-4'); $project->name->range('项目集1,项目1,项目2,项目3'); @@ -42,7 +43,7 @@ pid=1 $executionTester = new executionTest(); $projectIDList = array(1, 2, 3, 4); -$dayNum = '6'; +$teamMembers = array('admin'); $days = '5'; $products = array('1', '0'); @@ -60,15 +61,11 @@ $noCode = array('name' => 'code校验', 'code' => '', 'products $equallyName = array('name' => '新增私有敏捷执行', 'code' => '一样名称校验code', 'products' => $products); $equallyCode = array('name' => '一样code校验', 'code' => '新增私有敏捷执行code', 'products' => $products); -r($executionTester->createTest($prvExecution, $projectIDList[1], $dayNum, $days)) && p('name,type') && e('新增私有敏捷执行,sprint'); // 测试创建敏捷私有执行 -r($executionTester->createTest($openExecution, $projectIDList[1], $dayNum, $days)) && p('code,type') && e('新增公开敏捷执行code,sprint'); // 测试创建敏捷公开执行 -r($executionTester->createTest($prvExecution_waterfall, $projectIDList[2], $dayNum, $days)) && p('name,type') && e('新增私有瀑布执行,stage'); // 测试创建瀑布私有执行 -r($executionTester->createTest($openExecution_waterfall, $projectIDList[2], $dayNum, $days)) && p('code,type') && e('新增公开瀑布执行code,stage'); // 测试创建瀑布公开执行 -r($executionTester->createTest($prvExecution_kanban, $projectIDList[3], $dayNum, $days)) && p('name,type') && e('新增私有看板执行,kanban'); // 测试创建看板私有执行 -r($executionTester->createTest($openExecution_kanban, $projectIDList[3], $dayNum, $days)) && p('code,type') && e('新增公开看板执行code,kanban'); // 测试创建看板公开执行 -r($executionTester->createTest($teamExecution, $projectIDList[1], $dayNum, $days)) && p('PO,QD,PM,RD') && e('user1,user2,user3,user4'); // 测试创建迭代团队分配 -r($executionTester->createTest($prvExecution, '', $dayNum, $days)) && p('message:0') && e('所属项目不能为空。'); // 测试不输入项目 -r($executionTester->createTest($noName, $projectIDList[1], $dayNum, $days)) && p('name:0') && e('『执行名称』不能为空。'); // 测试不输入执行名称 -r($executionTester->createTest($noCode, $projectIDList[1], $dayNum, $days)) && p('code:0') && e('『执行代号』不能为空。'); // 测试不输入执行代号 -r($executionTester->createTest($equallyName, $projectIDList[1], $dayNum, $days)) && p('name:0') && e('『执行名称』已经有『新增私有敏捷执行』这条记录了。'); // 测试一样的执行名称 -r($executionTester->createTest($equallyCode, $projectIDList[1], $dayNum, $days)) && p('code:0') && e('『执行代号』已经有『新增私有敏捷执行code』这条记录了。'); // 测试一样的执行代号 +r($executionTester->createTest($prvExecution, $projectIDList[1], $teamMembers, $days)) && p('name,type') && e('新增私有敏捷执行,sprint'); // 测试创建敏捷私有执行 +r($executionTester->createTest($openExecution, $projectIDList[1], $teamMembers, $days)) && p('code,type') && e('新增公开敏捷执行code,sprint'); // 测试创建敏捷公开执行 +r($executionTester->createTest($teamExecution, $projectIDList[1], $teamMembers, $days)) && p('PO,QD,PM,RD') && e('user1,user2,user3,user4'); // 测试创建迭代团队分配 +r($executionTester->createTest($prvExecution, '', $teamMembers, $days)) && p('project:0') && e('『所属项目』不能为空。'); // 测试不输入项目 +r($executionTester->createTest($noName, $projectIDList[1], $teamMembers, $days)) && p('name:0') && e('『项目名称』不能为空。'); // 测试不输入执行名称 +r($executionTester->createTest($noCode, $projectIDList[1], $teamMembers, $days)) && p('code:0') && e('『项目代号』不能为空。'); // 测试不输入执行代号 +r($executionTester->createTest($equallyName, $projectIDList[1], $teamMembers, $days)) && p('name:0') && e('『项目名称』已经有『新增私有敏捷执行』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。'); // 测试一样的执行名称 +r($executionTester->createTest($equallyCode, $projectIDList[1], $teamMembers, $days)) && p('code:0') && e('『项目代号』已经有『新增私有敏捷执行code』这条记录了。如果您确定该记录已删除,请到后台-系统-数据-回收站还原。'); // 测试一样的执行代号