Skip to content

Commit

Permalink
Add fixes for rubocop;
Browse files Browse the repository at this point in the history
However, I disagree with the "too many lines" rule for the specs.
To "fix" we had to make extremly long lines which is not as readable.
  • Loading branch information
john-smith-vc committed Oct 3, 2023
1 parent 96e91f8 commit 51fdbcc
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 34 deletions.
11 changes: 3 additions & 8 deletions lib/gitlab/client/runners.rb
Original file line number Diff line number Diff line change
Expand Up @@ -219,11 +219,10 @@ def verify_auth_registered_runner(token)
# @param [String] group(required) Group ID.
# @param [Hash] options A customizable set of options.
# @return <Gitlab::ObjectifiedHash> Response against runner registration
def create_group_runner(group, options={})
def create_group_runner(group, options = {})
create_runner({ runner_type: 'group_type', group_id: group }.merge(options))
end


# Creates a new project runner with the new Gitlab approach (v16.0+) and returns the id/token information
# https://docs.gitlab.com/ee/api/users.html#create-a-runner
# You must use an access token with the create_runner scope
Expand All @@ -235,11 +234,10 @@ def create_group_runner(group, options={})
# @param [String] project(required) Project ID.
# @param [Hash] options A customizable set of options.
# @return <Gitlab::ObjectifiedHash> Response against runner registration
def create_project_runner(project, options={})
def create_project_runner(project, options = {})
create_runner({ runner_type: 'project_type', project_id: project }.merge(options))
end


# Creates a new instance runner with the new Gitlab approach (v16.0+) and returns the id/token information
# You must be an administrator of the GitLab instance
# You must use an access token with the create_runner scope
Expand All @@ -252,11 +250,10 @@ def create_project_runner(project, options={})
# @param [String] group(required) Project ID.
# @param [Hash] options A customizable set of options.
# @return <Gitlab::ObjectifiedHash> Response against runner registration
def create_instance_runner(options={})
def create_instance_runner(options = {})
create_runner({ runner_type: 'instance_type' }.merge(options))
end


private

# Creates a runner linked to the current user.
Expand All @@ -277,7 +274,5 @@ def create_instance_runner(options={})
def create_runner(options)
post('/user/runners', body: options)
end


end
end
41 changes: 15 additions & 26 deletions spec/gitlab/client/runners_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -243,49 +243,38 @@
end
end


describe 'create_runner' do
it "creates the correct group runner call" do
stub_post('/user/runners', 'create_group_runner_response.json')
.with(body: { runner_type: 'group_type', group_id: 12345, tag_list: ['foo','bar'], description: "desc", locked: false })
it 'creates the correct group runner call' do
stub_post('/user/runners', 'create_group_runner_response.json').with(body: { runner_type: 'group_type', group_id: 12_345, tag_list: %w[foo bar], description: 'desc', locked: false })

@runner_response = Gitlab.create_group_runner(12345, tag_list: ['foo', 'bar'], description: "desc", locked: false)
@runner_response = Gitlab.create_group_runner(12_345, tag_list: %w[foo bar], description: 'desc', locked: false)

expect(a_post('/user/runners')
.with(body: { runner_type: 'group_type', group_id: 12345, tag_list: ['foo','bar'], description: "desc", locked: false }))
.to have_been_made
expect(a_post('/user/runners').with(body: { runner_type: 'group_type', group_id: 12_345, tag_list: %w[foo bar], description: 'desc', locked: false })).to have_been_made

expect(@runner_response.to_h).to eq({"id" => 12345, "token" => "glrt-kyahzxLaj4Dc1jQf4xjX", "token_expires_at" => nil})
expect(@runner_response.to_h).to eq({ 'id' => 12_345, 'token' => 'glrt-kyahzxLaj4Dc1jQf4xjX', 'token_expires_at' => nil })
end

it "creates the correct project runner call" do
stub_post('/user/runners', 'create_project_runner_response.json')
.with(body: { runner_type: 'project_type', project_id: 56789, tag_list: ['foo','bar'], paused: true, maximum_timeout: 60 })
it 'creates the correct project runner call' do
stub_post('/user/runners', 'create_project_runner_response.json').with(body: { runner_type: 'project_type', project_id: 56_789, tag_list: %w[foo bar], paused: true, maximum_timeout: 60 })

@runner_response = Gitlab.create_project_runner(56789, tag_list: ['foo', 'bar'], paused: true, maximum_timeout: 60)
@runner_response = Gitlab.create_project_runner(56_789, tag_list: %w[foo bar], paused: true, maximum_timeout: 60)

expect(a_post('/user/runners')
.with(body: { runner_type: 'project_type', project_id: 56789, tag_list: ['foo','bar'], paused: true, maximum_timeout: 60 }))
.to have_been_made
expect(a_post('/user/runners').with(body: { runner_type: 'project_type', project_id: 56_789, tag_list: %w[foo bar], paused: true, maximum_timeout: 60 })).to have_been_made

expect(@runner_response.to_h).to eq({"id" => 56789, "token" => "glrt-kyahzxLaj4Dc1jQf4xjX", "token_expires_at" => nil})
expect(@runner_response.to_h).to eq({ 'id' => 56_789, 'token' => 'glrt-kyahzxLaj4Dc1jQf4xjX', 'token_expires_at' => nil })
end

it "creates the correct instance runner call" do
stub_post('/user/runners', 'create_instance_runner_response.json')
.with(body: { runner_type: 'instance_type', tag_list: ['foo','bar'], maintenance_note: "note", run_untagged: false, access_level: "ref_protected" })
it 'creates the correct instance runner call' do
stub_post('/user/runners', 'create_instance_runner_response.json').with(body: { runner_type: 'instance_type', tag_list: %w[foo bar], maintenance_note: 'note', run_untagged: false, access_level: 'ref_protected' })

@runner_response = Gitlab.create_instance_runner(tag_list: ['foo', 'bar'], maintenance_note: "note", run_untagged: false, access_level: "ref_protected")
@runner_response = Gitlab.create_instance_runner(tag_list: %w[foo bar], maintenance_note: 'note', run_untagged: false, access_level: 'ref_protected')

expect(a_post('/user/runners')
.with(body: { runner_type: 'instance_type', tag_list: ['foo','bar'], maintenance_note: "note", run_untagged: false, access_level: "ref_protected" }))
.to have_been_made
expect(a_post('/user/runners').with(body: { runner_type: 'instance_type', tag_list: %w[foo bar], maintenance_note: 'note', run_untagged: false, access_level: 'ref_protected' })).to have_been_made

expect(@runner_response.to_h).to eq({"id" => 9171, "token" => "glrt-kyahzxLaj4Dc1jQf4xjX", "token_expires_at" => nil})
expect(@runner_response.to_h).to eq({ 'id' => 9171, 'token' => 'glrt-kyahzxLaj4Dc1jQf4xjX', 'token_expires_at' => nil })
end
end


describe '.delete_registered_runner' do
before do
stub_delete('/runners', 'empty').with(body: { token: '6337ff461c94fd3fa32ba3b1ff4125' })
Expand Down

0 comments on commit 51fdbcc

Please sign in to comment.