Compare commits

...

2 Commits

3 changed files with 6 additions and 4 deletions

View File

@ -11,7 +11,8 @@ module Travis::API::V3
end end
def update(settings = {}) def update(settings = {})
repository.user_settings.update(settings) repository.settings = repository.user_settings.update(settings).to_json
repository.settings_will_change!
repository.save! repository.save!
end end
end end

View File

@ -35,7 +35,7 @@ module Travis::API::V3
@@prefixed_params_accessor = <<-RUBY @@prefixed_params_accessor = <<-RUBY
def %<prefix>s_params def %<prefix>s_params
@%<prefix>s ||= begin @%<prefix>s ||= begin
params = @params.select { |key, _| key.start_with?('%<prefix>s.'.freeze) } params.select { |key, _| key.start_with?('%<prefix>s.'.freeze) }
Hash[params.map { |key, value| [key.split('.'.freeze).last, value] }] Hash[params.map { |key, value| [key.split('.'.freeze).last, value] }]
end end
end end

View File

@ -91,7 +91,7 @@ describe Travis::API::V3::Services::Settings, set_app: true do
end end
describe 'authenticated, existing repo' do describe 'authenticated, existing repo' do
let(:params) { JSON.dump('settings.build_pushes' => false) } let(:params) { JSON.dump('settings.build_pushes' => false, 'maximum_number_of_builds' => 4) }
before do before do
repo.update_attributes(settings: JSON.dump('maximum_number_of_builds' => 20)) repo.update_attributes(settings: JSON.dump('maximum_number_of_builds' => 20))
@ -105,8 +105,9 @@ describe Travis::API::V3::Services::Settings, set_app: true do
'builds_only_with_travis_yml' => false, 'builds_only_with_travis_yml' => false,
'build_pushes' => false, 'build_pushes' => false,
'build_pull_requests' => true, 'build_pull_requests' => true,
'maximum_number_of_builds' => 20 'maximum_number_of_builds' => 4
) )
expect(repo.reload.user_settings.maximum_number_of_builds).to eq(4)
end end
end end
end end