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

View File

@ -23,7 +23,11 @@ module Travis::API::V3
end
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
def remaining_requests(repository)

View File

@ -240,19 +240,18 @@ describe Travis::API::V3::Services::Requests::Create do
end
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 { 10.times { repository.requests.create(event_type: 'api', result: 'accepted') } }
before { post("/v3/repo/#{repository.id}/requests", params, headers) }
before { repo.update_attribute(:settings, { api_builds_rate_limit: 12 }.to_json) }
example { expect(last_response.status).to be == 200 }
before { 10.times { repo.requests.create(event_type: 'api', result: 'accepted') } }
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",
"error",
"error_type",
"request_limit_reached",
"error_message",
"request limit reached for resource",
"repository",
"remaining_requests",
"2",
"request",
"representation",
"minimal",
"slug",