Class: GitlabQuality::TestTooling::GitlabClient::IssuesDryClient

Inherits:
IssuesClient show all
Defined in:
lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb

Constant Summary

Constants inherited from IssuesClient

GitlabQuality::TestTooling::GitlabClient::IssuesClient::REPORTER_ACCESS_LEVEL

Constants inherited from GitlabClient

GitlabClient::MAX_RETRY_ATTEMPTS, GitlabClient::RETRY_BACK_OFF_DELAY

Instance Method Summary collapse

Methods inherited from IssuesClient

#assert_user_permission!, #create_issue_link, #find_commit, #find_commit_diff, #find_commit_parent, #find_deployments, #find_issue_discussions, #find_issue_notes, #find_issues, #find_pipeline, #find_user_id, #get_note_award_emojis, #issue_links, #related_merge_requests

Methods inherited from GitlabClient

#handle_gitlab_client_exceptions, #ignore_gitlab_client_exceptions, #initialize, #post_exception_to_slack

Constructor Details

This class inherits a constructor from GitlabQuality::TestTooling::GitlabClient::GitlabClient

Instance Method Details

#add_note_to_issue_discussion_as_thread(iid:, discussion_id:, note:) ⇒ Object



30
31
32
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 30

def add_note_to_issue_discussion_as_thread(iid:, discussion_id:, note:)
  puts "The following discussion note would have been posted on #{project}##{iid} (discussion #{discussion_id}) issue:\n\n #{note}"
end

#create_issue(title:, description:, labels:, assignee_id: 'unknown', issue_type: 'issue', confidential: false) ⇒ Object



7
8
9
10
11
12
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 7

def create_issue(title:, description:, labels:, assignee_id: 'unknown', issue_type: 'issue', confidential: false)
  attrs = { description: description, labels: labels, confidential: confidential, assignee_id: assignee_id }

  puts "The following #{issue_type} would have been created:"
  puts "project: #{project}, title: #{title}, attrs: #{attrs}"
end

#create_issue_discussion(iid:, note:) ⇒ Object



26
27
28
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 26

def create_issue_discussion(iid:, note:)
  puts "The following discussion would have been posted on #{project}##{iid} issue:\n\n #{note}"
end

#create_issue_note(iid:, note:) ⇒ Object



18
19
20
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 18

def create_issue_note(iid:, note:)
  puts "The following note would have been posted on #{project}##{iid} issue: #{note}"
end

#edit_issue(iid:, options: {}) ⇒ Object



14
15
16
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 14

def edit_issue(iid:, options: {})
  puts "The #{project}##{iid} issue would have been updated with: #{options}"
end

#edit_issue_note(issue_iid:, note_id:, note:) ⇒ Object



22
23
24
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 22

def edit_issue_note(issue_iid:, note_id:, note:)
  puts "The following note would have been edited on #{project}##{issue_iid} (note #{note_id}) issue:\n\n #{note}"
end

#upload_file(file_fullpath:) ⇒ Object



34
35
36
# File 'lib/gitlab_quality/test_tooling/gitlab_client/issues_dry_client.rb', line 34

def upload_file(file_fullpath:)
  puts "The following file would have been uploaded: #{file_fullpath}"
end