znt/module/programplan/test/model/isclickable.php

66 lines
2.7 KiB
PHP
Raw Permalink Normal View History

#!/usr/bin/env php
<?php
/**
title=测试 programplanModel::isClickable();
timeout=0
cid=17751
- 步骤1测试空阶段对象的非create操作权限 @1
- 步骤2测试空阶段对象的create操作权限 @1
- 步骤3测试有ID但无任务的阶段create操作权限 @1
- 步骤4测试有ID且有任务的阶段create操作权限 @0
- 步骤5测试有ID阶段的非create操作权限 @1
- 步骤6测试大小写敏感的CREATE操作权限 @0
- 步骤7测试只有已删除任务的阶段create操作权限 @1
*/
// 1. 导入依赖
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/model.class.php';
// 2. zendata数据准备
$project = zenData('project');
$project->id->range('1-10');
$project->name->range('阶段1,阶段2,阶段3,阶段4,阶段5,阶段6,阶段7,阶段8,阶段9,阶段10');
$project->type->range('stage{5},sprint{5}');
$project->status->range('wait{3},doing{4},done{3}');
$project->deleted->range('0{9},1{1}');
$project->gen(10);
$task = zenData('task');
$task->id->range('1-15');
$task->execution->range('6{5},7{3},8{2},9{3},11{2}');
$task->name->range('任务1,任务2,任务3,任务4,任务5,任务6,任务7,任务8,任务9,任务10,任务11,任务12,任务13,任务14,任务15');
$task->status->range('wait{5},doing{5},done{5}');
$task->deleted->range('0{13},1{2}');
$task->gen(15);
// 3. 用户登录
su('admin');
// 4. 创建测试实例
$programplanTest = new programplanModelTest();
// 5. 测试数据准备
$emptyStage = new stdclass();
$stageWithoutTasks = new stdclass();
$stageWithoutTasks->id = 5;
$stageWithTasks = new stdclass();
$stageWithTasks->id = 6;
$stageWithDeletedTasks = new stdclass();
$stageWithDeletedTasks->id = 10;
// 6. 执行测试步骤至少5个
r($programplanTest->isClickableTest($emptyStage, 'close')) && p() && e('1'); // 步骤1测试空阶段对象的非create操作权限
r($programplanTest->isClickableTest($emptyStage, 'create')) && p() && e('1'); // 步骤2测试空阶段对象的create操作权限
r($programplanTest->isClickableTest($stageWithoutTasks, 'create')) && p() && e('1'); // 步骤3测试有ID但无任务的阶段create操作权限
r($programplanTest->isClickableTest($stageWithTasks, 'create')) && p() && e('0'); // 步骤4测试有ID且有任务的阶段create操作权限
r($programplanTest->isClickableTest($stageWithTasks, 'edit')) && p() && e('1'); // 步骤5测试有ID阶段的非create操作权限
r($programplanTest->isClickableTest($stageWithTasks, 'CREATE')) && p() && e('0'); // 步骤6测试大小写敏感的CREATE操作权限
r($programplanTest->isClickableTest($stageWithDeletedTasks, 'create')) && p() && e('1'); // 步骤7测试只有已删除任务的阶段create操作权限