berater 0.6.1 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/berater.rb +29 -15
- data/lib/berater/concurrency_limiter.rb +16 -23
- data/lib/berater/dsl.rb +8 -8
- data/lib/berater/inhibitor.rb +4 -4
- data/lib/berater/limiter.rb +55 -23
- data/lib/berater/limiter_set.rb +66 -0
- data/lib/berater/lock.rb +2 -1
- data/lib/berater/rate_limiter.rb +39 -31
- data/lib/berater/rspec.rb +1 -2
- data/lib/berater/rspec/matchers.rb +11 -31
- data/lib/berater/static_limiter.rb +49 -0
- data/lib/berater/test_mode.rb +27 -23
- data/lib/berater/unlimiter.rb +4 -0
- data/lib/berater/utils.rb +9 -0
- data/lib/berater/version.rb +1 -1
- data/spec/berater_spec.rb +38 -70
- data/spec/concurrency_limiter_spec.rb +59 -53
- data/spec/dsl_refinement_spec.rb +0 -12
- data/spec/dsl_spec.rb +5 -17
- data/spec/inhibitor_spec.rb +10 -5
- data/spec/limiter_set_spec.rb +173 -0
- data/spec/limiter_spec.rb +125 -10
- data/spec/matchers_spec.rb +21 -85
- data/spec/middleware_spec.rb +110 -0
- data/spec/rate_limiter_spec.rb +88 -38
- data/spec/riddle_spec.rb +6 -2
- data/spec/static_limiter_spec.rb +79 -0
- data/spec/test_mode_spec.rb +32 -109
- data/spec/unlimiter_spec.rb +11 -5
- metadata +24 -2
data/spec/unlimiter_spec.rb
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
describe Berater::Unlimiter do
|
2
|
+
subject { described_class.new }
|
3
|
+
|
2
4
|
it_behaves_like 'a limiter', described_class.new
|
3
5
|
|
4
6
|
describe '.new' do
|
5
7
|
it 'initializes without any arguments or options' do
|
6
|
-
|
8
|
+
is_expected.to be_a described_class
|
7
9
|
end
|
8
10
|
|
9
11
|
it 'initializes with any arguments and options' do
|
@@ -11,14 +13,12 @@ describe Berater::Unlimiter do
|
|
11
13
|
end
|
12
14
|
|
13
15
|
it 'has default values' do
|
14
|
-
expect(
|
15
|
-
expect(
|
16
|
+
expect(subject.key).to be :unlimiter
|
17
|
+
expect(subject.redis).to be Berater.redis
|
16
18
|
end
|
17
19
|
end
|
18
20
|
|
19
21
|
describe '#limit' do
|
20
|
-
subject { described_class.new }
|
21
|
-
|
22
22
|
it_behaves_like 'it is not overloaded'
|
23
23
|
|
24
24
|
it 'is never overloaded' do
|
@@ -27,4 +27,10 @@ describe Berater::Unlimiter do
|
|
27
27
|
end
|
28
28
|
end
|
29
29
|
end
|
30
|
+
|
31
|
+
describe '#to_s' do
|
32
|
+
it do
|
33
|
+
expect(subject.to_s).to include described_class.to_s
|
34
|
+
end
|
35
|
+
end
|
30
36
|
end
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: berater
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Pepper
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-04-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: meddleware
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: redis
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -133,11 +147,13 @@ files:
|
|
133
147
|
- lib/berater/dsl.rb
|
134
148
|
- lib/berater/inhibitor.rb
|
135
149
|
- lib/berater/limiter.rb
|
150
|
+
- lib/berater/limiter_set.rb
|
136
151
|
- lib/berater/lock.rb
|
137
152
|
- lib/berater/lua_script.rb
|
138
153
|
- lib/berater/rate_limiter.rb
|
139
154
|
- lib/berater/rspec.rb
|
140
155
|
- lib/berater/rspec/matchers.rb
|
156
|
+
- lib/berater/static_limiter.rb
|
141
157
|
- lib/berater/test_mode.rb
|
142
158
|
- lib/berater/unlimiter.rb
|
143
159
|
- lib/berater/utils.rb
|
@@ -147,11 +163,14 @@ files:
|
|
147
163
|
- spec/dsl_refinement_spec.rb
|
148
164
|
- spec/dsl_spec.rb
|
149
165
|
- spec/inhibitor_spec.rb
|
166
|
+
- spec/limiter_set_spec.rb
|
150
167
|
- spec/limiter_spec.rb
|
151
168
|
- spec/lua_script_spec.rb
|
152
169
|
- spec/matchers_spec.rb
|
170
|
+
- spec/middleware_spec.rb
|
153
171
|
- spec/rate_limiter_spec.rb
|
154
172
|
- spec/riddle_spec.rb
|
173
|
+
- spec/static_limiter_spec.rb
|
155
174
|
- spec/test_mode_spec.rb
|
156
175
|
- spec/unlimiter_spec.rb
|
157
176
|
- spec/utils_spec.rb
|
@@ -183,12 +202,15 @@ test_files:
|
|
183
202
|
- spec/matchers_spec.rb
|
184
203
|
- spec/dsl_refinement_spec.rb
|
185
204
|
- spec/test_mode_spec.rb
|
205
|
+
- spec/middleware_spec.rb
|
186
206
|
- spec/dsl_spec.rb
|
187
207
|
- spec/lua_script_spec.rb
|
188
208
|
- spec/concurrency_limiter_spec.rb
|
189
209
|
- spec/riddle_spec.rb
|
210
|
+
- spec/limiter_set_spec.rb
|
190
211
|
- spec/utils_spec.rb
|
191
212
|
- spec/berater_spec.rb
|
192
213
|
- spec/limiter_spec.rb
|
214
|
+
- spec/static_limiter_spec.rb
|
193
215
|
- spec/inhibitor_spec.rb
|
194
216
|
- spec/unlimiter_spec.rb
|