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
post "register" do
required_attributes! [:token]
attributes = { description: params[:description],
tag_list: params[:tag_list],
locked: !!params[:locked] }
unless params[:run_untagged].nil?
attributes[:run_untagged] = params[:run_untagged]
end
attributes = attributes_for_keys(
[:description, :tag_list, :run_untagged, :locked]
)
runner =
if runner_registration_token_valid?
......
......@@ -187,14 +187,16 @@ describe API::Runners, api: true do
update_runner(shared_runner.id, admin, description: "#{description}_updated",
active: !active,
tag_list: ['ruby2.1', 'pgsql', 'mysql'],
run_untagged: 'false')
run_untagged: 'false',
locked: 'true')
shared_runner.reload
expect(response.status).to eq(200)
expect(shared_runner.description).to eq("#{description}_updated")
expect(shared_runner.active).to eq(!active)
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
......
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