routemaster-drain 3.3.0 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 276a80759ce3d7e91723078a885714ae5878a29ac8a013e619274966075bdef8
|
|
4
|
+
data.tar.gz: 04b65e8136d765138f618dffd3121ff9c1e045b80cabf6da6af2073ca2ebe58f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 90fe430dacad9cdac42c97998ccad99a73459237b486e23f0f0bb422399853b96a75d94a911690c1d8e98343370d68a5bd421a41cb0bbc4ff7312be7dd52af98
|
|
7
|
+
data.tar.gz: 1282d36973a326638171e6f9010d212802fc1babb30faef951386601a7e1136590abd1fd8afb609177c0584ef5509c220d5432a108b6e385a3a0bbb5de420c12
|
data/CHANGELOG.md
CHANGED
data/lib/routemaster/drain.rb
CHANGED
data/lib/routemaster/errors.rb
CHANGED
|
@@ -69,5 +69,17 @@ module Routemaster
|
|
|
69
69
|
"Resource Throttling Error"
|
|
70
70
|
end
|
|
71
71
|
end
|
|
72
|
+
|
|
73
|
+
class MethodNotAllowed < BaseError
|
|
74
|
+
def message
|
|
75
|
+
"Method Not Allowed"
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
class ServiceNotAvailable < BaseError
|
|
80
|
+
def message
|
|
81
|
+
"Service Not Available"
|
|
82
|
+
end
|
|
83
|
+
end
|
|
72
84
|
end
|
|
73
85
|
end
|
|
@@ -9,11 +9,13 @@ module Routemaster
|
|
|
9
9
|
(401..401) => Errors::UnauthorizedResourceAccess,
|
|
10
10
|
(403..403) => Errors::UnauthorizedResourceAccess,
|
|
11
11
|
(404..404) => Errors::ResourceNotFound,
|
|
12
|
+
(405..405) => Errors::MethodNotAllowed,
|
|
12
13
|
(409..409) => Errors::ConflictResource,
|
|
13
14
|
(412..412) => Errors::IncompatibleVersion,
|
|
14
15
|
(413..413) => Errors::InvalidResource,
|
|
15
16
|
(429..429) => Errors::ResourceThrottling,
|
|
16
|
-
(407..500) => Errors::FatalResource
|
|
17
|
+
(407..500) => Errors::FatalResource,
|
|
18
|
+
(503..503) => Errors::ServiceNotAvailable
|
|
17
19
|
}.freeze
|
|
18
20
|
|
|
19
21
|
def on_complete(env)
|
|
@@ -21,7 +21,7 @@ describe Routemaster::APIClient do
|
|
|
21
21
|
let(:port) { 8080 }
|
|
22
22
|
let(:service) do
|
|
23
23
|
TestServer.new(port) do |server|
|
|
24
|
-
[400, 401, 403, 404, 409, 412, 413, 429, 500].each do |status_code|
|
|
24
|
+
[400, 401, 403, 404, 405, 409, 412, 413, 429, 500, 503].each do |status_code|
|
|
25
25
|
server.mount_proc "/#{status_code}" do |req, res|
|
|
26
26
|
res.status = status_code
|
|
27
27
|
res.body = { field: 'test' }.to_json
|
|
@@ -139,6 +139,10 @@ describe Routemaster::APIClient do
|
|
|
139
139
|
expect { perform.(host + '/403') }.to raise_error(Routemaster::Errors::UnauthorizedResourceAccess)
|
|
140
140
|
end
|
|
141
141
|
|
|
142
|
+
it 'raises a MethodNotAllowed on 405' do
|
|
143
|
+
expect { perform.(host + '/405') }.to raise_error(Routemaster::Errors::MethodNotAllowed)
|
|
144
|
+
end
|
|
145
|
+
|
|
142
146
|
it 'raises an ConflictResource on 409' do
|
|
143
147
|
expect { perform.(host + '/409') }.to raise_error(Routemaster::Errors::ConflictResource)
|
|
144
148
|
end
|
|
@@ -158,6 +162,10 @@ describe Routemaster::APIClient do
|
|
|
158
162
|
it 'raises an FatalResource on 500' do
|
|
159
163
|
expect { perform.(host + '/500') }.to raise_error(Routemaster::Errors::FatalResource)
|
|
160
164
|
end
|
|
165
|
+
|
|
166
|
+
it 'raises a ServiceNotAvailable on 503' do
|
|
167
|
+
expect { perform.(host + '/503') }.to raise_error(Routemaster::Errors::ServiceNotAvailable)
|
|
168
|
+
end
|
|
161
169
|
end
|
|
162
170
|
|
|
163
171
|
describe '#get' do
|
data/spec/support/server.rb
CHANGED
|
@@ -7,6 +7,7 @@ module WEBrick
|
|
|
7
7
|
module HTTPServlet
|
|
8
8
|
class ProcHandler
|
|
9
9
|
alias do_PATCH do_GET
|
|
10
|
+
alias do_DELETE do_GET
|
|
10
11
|
end
|
|
11
12
|
end
|
|
12
13
|
end
|
|
@@ -25,7 +26,7 @@ class TestServer
|
|
|
25
26
|
DocumentRoot: Dir.pwd,
|
|
26
27
|
Logger: WEBrick::Log.new('/dev/null'),
|
|
27
28
|
AccessLog: [nil, nil]
|
|
28
|
-
).tap do |server|
|
|
29
|
+
).tap do |server|
|
|
29
30
|
@setup.call(server)
|
|
30
31
|
server.start
|
|
31
32
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: routemaster-drain
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Julien Letessier
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2017-11-
|
|
11
|
+
date: 2017-11-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: addressable
|
|
@@ -286,7 +286,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
286
286
|
version: '0'
|
|
287
287
|
requirements: []
|
|
288
288
|
rubyforge_project:
|
|
289
|
-
rubygems_version: 2.
|
|
289
|
+
rubygems_version: 2.7.0
|
|
290
290
|
signing_key:
|
|
291
291
|
specification_version: 4
|
|
292
292
|
summary: Event receiver for the Routemaster bus
|