diff --git a/module/gitlab/model.php b/module/gitlab/model.php index 59d3534d90..f6691e337c 100644 --- a/module/gitlab/model.php +++ b/module/gitlab/model.php @@ -2422,6 +2422,7 @@ class gitlabModel extends model */ public function apiCreateBranchPriv($gitlabID, $projectID, $priv) { + if(empty($gitlabID)) return false; if(empty($priv->name)) return false; $url = sprintf($this->getApiRoot($gitlabID), "/projects/" . $projectID . '/protected_branches'); return json_decode(commonModel::http($url, $priv)); @@ -2438,6 +2439,7 @@ class gitlabModel extends model */ public function apiDeleteBranchPriv($gitlabID, $projectID, $branch) { + if(empty($gitlabID)) return false; $apiRoot = $this->getApiRoot($gitlabID); $url = sprintf($apiRoot, "/projects/{$projectID}/protected_branches/{$branch}"); return json_decode(commonModel::http($url, array(), $options = array(CURLOPT_CUSTOMREQUEST => 'DELETE'))); diff --git a/test/model/gitlab/apideletebranchpriv.php b/test/model/gitlab/apideletebranchpriv.php new file mode 100644 index 0000000000..b7d0761381 --- /dev/null +++ b/test/model/gitlab/apideletebranchpriv.php @@ -0,0 +1,40 @@ +#!/usr/bin/env php +> return false +使用正确的gitlabID、保护分支信息,错误的projectID删除保护分支 >> 404 Project Not Found +使用正确的gitlabID,projectID,保护分支删除保护分支 >> return true +使用错误的保护分支信息删除保护分支 >> 404 Not found + +*/ + +$gitlab = $tester->loadModel('gitlab'); + +$gitlabID = 0; +$projectID = 0; +$branch = ''; + +$result = $gitlab->apiDeleteBranchPriv($gitlabID, $projectID, $branch); +if($result === false) $result = 'return false'; +r($result) && p() && e('return false'); //使用空的gitlabID,projectID,分支名称删除保护分支 + +$gitlabID = 1; +$branch = 'master'; +$result = $gitlab->apiDeleteBranchPriv($gitlabID, $projectID, $branch); +r($result) && p('message') && e('404 Project Not Found'); //使用正确的gitlabID、保护分支信息,错误的projectID删除保护分支 + +$projectID = 1565; +$result = $gitlab->apiDeleteBranchPriv($gitlabID, $projectID, $branch); +if(!$result or substr($result->message, 0, 2) == '20') $result = 'return true'; +r($result) && p() && e('return true'); //通过gitlabID,projectID,分支名称正确删除保护分支 + +$branch = 'masters'; +$result = $gitlab->apiDeleteBranchPriv($gitlabID, $projectID, $branch); +r($result) && p('message') && e('404 Not found'); //使用错误的保护分支信息删除保护分支 diff --git a/test/model/gitlab/apigetsinglebranchpriv.php b/test/model/gitlab/apigetsinglebranchpriv.php index 08269963bd..d9f2f4d12e 100644 --- a/test/model/gitlab/apigetsinglebranchpriv.php +++ b/test/model/gitlab/apigetsinglebranchpriv.php @@ -9,9 +9,9 @@ cid=1 pid=1 使用空的gitlabID、projectID、保护分支获取保护分支 >> return false -使用正确的gitlabID、保护分支信息,错误的projectID创建保护分支 >> 404 Project Not Found +使用正确的gitlabID、保护分支信息,错误的projectID获取保护分支 >> 404 Project Not Found 使用正确的gitlabID,projectID,保护分支获取保护分支 >> master -使用错误的保护分支信息创建保护分支 >> 404 Not found +使用错误的保护分支信息获取保护分支 >> 404 Not found */ @@ -34,6 +34,6 @@ $projectID = 1565; $result = $gitlab->apiGetSingleBranchPriv($gitlabID, $projectID, $branch); r($result) && p('name') && e('master'); //通过gitlabID,projectID,分支名称正确获取保护分支 -$branch = 'masters'; +$branch = 'masters'; $result = $gitlab->apiGetSingleBranchPriv($gitlabID, $projectID, $branch); -r($result) && p('message') && e('404 Not found'); //使用错误的保护分支信息创建保护分支 +r($result) && p('message') && e('404 Not found'); //使用错误的保护分支信息获取保护分支