Commit 781d35c1 authored by Lin Jen-Shin's avatar Lin Jen-Shin

Prefer attributes_for_keys so that it ignores nils

Also add a test for setting locked.
parent 894d22f4
...@@ -28,13 +28,9 @@ module Ci ...@@ -28,13 +28,9 @@ module Ci
post "register" do post "register" do
required_attributes! [:token] required_attributes! [:token]
attributes = { description: params[:description], attributes = attributes_for_keys(
tag_list: params[:tag_list], [:description, :tag_list, :run_untagged, :locked]
locked: !!params[:locked] } )
unless params[:run_untagged].nil?
attributes[:run_untagged] = params[:run_untagged]
end
runner = runner =
if runner_registration_token_valid? if runner_registration_token_valid?
......
...@@ -187,14 +187,16 @@ describe API::Runners, api: true do ...@@ -187,14 +187,16 @@ describe API::Runners, api: true do
update_runner(shared_runner.id, admin, description: "#{description}_updated", update_runner(shared_runner.id, admin, description: "#{description}_updated",
active: !active, active: !active,
tag_list: ['ruby2.1', 'pgsql', 'mysql'], tag_list: ['ruby2.1', 'pgsql', 'mysql'],
run_untagged: 'false') run_untagged: 'false',
locked: 'true')
shared_runner.reload shared_runner.reload
expect(response.status).to eq(200) expect(response.status).to eq(200)
expect(shared_runner.description).to eq("#{description}_updated") expect(shared_runner.description).to eq("#{description}_updated")
expect(shared_runner.active).to eq(!active) expect(shared_runner.active).to eq(!active)
expect(shared_runner.tag_list).to include('ruby2.1', 'pgsql', 'mysql') expect(shared_runner.tag_list).to include('ruby2.1', 'pgsql', 'mysql')
expect(shared_runner.run_untagged?).to be false expect(shared_runner.run_untagged?).to be(false)
expect(shared_runner.locked?).to be(true)
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment