my_api_client 0.14.0.pre → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +90 -35
- data/.envrc.skeleton +1 -0
- data/.rubocop.yml +5 -1
- data/.rubocop_todo.yml +1 -1
- data/CHANGELOG.md +10 -1
- data/Gemfile.lock +6 -6
- data/example/api_clients/application_api_client.rb +21 -0
- data/example/api_clients/my_error_api_client.rb +34 -0
- data/example/api_clients/my_errors.rb +27 -0
- data/example/api_clients/my_rest_api_client.rb +42 -0
- data/example/api_clients/my_status_api_client.rb +22 -0
- data/lib/my_api_client/rspec/matchers/request_to.rb +3 -4
- data/lib/my_api_client/version.rb +1 -1
- data/my_api/.envrc.skeleton +3 -0
- data/my_api/.gitignore +14 -0
- data/my_api/.jetskeep +1 -0
- data/my_api/.rspec +3 -0
- data/my_api/.ruby-version +1 -0
- data/my_api/Gemfile +23 -0
- data/my_api/Gemfile.lock +243 -0
- data/my_api/Procfile +7 -0
- data/my_api/README.md +48 -0
- data/my_api/Rakefile +4 -0
- data/my_api/app/controllers/application_controller.rb +5 -0
- data/my_api/app/controllers/error_controller.rb +21 -0
- data/my_api/app/controllers/rest_controller.rb +60 -0
- data/my_api/app/controllers/status_controller.rb +11 -0
- data/my_api/app/helpers/application_helper.rb +5 -0
- data/my_api/app/jobs/application_job.rb +7 -0
- data/my_api/app/models/application_item.rb +5 -0
- data/my_api/config.ru +7 -0
- data/my_api/config/application.rb +73 -0
- data/my_api/config/dynamodb.yml +22 -0
- data/my_api/config/environments/development.rb +9 -0
- data/my_api/config/environments/production.rb +11 -0
- data/my_api/config/environments/test.rb +9 -0
- data/my_api/config/routes.rb +16 -0
- data/my_api/db/.gitkeep +0 -0
- data/my_api/public/404.html +67 -0
- data/my_api/public/422.html +67 -0
- data/my_api/public/500.html +66 -0
- data/my_api/public/favicon.ico +0 -0
- data/my_api/public/index.html +91 -0
- data/my_api/spec/controllers/error_controller_spec.rb +43 -0
- data/my_api/spec/controllers/rest_controller_spec.rb +81 -0
- data/my_api/spec/controllers/status_controller_spec.rb +47 -0
- data/my_api/spec/fixtures/payloads/posts-index.json +51 -0
- data/my_api/spec/fixtures/payloads/posts-show.json +53 -0
- data/my_api/spec/spec_helper.rb +26 -0
- metadata +45 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f0b010bd5bb4ef7d0b3a99c826fefc67bedf5e9f51bcfd7779dc618c2b9a4f58
|
4
|
+
data.tar.gz: 4806eb56f7556728fc848c7e54408a127393a921a29e248a9d32ba950b4f3ef3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6bc2efb59de265f84c727ce67e9717fff724251136ffe7159a0a61151d335bb476386649e23ef5bb8a9982e387bebd53c58064817517fdac855bd9ac3fc4d6e8
|
7
|
+
data.tar.gz: f0db303e86287d71099d0c0e29024663013cf4c44dffac1ac1d9c2a18113b34a4d5a1e9a6d3a4824833d1bb413a875deb0a45bb2f2becb25d4119d1028a1d10c
|
data/.circleci/config.yml
CHANGED
@@ -25,7 +25,13 @@ references:
|
|
25
25
|
default: ''
|
26
26
|
|
27
27
|
executors:
|
28
|
-
|
28
|
+
executor_for_api:
|
29
|
+
parameters:
|
30
|
+
<<: *ruby_version
|
31
|
+
docker:
|
32
|
+
- image: circleci/ruby:<< parameters.ruby_version >>-node-browsers
|
33
|
+
working_directory: ~/repo/my_api
|
34
|
+
executor_for_gem:
|
29
35
|
parameters:
|
30
36
|
<<: *ruby_version
|
31
37
|
docker:
|
@@ -41,8 +47,28 @@ commands:
|
|
41
47
|
- run: |
|
42
48
|
cp gemfiles/rails_<< parameters.rails_version >>.gemfile Gemfile
|
43
49
|
bundle update activesupport
|
44
|
-
|
45
|
-
description: Run RSpec
|
50
|
+
run_rspec_for_api:
|
51
|
+
description: Run RSpec for the API
|
52
|
+
steps:
|
53
|
+
- run:
|
54
|
+
name: Execute RSpec
|
55
|
+
command: |
|
56
|
+
bundle exec rspec --format documentation \
|
57
|
+
--color \
|
58
|
+
--format RspecJunitFormatter
|
59
|
+
deploy_api_server:
|
60
|
+
description: Deploy the API server on the AWS
|
61
|
+
steps:
|
62
|
+
- run:
|
63
|
+
name: Install RSync
|
64
|
+
command: sudo apt-get install -y rsync
|
65
|
+
- run:
|
66
|
+
# This command is not currently work. It could't reference uploaded gem file.
|
67
|
+
# You can execute `$ bundle exec jets deploy` on your local.
|
68
|
+
name: Deploy the API server with jets
|
69
|
+
command: JETS_AGREE=yes bundle exec jets deploy
|
70
|
+
run_rspec_for_gem:
|
71
|
+
description: Run RSpec for the gem
|
46
72
|
steps:
|
47
73
|
- code-climate/install
|
48
74
|
- run:
|
@@ -114,40 +140,57 @@ commands:
|
|
114
140
|
<<: *ruby_version
|
115
141
|
<<: *bundler_options
|
116
142
|
steps:
|
117
|
-
- checkout
|
143
|
+
- checkout:
|
144
|
+
path: ~/repo
|
118
145
|
- run:
|
119
146
|
name: Install Bundler 2.x
|
120
147
|
command: gem install bundler:2.1.2
|
121
148
|
- ruby-orbs/bundle-install:
|
122
149
|
cache_key_prefix: v1-dependencies-<< parameters.ruby_version >>
|
123
150
|
bundle_extra_args: << parameters.bundler_options >>
|
124
|
-
|
151
|
+
restore_bundled_with: false
|
152
|
+
test_and_deploy_for_api:
|
153
|
+
description: Build the API
|
154
|
+
steps:
|
155
|
+
- run_rspec_for_api
|
156
|
+
- deploy_api_server
|
157
|
+
test_and_build_for_gem:
|
125
158
|
description: Build the RubyGem
|
126
159
|
parameters:
|
127
160
|
<<: *rails_version
|
128
161
|
steps:
|
129
162
|
- modify_active_support_version:
|
130
163
|
rails_version: << parameters.rails_version >>
|
131
|
-
-
|
164
|
+
- run_rspec_for_gem
|
132
165
|
- rake_build
|
133
166
|
|
134
167
|
jobs:
|
135
|
-
|
168
|
+
deploy_api:
|
169
|
+
parameters:
|
170
|
+
<<: *ruby_version
|
171
|
+
executor:
|
172
|
+
name: executor_for_api
|
173
|
+
ruby_version: << parameters.ruby_version >>
|
174
|
+
steps:
|
175
|
+
- setup:
|
176
|
+
ruby_version: << parameters.ruby_version >>
|
177
|
+
- test_and_deploy_for_api
|
178
|
+
build_gem:
|
136
179
|
parameters:
|
137
180
|
<<: *ruby_version
|
138
181
|
<<: *rails_version
|
139
182
|
<<: *bundler_options
|
140
183
|
executor:
|
141
|
-
name:
|
184
|
+
name: executor_for_gem
|
142
185
|
ruby_version: << parameters.ruby_version >>
|
143
186
|
steps:
|
144
187
|
- setup:
|
145
188
|
ruby_version: << parameters.ruby_version >>
|
146
189
|
bundler_options: << parameters.bundler_options >>
|
147
|
-
-
|
190
|
+
- test_and_build_for_gem:
|
148
191
|
rails_version: << parameters.rails_version >>
|
149
192
|
upload-coverage:
|
150
|
-
executor:
|
193
|
+
executor: executor_for_gem
|
151
194
|
steps:
|
152
195
|
- attach_workspace:
|
153
196
|
at: ~/repo
|
@@ -157,22 +200,22 @@ jobs:
|
|
157
200
|
parts: 19
|
158
201
|
- code-climate/upload-coverage
|
159
202
|
rubocop:
|
160
|
-
executor:
|
203
|
+
executor: executor_for_gem
|
161
204
|
steps:
|
162
205
|
- setup
|
163
206
|
- rubocop
|
164
207
|
yardoc:
|
165
|
-
executor:
|
208
|
+
executor: executor_for_gem
|
166
209
|
steps:
|
167
210
|
- setup
|
168
211
|
- yardoc
|
169
212
|
rubocop_challenge:
|
170
|
-
executor:
|
213
|
+
executor: executor_for_gem
|
171
214
|
steps:
|
172
215
|
- checkout
|
173
216
|
- rubocop_challenge
|
174
217
|
release:
|
175
|
-
executor:
|
218
|
+
executor: executor_for_gem
|
176
219
|
steps:
|
177
220
|
- setup
|
178
221
|
- release
|
@@ -182,80 +225,80 @@ workflows:
|
|
182
225
|
|
183
226
|
commit:
|
184
227
|
jobs:
|
185
|
-
-
|
228
|
+
- build_gem:
|
186
229
|
name: build_on_ruby_2.4_and_rails_4.2
|
187
230
|
ruby_version: '2.4'
|
188
231
|
rails_version: '4.2'
|
189
|
-
-
|
232
|
+
- build_gem:
|
190
233
|
name: build_on_ruby_2.4_and_rails_5.0
|
191
234
|
ruby_version: '2.4'
|
192
235
|
rails_version: '5.0'
|
193
|
-
-
|
236
|
+
- build_gem:
|
194
237
|
name: build_on_ruby_2.4_and_rails_5.1
|
195
238
|
ruby_version: '2.4'
|
196
239
|
rails_version: '5.1'
|
197
|
-
-
|
240
|
+
- build_gem:
|
198
241
|
name: build_on_ruby_2.4_and_rails_5.2
|
199
242
|
ruby_version: '2.4'
|
200
243
|
rails_version: '5.2'
|
201
|
-
-
|
244
|
+
- build_gem:
|
202
245
|
name: build_on_ruby_2.5_and_rails_4.2
|
203
246
|
ruby_version: '2.5'
|
204
247
|
rails_version: '4.2'
|
205
|
-
-
|
248
|
+
- build_gem:
|
206
249
|
name: build_on_ruby_2.5_and_rails_5.0
|
207
250
|
ruby_version: '2.5'
|
208
251
|
rails_version: '5.0'
|
209
|
-
-
|
252
|
+
- build_gem:
|
210
253
|
name: build_on_ruby_2.5_and_rails_5.1
|
211
254
|
ruby_version: '2.5'
|
212
255
|
rails_version: '5.1'
|
213
|
-
-
|
256
|
+
- build_gem:
|
214
257
|
name: build_on_ruby_2.5_and_rails_5.2
|
215
258
|
ruby_version: '2.5'
|
216
259
|
rails_version: '5.2'
|
217
|
-
-
|
260
|
+
- build_gem:
|
218
261
|
name: build_on_ruby_2.5_and_rails_6.0
|
219
262
|
ruby_version: '2.5'
|
220
263
|
rails_version: '6.0'
|
221
|
-
-
|
264
|
+
- build_gem:
|
222
265
|
name: build_on_ruby_2.6_and_rails_4.2
|
223
266
|
ruby_version: '2.6'
|
224
267
|
rails_version: '4.2'
|
225
|
-
-
|
268
|
+
- build_gem:
|
226
269
|
name: build_on_ruby_2.6_and_rails_5.0
|
227
270
|
ruby_version: '2.6'
|
228
271
|
rails_version: '5.0'
|
229
|
-
-
|
272
|
+
- build_gem:
|
230
273
|
name: build_on_ruby_2.6_and_rails_5.1
|
231
274
|
ruby_version: '2.6'
|
232
275
|
rails_version: '5.1'
|
233
|
-
-
|
276
|
+
- build_gem:
|
234
277
|
name: build_on_ruby_2.6_and_rails_5.2
|
235
278
|
ruby_version: '2.6'
|
236
279
|
rails_version: '5.2'
|
237
|
-
-
|
280
|
+
- build_gem:
|
238
281
|
name: build_on_ruby_2.6_and_rails_6.0
|
239
282
|
ruby_version: '2.6'
|
240
283
|
rails_version: '6.0'
|
241
|
-
-
|
284
|
+
- build_gem:
|
242
285
|
name: build_on_ruby_2.7_and_rails_5.0
|
243
286
|
ruby_version: '2.7'
|
244
287
|
rails_version: '5.0'
|
245
|
-
-
|
288
|
+
- build_gem:
|
246
289
|
name: build_on_ruby_2.7_and_rails_5.1
|
247
290
|
ruby_version: '2.7'
|
248
291
|
rails_version: '5.1'
|
249
|
-
-
|
292
|
+
- build_gem:
|
250
293
|
name: build_on_ruby_2.7_and_rails_5.2
|
251
294
|
ruby_version: '2.7'
|
252
295
|
rails_version: '5.2'
|
253
|
-
-
|
296
|
+
- build_gem:
|
254
297
|
name: build_on_ruby_2.7_and_rails_6.0_with_integrations
|
255
298
|
ruby_version: '2.7'
|
256
299
|
rails_version: '6.0'
|
257
300
|
bundler_options: '--with integrations'
|
258
|
-
-
|
301
|
+
- build_gem:
|
259
302
|
name: build_on_ruby_2.7_and_rails_6.0_without_integrations
|
260
303
|
ruby_version: '2.7'
|
261
304
|
rails_version: '6.0'
|
@@ -317,11 +360,23 @@ workflows:
|
|
317
360
|
cron: "30 23 * * *" # 8:30am every day (JST)
|
318
361
|
filters:
|
319
362
|
branches:
|
320
|
-
only:
|
321
|
-
- master
|
363
|
+
only: [master]
|
322
364
|
jobs:
|
323
365
|
- rubocop_challenge
|
324
366
|
|
367
|
+
# deploy_api_server:
|
368
|
+
# triggers:
|
369
|
+
# - schedule:
|
370
|
+
# cron: "0 12 * * *" # 3:00am every day (JST)
|
371
|
+
# filters:
|
372
|
+
# branches:
|
373
|
+
# only: [master]
|
374
|
+
# jobs:
|
375
|
+
# - deploy_api:
|
376
|
+
# ruby_version: '2.5'
|
377
|
+
# - build_gem:
|
378
|
+
# requires: [deploy_api]
|
379
|
+
|
325
380
|
experimental:
|
326
381
|
notify:
|
327
382
|
branches:
|
data/.envrc.skeleton
CHANGED
data/.rubocop.yml
CHANGED
@@ -9,19 +9,22 @@ AllCops:
|
|
9
9
|
|
10
10
|
Layout/LineLength:
|
11
11
|
Max: 100
|
12
|
+
Exclude:
|
13
|
+
- my_api/config/application.rb
|
12
14
|
|
13
15
|
Metrics/BlockLength:
|
14
16
|
Exclude:
|
15
17
|
- 'my_api_client.gemspec'
|
16
18
|
- 'lib/my_api_client/rspec/matchers/**/*'
|
17
19
|
- 'spec/**/*'
|
20
|
+
- 'my_api/spec/**/*'
|
18
21
|
|
19
22
|
Metrics/MethodLength:
|
20
23
|
Max: 15
|
21
24
|
|
22
25
|
Naming/AccessorMethodName:
|
23
26
|
Exclude:
|
24
|
-
-
|
27
|
+
- example/api_clients/**/*
|
25
28
|
- spec/lib/my_api_client/rspec/matchers/be_handled_as_an_error_spec.rb
|
26
29
|
|
27
30
|
Style/TrailingCommaInArrayLiteral:
|
@@ -32,6 +35,7 @@ Style/TrailingCommaInHashLiteral:
|
|
32
35
|
|
33
36
|
RSpec/DescribeClass:
|
34
37
|
Exclude:
|
38
|
+
- 'spec/integrations/api_clients/**/*'
|
35
39
|
- 'spec/lib/my_api_client/rspec/matchers/**/*'
|
36
40
|
|
37
41
|
RSpec/ExampleLength:
|
data/.rubocop_todo.yml
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on 2020-02-
|
3
|
+
# on 2020-02-29 23:30:46 +0000 using RuboCop version 0.80.1.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,13 @@
|
|
1
1
|
# Change log
|
2
2
|
|
3
|
-
## v0.14.0
|
3
|
+
## v0.14.0 (Mar 14, 2020)
|
4
|
+
|
5
|
+
### Feature
|
6
|
+
|
7
|
+
* [#211](https://github.com/ryz310/my_api_client/pull/211) Integration testing using the jets framework ([@ryz310](https://github.com/ryz310))
|
8
|
+
* [#213](https://github.com/ryz310/my_api_client/pull/213) Add status API to integration testing ([@ryz310](https://github.com/ryz310))
|
9
|
+
* [#214](https://github.com/ryz310/my_api_client/pull/214) Add error API to integration testing ([@ryz310](https://github.com/ryz310))
|
10
|
+
* [#215](https://github.com/ryz310/my_api_client/pull/215) Update the REST API to enhance integration testing ([@ryz310](https://github.com/ryz310))
|
4
11
|
|
5
12
|
### Refactoring
|
6
13
|
|
@@ -60,6 +67,7 @@
|
|
60
67
|
### Rubocop Challenge
|
61
68
|
|
62
69
|
* [#205](https://github.com/ryz310/my_api_client/pull/205) Re-generate .rubocop_todo.yml with RuboCop v0.80.0 ([@ryz310](https://github.com/ryz310))
|
70
|
+
* [#210](https://github.com/ryz310/my_api_client/pull/210) Re-generate .rubocop_todo.yml with RuboCop v0.80.1 ([@ryz310](https://github.com/ryz310))
|
63
71
|
|
64
72
|
### Dependabot
|
65
73
|
|
@@ -68,6 +76,7 @@
|
|
68
76
|
* [#194](https://github.com/ryz310/my_api_client/pull/194) Bump bugsnag from 6.12.2 to 6.13.0 ([@ryz310](https://github.com/ryz310))
|
69
77
|
* [#197](https://github.com/ryz310/my_api_client/pull/197) Bump webmock from 3.8.0 to 3.8.1 ([@ryz310](https://github.com/ryz310))
|
70
78
|
* [#199](https://github.com/ryz310/my_api_client/pull/199) Bump webmock from 3.8.1 to 3.8.2 ([@ryz310](https://github.com/ryz310))
|
79
|
+
* [#216](https://github.com/ryz310/my_api_client/pull/216) Bump webmock from 3.8.2 to 3.8.3 ([@ryz310](https://github.com/ryz310))
|
71
80
|
|
72
81
|
### Renovate
|
73
82
|
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
my_api_client (0.14.0
|
4
|
+
my_api_client (0.14.0)
|
5
5
|
activesupport (>= 4.2.0)
|
6
6
|
faraday (>= 0.17.1)
|
7
7
|
jsonpath
|
@@ -29,7 +29,7 @@ GEM
|
|
29
29
|
docile (1.3.2)
|
30
30
|
faraday (1.0.0)
|
31
31
|
multipart-post (>= 1.2, < 3)
|
32
|
-
hashdiff (1.0.
|
32
|
+
hashdiff (1.0.1)
|
33
33
|
i18n (1.8.2)
|
34
34
|
concurrent-ruby (~> 1.0)
|
35
35
|
jaro_winkler (1.5.4)
|
@@ -42,7 +42,7 @@ GEM
|
|
42
42
|
multi_json (1.14.1)
|
43
43
|
multipart-post (2.1.1)
|
44
44
|
parallel (1.19.1)
|
45
|
-
parser (2.7.0.
|
45
|
+
parser (2.7.0.4)
|
46
46
|
ast (~> 2.4.0)
|
47
47
|
pry (0.12.2)
|
48
48
|
coderay (~> 1.1.0)
|
@@ -60,7 +60,7 @@ GEM
|
|
60
60
|
rspec-mocks (~> 3.9.0)
|
61
61
|
rspec-core (3.9.1)
|
62
62
|
rspec-support (~> 3.9.1)
|
63
|
-
rspec-expectations (3.9.
|
63
|
+
rspec-expectations (3.9.1)
|
64
64
|
diff-lcs (>= 1.2.0, < 2.0)
|
65
65
|
rspec-support (~> 3.9.0)
|
66
66
|
rspec-mocks (3.9.1)
|
@@ -69,7 +69,7 @@ GEM
|
|
69
69
|
rspec-support (3.9.2)
|
70
70
|
rspec_junit_formatter (0.4.1)
|
71
71
|
rspec-core (>= 2, < 4, != 2.12.0)
|
72
|
-
rubocop (0.80.
|
72
|
+
rubocop (0.80.1)
|
73
73
|
jaro_winkler (~> 1.5.1)
|
74
74
|
parallel (~> 1.10)
|
75
75
|
parser (>= 2.7.0.1)
|
@@ -96,7 +96,7 @@ GEM
|
|
96
96
|
tzinfo (1.2.6)
|
97
97
|
thread_safe (~> 0.1)
|
98
98
|
unicode-display_width (1.6.1)
|
99
|
-
webmock (3.8.
|
99
|
+
webmock (3.8.3)
|
100
100
|
addressable (>= 2.3.6)
|
101
101
|
crack (>= 0.3.2)
|
102
102
|
hashdiff (>= 0.4.0, < 2.0.0)
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'my_errors'
|
4
|
+
|
5
|
+
# An usage example of the `my_api_client`.
|
6
|
+
class ApplicationApiClient < MyApiClient::Base
|
7
|
+
endpoint ENV['MY_API_ENDPOINT']
|
8
|
+
|
9
|
+
self.logger = ::Logger.new(nil)
|
10
|
+
|
11
|
+
http_open_timeout 2.seconds
|
12
|
+
http_read_timeout 3.seconds
|
13
|
+
|
14
|
+
retry_on MyApiClient::NetworkError, wait: 0.seconds, attempts: 3
|
15
|
+
|
16
|
+
error_handling status_code: 400..499, raise: MyApiClient::ClientError
|
17
|
+
error_handling status_code: 500..599 do |params, logger|
|
18
|
+
logger.warn 'Server error occurred.'
|
19
|
+
raise MyApiClient::ServerError, params
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'application_api_client'
|
4
|
+
|
5
|
+
# An usage example of the `my_api_client`.
|
6
|
+
# See also: my_api/app/controllers/status_controller.rb
|
7
|
+
class MyErrorApiClient < ApplicationApiClient
|
8
|
+
error_handling json: { '$.error.message': /You requested error code/ },
|
9
|
+
raise: MyErrors::ErrorCodeOther
|
10
|
+
|
11
|
+
error_handling json: { '$.error.code': :zero? },
|
12
|
+
raise: MyErrors::ErrorCode00
|
13
|
+
|
14
|
+
error_handling json: { '$.error.code': 10 },
|
15
|
+
raise: MyErrors::ErrorCode10
|
16
|
+
|
17
|
+
error_handling json: { '$.error.code': 20..29 },
|
18
|
+
raise: MyErrors::ErrorCode2x
|
19
|
+
|
20
|
+
error_handling json: { '$.error.code': 30 },
|
21
|
+
status_code: 400,
|
22
|
+
raise: MyErrors::ErrorCode30
|
23
|
+
|
24
|
+
# GET error/:code
|
25
|
+
def get_error(code:)
|
26
|
+
get "error/#{code}", headers: headers
|
27
|
+
end
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
def headers
|
32
|
+
{ 'Content-Type': 'application/json;charset=UTF-8' }
|
33
|
+
end
|
34
|
+
end
|