#!/usr/bin/env php gen(5); zenData('action')->gen(0); // 用户登录 su('admin'); // 创建测试实例 $gitlabTest = new gitlabModelTest(); $gitlabID = 1; $validProjectID = 100; // 测试步骤1:项目名称为空的情况 $emptyNameProject = new stdclass(); $emptyNameProject->description = 'test description'; r($gitlabTest->editProjectTest($gitlabID, $emptyNameProject)) && p('name:0') && e('项目名称不能为空'); // 测试步骤2:正常更新项目信息(模拟成功) $validProject = new stdclass(); $validProject->name = 'valid_project_name'; $validProject->id = $validProjectID; $validProject->description = 'updated description'; r($gitlabTest->editProjectTest($gitlabID, $validProject)) && p() && e('1'); // 测试步骤3:使用无效的gitlabID(模拟API错误) $invalidGitlabID = 999; $testProject = new stdclass(); $testProject->name = 'test_project'; $testProject->id = $validProjectID; r($gitlabTest->editProjectTest($invalidGitlabID, $testProject)) && p() && e('0'); // 测试步骤4:项目对象缺少必要属性 $incompleteProject = new stdclass(); $incompleteProject->description = 'only description'; r($gitlabTest->editProjectTest($gitlabID, $incompleteProject)) && p('name:0') && e('项目名称不能为空'); // 测试步骤5:更新项目名称和描述(完整属性) $fullProject = new stdclass(); $fullProject->name = 'full_project_test'; $fullProject->id = $validProjectID; $fullProject->description = 'comprehensive test project'; $fullProject->visibility = 'private'; r($gitlabTest->editProjectTest($gitlabID, $fullProject)) && p() && e('1');