#!/usr/bin/env php dao->exec("TRUNCATE TABLE zt_release"); $tester->dao->exec("INSERT INTO zt_release (id, name, product, status, stories) VALUES (1, 'Release 1', 1, 'normal', '1,2'), (2, 'Release 2', 1, 'terminate', ''), (3, 'Release 3', 1, 'normal', '1')"); zenData('story')->gen(5); zenData('user')->gen(5); su('admin'); $release = $tester->loadModel('release'); // 测试步骤1:正常状态改为停止维护 $result1 = $release->changeStatus(1, 'terminate'); r($result1) && p() && e('1'); // 测试步骤2:停止维护状态改为正常 $result2 = $release->changeStatus(2, 'normal'); r($result2) && p() && e('1'); // 测试步骤3:测试带发布日期的状态变更 $result3 = $release->changeStatus(1, 'normal', '2024-03-01'); r($result3) && p() && e('1'); // 测试步骤4:测试不存在发布ID的状态变更 $result4 = $release->changeStatus(999, 'normal'); r($result4) && p() && e('1'); // 测试步骤5:验证状态确实被改变了 $changedRelease = $tester->dao->select('status')->from(TABLE_RELEASE)->where('id')->eq(1)->fetch('status'); r($changedRelease) && p() && e('normal');