#!/usr/bin/env php 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操作权限