#!/usr/bin/env php gen(5); global $app; $app->rawModule = 'gitlab'; $app->rawMethod = 'browse'; $gitlab = $tester->loadModel('gitlab'); $gitlabID = 1; /* Create test project first. */ $project = new stdclass(); $project->name = 'unitTestProject99'; $project->path = 'unit_test_project99'; $project->description = 'unit_test_project desc'; $project->visibility = 'public'; $project->namespace_id = '1'; $gitlab->apiCreateProject($gitlabID, $project); /* Get projectID. */ $gitlabProjects = $gitlab->apiGetProjects($gitlabID); $projectID = 0; foreach($gitlabProjects as $gitlabProject) { if($gitlabProject->name == 'unitTestProject99') { $projectID = $gitlabProject->id; break; } } /* Test cases. */ $emptyProject = new stdclass(); $emptyProject->description = 'test description'; $invalidProject = new stdclass(); $invalidProject->id = $projectID; $invalidProject->description = 'apiUpdatedProject'; $validProject = new stdclass(); $validProject->id = $projectID; $validProject->description = 'apiUpdatedProject'; $multiAttrProject = new stdclass(); $multiAttrProject->id = $projectID; $multiAttrProject->name = 'Updated Project Name'; $multiAttrProject->description = 'Updated description'; $nonExistentProject = new stdclass(); $nonExistentProject->id = 888888; $nonExistentProject->description = 'Non-existent project'; r($gitlab->apiUpdateProject($gitlabID, $emptyProject)) && p() && e('0'); r($gitlab->apiUpdateProject(0, $invalidProject)) && p() && e('0'); r($gitlab->apiUpdateProject($gitlabID, $validProject)) && p('description') && e('apiUpdatedProject'); r($gitlab->apiUpdateProject($gitlabID, $multiAttrProject)) && p('name') && e('Updated Project Name'); r($gitlab->apiUpdateProject($gitlabID, $nonExistentProject)) && p() && e('~~');