FIX: regression around rate limiter

This commit is contained in:
Sam
2017-12-04 21:44:16 +11:00
parent dd70ef3abf
commit 5a9622163d
3 changed files with 17 additions and 7 deletions

View File

@@ -39,12 +39,22 @@ describe RateLimiter do
context 'global rate limiter' do
it 'can operate in global mode' do
limiter = RateLimiter.new(nil, "test", 2, 10, global: true)
limiter = RateLimiter.new(nil, "test", 2, 30, global: true)
limiter.clear!
thrown = false
limiter.performed!
limiter.performed!
expect { limiter.performed! }.to raise_error(RateLimiter::LimitExceeded)
begin
limiter.performed!
rescue RateLimiter::LimitExceeded => e
expect(e.available_in.class).to eq(Integer)
expect(e.available_in).to be > 28
expect(e.available_in).to be < 32
thrown = true
end
expect(thrown).to be(true)
end
end