Update limit method and finish test

This commit is contained in:
Ana Rosas 2016-04-04 16:13:14 +02:00
parent 24b2abdfd0
commit 0e8fe08f7c
3 changed files with 16 additions and 16 deletions

View File

@ -48,7 +48,7 @@ GIT
GIT GIT
remote: git://github.com/travis-ci/travis-core.git remote: git://github.com/travis-ci/travis-core.git
revision: 57634c3103dec6472bf732de5f051702224dc345 revision: 9978518236afb520c8fff68bebe7beb62f8ad776
specs: specs:
travis-core (0.0.1) travis-core (0.0.1)
actionmailer (~> 3.2.19) actionmailer (~> 3.2.19)
@ -56,7 +56,7 @@ GIT
coder (~> 0.4.0) coder (~> 0.4.0)
data_migrations (~> 0.0.1) data_migrations (~> 0.0.1)
gh gh
hashr (~> 0.0.19) hashr
metriks (~> 0.9.7) metriks (~> 0.9.7)
multi_json multi_json
pusher (~> 0.14.0) pusher (~> 0.14.0)
@ -388,6 +388,3 @@ DEPENDENCIES
travis-yaml! travis-yaml!
unicorn unicorn
yard-sinatra! yard-sinatra!
BUNDLED WITH
1.10.6

View File

@ -23,7 +23,11 @@ module Travis::API::V3
end end
def limit(repository) def limit(repository)
repository.settings.try(:api_builds_rate_limit) || LIMIT if repository.settings.nil?
LIMIT
else
repository.settings["api_builds_rate_limit"] || LIMIT
end
end end
def remaining_requests(repository) def remaining_requests(repository)

View File

@ -240,19 +240,18 @@ describe Travis::API::V3::Services::Requests::Create do
end end
describe "overrides default request limit if included in repository.settings" do describe "overrides default request limit if included in repository.settings" do
let(:repository) { Travis::API::V3::Models::Repository.create(owner_name: 'svenfuchs', name: 'minimal', settings: { "api_builds_rate_limit" => "11" } )} before { repo.update_attribute(:settings, { api_builds_rate_limit: 12 }.to_json) }
before { 10.times { repository.requests.create(event_type: 'api', result: 'accepted') } }
before { post("/v3/repo/#{repository.id}/requests", params, headers) }
example { expect(last_response.status).to be == 200 } before { 10.times { repo.requests.create(event_type: 'api', result: 'accepted') } }
example { expect(JSON.load(body).to_s).to include( before { post("/v3/repo/#{repo.id}/requests", {}, headers) }
example { expect(last_response.status).to be == 202 }
example { expect(JSON.load(body).to_s).to include(
"@type", "@type",
"error",
"error_type",
"request_limit_reached",
"error_message",
"request limit reached for resource",
"repository", "repository",
"remaining_requests",
"2",
"request",
"representation", "representation",
"minimal", "minimal",
"slug", "slug",