summaryrefslogtreecommitdiffstats
path: root/vendor/code.gitea.io/sdk/gitea/pull_review.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/code.gitea.io/sdk/gitea/pull_review.go')
-rw-r--r--vendor/code.gitea.io/sdk/gitea/pull_review.go123
1 files changed, 114 insertions, 9 deletions
diff --git a/vendor/code.gitea.io/sdk/gitea/pull_review.go b/vendor/code.gitea.io/sdk/gitea/pull_review.go
index fc0c22c2d7..fa7921b023 100644
--- a/vendor/code.gitea.io/sdk/gitea/pull_review.go
+++ b/vendor/code.gitea.io/sdk/gitea/pull_review.go
@@ -33,15 +33,19 @@ const (
// PullReview represents a pull request review
type PullReview struct {
- ID int64 `json:"id"`
- Reviewer *User `json:"user"`
- State ReviewStateType `json:"state"`
- Body string `json:"body"`
- CommitID string `json:"commit_id"`
- Stale bool `json:"stale"`
- Official bool `json:"official"`
- CodeCommentsCount int `json:"comments_count"`
- Submitted time.Time `json:"submitted_at"`
+ ID int64 `json:"id"`
+ Reviewer *User `json:"user"`
+ ReviewerTeam *Team `json:"team"`
+ State ReviewStateType `json:"state"`
+ Body string `json:"body"`
+ CommitID string `json:"commit_id"`
+ // Stale indicates if the pull has changed since the review
+ Stale bool `json:"stale"`
+ // Official indicates if the review counts towards the required approval limit, if PR base is a protected branch
+ Official bool `json:"official"`
+ Dismissed bool `json:"dismissed"`
+ CodeCommentsCount int `json:"comments_count"`
+ Submitted time.Time `json:"submitted_at"`
HTMLURL string `json:"html_url"`
HTMLPullURL string `json:"pull_request_url"`
@@ -93,6 +97,17 @@ type SubmitPullReviewOptions struct {
Body string `json:"body"`
}
+// DismissPullReviewOptions are options to dismiss a pull review
+type DismissPullReviewOptions struct {
+ Message string `json:"message"`
+}
+
+// PullReviewRequestOptions are options to add or remove pull review requests
+type PullReviewRequestOptions struct {
+ Reviewers []string `json:"reviewers"`
+ TeamReviewers []string `json:"team_reviewers"`
+}
+
// ListPullReviewsOptions options for listing PullReviews
type ListPullReviewsOptions struct {
ListOptions
@@ -132,6 +147,9 @@ func (opt CreatePullReviewComment) Validate() error {
// ListPullReviews lists all reviews of a pull request
func (c *Client) ListPullReviews(owner, repo string, index int64, opt ListPullReviewsOptions) ([]*PullReview, *Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, nil, err
+ }
if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
return nil, nil, err
}
@@ -147,6 +165,9 @@ func (c *Client) ListPullReviews(owner, repo string, index int64, opt ListPullRe
// GetPullReview gets a specific review of a pull request
func (c *Client) GetPullReview(owner, repo string, index, id int64) (*PullReview, *Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, nil, err
+ }
if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
return nil, nil, err
}
@@ -158,6 +179,9 @@ func (c *Client) GetPullReview(owner, repo string, index, id int64) (*PullReview
// ListPullReviewComments lists all comments of a pull request review
func (c *Client) ListPullReviewComments(owner, repo string, index, id int64) ([]*PullReviewComment, *Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, nil, err
+ }
if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
return nil, nil, err
}
@@ -170,6 +194,9 @@ func (c *Client) ListPullReviewComments(owner, repo string, index, id int64) ([]
// DeletePullReview delete a specific review from a pull request
func (c *Client) DeletePullReview(owner, repo string, index, id int64) (*Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, err
+ }
if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
return nil, err
}
@@ -180,6 +207,9 @@ func (c *Client) DeletePullReview(owner, repo string, index, id int64) (*Respons
// CreatePullReview create a review to an pull request
func (c *Client) CreatePullReview(owner, repo string, index int64, opt CreatePullReviewOptions) (*PullReview, *Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, nil, err
+ }
if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
return nil, nil, err
}
@@ -200,6 +230,9 @@ func (c *Client) CreatePullReview(owner, repo string, index int64, opt CreatePul
// SubmitPullReview submit a pending review to an pull request
func (c *Client) SubmitPullReview(owner, repo string, index, id int64, opt SubmitPullReviewOptions) (*PullReview, *Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, nil, err
+ }
if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
return nil, nil, err
}
@@ -217,3 +250,75 @@ func (c *Client) SubmitPullReview(owner, repo string, index, id int64, opt Submi
jsonHeader, bytes.NewReader(body), r)
return r, resp, err
}
+
+// CreateReviewRequests create review requests to an pull request
+func (c *Client) CreateReviewRequests(owner, repo string, index int64, opt PullReviewRequestOptions) (*Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, err
+ }
+ if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
+ return nil, err
+ }
+ body, err := json.Marshal(&opt)
+ if err != nil {
+ return nil, err
+ }
+
+ _, resp, err := c.getResponse("POST",
+ fmt.Sprintf("/repos/%s/%s/pulls/%d/requested_reviewers", owner, repo, index),
+ jsonHeader, bytes.NewReader(body))
+ return resp, err
+}
+
+// DeleteReviewRequests delete review requests to an pull request
+func (c *Client) DeleteReviewRequests(owner, repo string, index int64, opt PullReviewRequestOptions) (*Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, err
+ }
+ if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
+ return nil, err
+ }
+ body, err := json.Marshal(&opt)
+ if err != nil {
+ return nil, err
+ }
+
+ _, resp, err := c.getResponse("DELETE",
+ fmt.Sprintf("/repos/%s/%s/pulls/%d/requested_reviewers", owner, repo, index),
+ jsonHeader, bytes.NewReader(body))
+ return resp, err
+}
+
+// DismissPullReview dismiss a review for a pull request
+func (c *Client) DismissPullReview(owner, repo string, index, id int64, opt DismissPullReviewOptions) (*Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, err
+ }
+ if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
+ return nil, err
+ }
+ body, err := json.Marshal(&opt)
+ if err != nil {
+ return nil, err
+ }
+
+ _, resp, err := c.getResponse("POST",
+ fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d/dismissals", owner, repo, index, id),
+ jsonHeader, bytes.NewReader(body))
+ return resp, err
+}
+
+// UnDismissPullReview cancel to dismiss a review for a pull request
+func (c *Client) UnDismissPullReview(owner, repo string, index, id int64) (*Response, error) {
+ if err := escapeValidatePathSegments(&owner, &repo); err != nil {
+ return nil, err
+ }
+ if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
+ return nil, err
+ }
+
+ _, resp, err := c.getResponse("POST",
+ fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d/undismissals", owner, repo, index, id),
+ jsonHeader, nil)
+ return resp, err
+}