cp-sparrow 0.0.14 → 0.0.15

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.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +2 -5
  5. data/README.md +6 -3
  6. data/Rakefile +8 -7
  7. data/lib/cp-sparrow.rb +1 -0
  8. data/lib/sparrow/configuration.rb +5 -1
  9. data/lib/sparrow/core_ext/hash.rb +22 -17
  10. data/lib/sparrow/dependencies.rb +11 -2
  11. data/lib/sparrow/logger.rb +1 -1
  12. data/lib/sparrow/railtie.rb +3 -3
  13. data/lib/sparrow/request_http_message.rb +1 -1
  14. data/lib/sparrow/response_middleware.rb +5 -5
  15. data/lib/sparrow/route_parser.rb +1 -1
  16. data/lib/sparrow/strategies/ignore.rb +2 -2
  17. data/lib/sparrow/strategies/json_format_strategies/default_json_format_strategy.rb +1 -1
  18. data/lib/sparrow/strategies/json_format_strategies/json_format_strategy.rb +5 -4
  19. data/lib/sparrow/strategies/key_transformation/underscore_key.rb +1 -1
  20. data/lib/sparrow/strategies/transform_params.rb +5 -1
  21. data/lib/sparrow/transformable.rb +8 -8
  22. data/lib/sparrow/version.rb +1 -1
  23. data/sparrow.gemspec +5 -3
  24. data/spec/integration/apps/rack_app/app.rb +22 -5
  25. data/spec/integration/apps/rack_app/config.ru +2 -2
  26. data/spec/integration/apps/rails_app/README.rdoc +15 -248
  27. data/spec/integration/apps/rails_app/Rakefile +1 -2
  28. data/spec/integration/apps/rails_app/app/assets/images/.keep +0 -0
  29. data/spec/integration/apps/rails_app/app/assets/javascripts/application.js +4 -6
  30. data/spec/integration/apps/rails_app/app/assets/stylesheets/application.css +6 -4
  31. data/spec/integration/apps/rails_app/app/controllers/application_controller.rb +3 -1
  32. data/spec/integration/apps/rails_app/app/controllers/concerns/.keep +0 -0
  33. data/spec/integration/apps/rails_app/app/controllers/errors_controller.rb +10 -0
  34. data/spec/integration/apps/rails_app/app/controllers/welcome_controller.rb +0 -5
  35. data/spec/integration/apps/rails_app/app/mailers/.keep +0 -0
  36. data/spec/integration/apps/rails_app/app/models/.keep +0 -0
  37. data/spec/integration/apps/rails_app/app/models/concerns/.keep +0 -0
  38. data/spec/integration/apps/rails_app/app/views/layouts/application.html.erb +3 -3
  39. data/spec/integration/apps/rails_app/bin/bundle +3 -0
  40. data/spec/integration/apps/rails_app/bin/rails +4 -0
  41. data/spec/integration/apps/rails_app/bin/rake +4 -0
  42. data/spec/integration/apps/rails_app/bin/setup +29 -0
  43. data/spec/integration/apps/rails_app/config.ru +2 -2
  44. data/spec/integration/apps/rails_app/config/application.rb +6 -43
  45. data/spec/integration/apps/rails_app/config/boot.rb +4 -9
  46. data/spec/integration/apps/rails_app/config/database.yml +25 -0
  47. data/spec/integration/apps/rails_app/config/environment.rb +3 -3
  48. data/spec/integration/apps/rails_app/config/environments/development.rb +23 -13
  49. data/spec/integration/apps/rails_app/config/environments/production.rb +46 -31
  50. data/spec/integration/apps/rails_app/config/environments/test.rb +20 -10
  51. data/spec/integration/apps/rails_app/config/initializers/assets.rb +11 -0
  52. data/spec/integration/apps/rails_app/config/initializers/cookies_serializer.rb +3 -0
  53. data/spec/integration/apps/rails_app/config/initializers/filter_parameter_logging.rb +4 -0
  54. data/spec/integration/apps/rails_app/config/initializers/inflections.rb +6 -5
  55. data/spec/integration/apps/rails_app/config/initializers/mime_types.rb +0 -1
  56. data/spec/integration/apps/rails_app/config/initializers/secret_token.rb +1 -1
  57. data/spec/integration/apps/rails_app/config/initializers/session_store.rb +1 -6
  58. data/spec/integration/apps/rails_app/config/initializers/wrap_parameters.rb +6 -2
  59. data/spec/integration/apps/rails_app/config/locales/en.yml +20 -2
  60. data/spec/integration/apps/rails_app/config/routes.rb +21 -29
  61. data/spec/integration/apps/rails_app/config/secrets.yml +22 -0
  62. data/spec/integration/apps/rails_app/lib/assets/.keep +0 -0
  63. data/spec/integration/apps/rails_app/public/404.html +54 -13
  64. data/spec/integration/apps/rails_app/public/422.html +54 -13
  65. data/spec/integration/apps/rails_app/public/500.html +53 -12
  66. data/spec/integration/rack/camel_caser_spec.rb +18 -18
  67. data/spec/integration/rack/error_spec.rb +17 -0
  68. data/spec/integration/rails/camel_caser_accept_header_spec.rb +3 -3
  69. data/spec/integration/rails/camel_caser_spec.rb +30 -19
  70. data/spec/spec_helper.rb +1 -2
  71. data/spec/support/rails_app_helper.rb +1 -1
  72. data/spec/unit/configuration_spec.rb +2 -2
  73. metadata +46 -24
@@ -1,12 +1,11 @@
1
1
  require 'rspec'
2
2
  require 'rspec/its'
3
3
  require 'rack/test'
4
- require 'multi_json'
5
4
 
6
5
  Dir[File.join(File.dirname(__FILE__),"/support/**/*.rb")].each {|f| require f}
7
6
 
8
7
  RSpec.configure do |config|
9
- config.include RackAppHelper, type: :rack
8
+ config.include RackAppHelper, type: :rack
10
9
  config.include RailsAppHelper, type: :rails
11
10
  config.include UnitSpecHelper, type: :unit
12
11
  end
@@ -1,6 +1,6 @@
1
1
  ENV["RAILS_ENV"] ||= "test"
2
2
 
3
- #require File.expand_path("../../apps/rails_app/config/environment.rb", __FILE__)
3
+ require File.expand_path("../../integration/apps/rails_app/config/environment.rb", __FILE__)
4
4
  module RailsAppHelper
5
5
  include Rack::Test::Methods
6
6
 
@@ -9,7 +9,7 @@ module Sparrow
9
9
  its(:enable_logging) { is_expected.to be false }
10
10
  its(:excluded_routes) { is_expected.to eq [] }
11
11
  its(:default_json_request_key_transformation_strategy) do
12
- is_expected.to eq :camelize
12
+ is_expected.to eq :underscore
13
13
  end
14
14
 
15
15
  its(:camelize_strategy) { is_expected.to eq :lower }
@@ -43,7 +43,7 @@ module Sparrow
43
43
 
44
44
  specify do
45
45
  actual = subject.default_json_key_transformation_strategy(:request)
46
- expect(actual).to eq :camelize
46
+ expect(actual).to eq :underscore
47
47
  end
48
48
  end
49
49
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cp-sparrow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.14
4
+ version: 0.0.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Schmidt
@@ -9,22 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-11-16 00:00:00.000000000 Z
12
+ date: 2016-06-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - "<="
19
19
  - !ruby/object:Gem::Version
20
- version: 3.2.17
20
+ version: 4.2.6
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ">="
25
+ - - "<="
26
26
  - !ruby/object:Gem::Version
27
- version: 3.2.17
27
+ version: 4.2.6
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: pry
30
30
  requirement: !ruby/object:Gem::Requirement
@@ -109,34 +109,20 @@ dependencies:
109
109
  - - ">="
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
- - !ruby/object:Gem::Dependency
113
- name: multi_json
114
- requirement: !ruby/object:Gem::Requirement
115
- requirements:
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- version: '0'
119
- type: :development
120
- prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - ">="
124
- - !ruby/object:Gem::Version
125
- version: '0'
126
112
  - !ruby/object:Gem::Dependency
127
113
  name: rails
128
114
  requirement: !ruby/object:Gem::Requirement
129
115
  requirements:
130
116
  - - '='
131
117
  - !ruby/object:Gem::Version
132
- version: 3.2.21
118
+ version: 4.2.6
133
119
  type: :development
134
120
  prerelease: false
135
121
  version_requirements: !ruby/object:Gem::Requirement
136
122
  requirements:
137
123
  - - '='
138
124
  - !ruby/object:Gem::Version
139
- version: 3.2.21
125
+ version: 4.2.6
140
126
  description: "\n A collection of 2 middlewares to convert json formats to other
141
127
  formats\nsuch as camelCase and snake_case. Both converting responses and requests
142
128
  are\nsupported.\n "
@@ -155,6 +141,7 @@ files:
155
141
  - LICENSE.txt
156
142
  - README.md
157
143
  - Rakefile
144
+ - lib/cp-sparrow.rb
158
145
  - lib/sparrow.rb
159
146
  - lib/sparrow/configuration.rb
160
147
  - lib/sparrow/core_ext/hash.rb
@@ -190,23 +177,37 @@ files:
190
177
  - spec/integration/apps/rack_app/config.ru
191
178
  - spec/integration/apps/rails_app/README.rdoc
192
179
  - spec/integration/apps/rails_app/Rakefile
180
+ - spec/integration/apps/rails_app/app/assets/images/.keep
193
181
  - spec/integration/apps/rails_app/app/assets/images/grumpy-cat.gif
194
182
  - spec/integration/apps/rails_app/app/assets/javascripts/application.js
195
183
  - spec/integration/apps/rails_app/app/assets/stylesheets/application.css
196
184
  - spec/integration/apps/rails_app/app/controllers/application_controller.rb
185
+ - spec/integration/apps/rails_app/app/controllers/concerns/.keep
186
+ - spec/integration/apps/rails_app/app/controllers/errors_controller.rb
197
187
  - spec/integration/apps/rails_app/app/controllers/welcome_controller.rb
198
188
  - spec/integration/apps/rails_app/app/helpers/application_helper.rb
199
189
  - spec/integration/apps/rails_app/app/mailers/.gitkeep
190
+ - spec/integration/apps/rails_app/app/mailers/.keep
200
191
  - spec/integration/apps/rails_app/app/models/.gitkeep
192
+ - spec/integration/apps/rails_app/app/models/.keep
193
+ - spec/integration/apps/rails_app/app/models/concerns/.keep
201
194
  - spec/integration/apps/rails_app/app/views/layouts/application.html.erb
195
+ - spec/integration/apps/rails_app/bin/bundle
196
+ - spec/integration/apps/rails_app/bin/rails
197
+ - spec/integration/apps/rails_app/bin/rake
198
+ - spec/integration/apps/rails_app/bin/setup
202
199
  - spec/integration/apps/rails_app/config.ru
203
200
  - spec/integration/apps/rails_app/config/application.rb
204
201
  - spec/integration/apps/rails_app/config/boot.rb
202
+ - spec/integration/apps/rails_app/config/database.yml
205
203
  - spec/integration/apps/rails_app/config/environment.rb
206
204
  - spec/integration/apps/rails_app/config/environments/development.rb
207
205
  - spec/integration/apps/rails_app/config/environments/production.rb
208
206
  - spec/integration/apps/rails_app/config/environments/test.rb
207
+ - spec/integration/apps/rails_app/config/initializers/assets.rb
209
208
  - spec/integration/apps/rails_app/config/initializers/backtrace_silencers.rb
209
+ - spec/integration/apps/rails_app/config/initializers/cookies_serializer.rb
210
+ - spec/integration/apps/rails_app/config/initializers/filter_parameter_logging.rb
210
211
  - spec/integration/apps/rails_app/config/initializers/inflections.rb
211
212
  - spec/integration/apps/rails_app/config/initializers/mime_types.rb
212
213
  - spec/integration/apps/rails_app/config/initializers/secret_token.rb
@@ -214,13 +215,16 @@ files:
214
215
  - spec/integration/apps/rails_app/config/initializers/wrap_parameters.rb
215
216
  - spec/integration/apps/rails_app/config/locales/en.yml
216
217
  - spec/integration/apps/rails_app/config/routes.rb
218
+ - spec/integration/apps/rails_app/config/secrets.yml
217
219
  - spec/integration/apps/rails_app/lib/assets/.gitkeep
220
+ - spec/integration/apps/rails_app/lib/assets/.keep
218
221
  - spec/integration/apps/rails_app/public/404.html
219
222
  - spec/integration/apps/rails_app/public/422.html
220
223
  - spec/integration/apps/rails_app/public/500.html
221
224
  - spec/integration/apps/rails_app/public/favicon.ico
222
225
  - spec/integration/apps/rails_app/script/rails
223
226
  - spec/integration/rack/camel_caser_spec.rb
227
+ - spec/integration/rack/error_spec.rb
224
228
  - spec/integration/rails/camel_caser_accept_header_spec.rb
225
229
  - spec/integration/rails/camel_caser_spec.rb
226
230
  - spec/spec_helper.rb
@@ -246,7 +250,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
246
250
  requirements:
247
251
  - - ">="
248
252
  - !ruby/object:Gem::Version
249
- version: '0'
253
+ version: 2.3.1
250
254
  required_rubygems_version: !ruby/object:Gem::Requirement
251
255
  requirements:
252
256
  - - ">="
@@ -254,7 +258,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
254
258
  version: '0'
255
259
  requirements: []
256
260
  rubyforge_project:
257
- rubygems_version: 2.4.6
261
+ rubygems_version: 2.4.3
258
262
  signing_key:
259
263
  specification_version: 4
260
264
  summary: A POC to have a Rack middleware parsing the params keys into underscore
@@ -263,23 +267,37 @@ test_files:
263
267
  - spec/integration/apps/rack_app/config.ru
264
268
  - spec/integration/apps/rails_app/README.rdoc
265
269
  - spec/integration/apps/rails_app/Rakefile
270
+ - spec/integration/apps/rails_app/app/assets/images/.keep
266
271
  - spec/integration/apps/rails_app/app/assets/images/grumpy-cat.gif
267
272
  - spec/integration/apps/rails_app/app/assets/javascripts/application.js
268
273
  - spec/integration/apps/rails_app/app/assets/stylesheets/application.css
269
274
  - spec/integration/apps/rails_app/app/controllers/application_controller.rb
275
+ - spec/integration/apps/rails_app/app/controllers/concerns/.keep
276
+ - spec/integration/apps/rails_app/app/controllers/errors_controller.rb
270
277
  - spec/integration/apps/rails_app/app/controllers/welcome_controller.rb
271
278
  - spec/integration/apps/rails_app/app/helpers/application_helper.rb
272
279
  - spec/integration/apps/rails_app/app/mailers/.gitkeep
280
+ - spec/integration/apps/rails_app/app/mailers/.keep
273
281
  - spec/integration/apps/rails_app/app/models/.gitkeep
282
+ - spec/integration/apps/rails_app/app/models/.keep
283
+ - spec/integration/apps/rails_app/app/models/concerns/.keep
274
284
  - spec/integration/apps/rails_app/app/views/layouts/application.html.erb
285
+ - spec/integration/apps/rails_app/bin/bundle
286
+ - spec/integration/apps/rails_app/bin/rails
287
+ - spec/integration/apps/rails_app/bin/rake
288
+ - spec/integration/apps/rails_app/bin/setup
275
289
  - spec/integration/apps/rails_app/config.ru
276
290
  - spec/integration/apps/rails_app/config/application.rb
277
291
  - spec/integration/apps/rails_app/config/boot.rb
292
+ - spec/integration/apps/rails_app/config/database.yml
278
293
  - spec/integration/apps/rails_app/config/environment.rb
279
294
  - spec/integration/apps/rails_app/config/environments/development.rb
280
295
  - spec/integration/apps/rails_app/config/environments/production.rb
281
296
  - spec/integration/apps/rails_app/config/environments/test.rb
297
+ - spec/integration/apps/rails_app/config/initializers/assets.rb
282
298
  - spec/integration/apps/rails_app/config/initializers/backtrace_silencers.rb
299
+ - spec/integration/apps/rails_app/config/initializers/cookies_serializer.rb
300
+ - spec/integration/apps/rails_app/config/initializers/filter_parameter_logging.rb
283
301
  - spec/integration/apps/rails_app/config/initializers/inflections.rb
284
302
  - spec/integration/apps/rails_app/config/initializers/mime_types.rb
285
303
  - spec/integration/apps/rails_app/config/initializers/secret_token.rb
@@ -287,13 +305,16 @@ test_files:
287
305
  - spec/integration/apps/rails_app/config/initializers/wrap_parameters.rb
288
306
  - spec/integration/apps/rails_app/config/locales/en.yml
289
307
  - spec/integration/apps/rails_app/config/routes.rb
308
+ - spec/integration/apps/rails_app/config/secrets.yml
290
309
  - spec/integration/apps/rails_app/lib/assets/.gitkeep
310
+ - spec/integration/apps/rails_app/lib/assets/.keep
291
311
  - spec/integration/apps/rails_app/public/404.html
292
312
  - spec/integration/apps/rails_app/public/422.html
293
313
  - spec/integration/apps/rails_app/public/500.html
294
314
  - spec/integration/apps/rails_app/public/favicon.ico
295
315
  - spec/integration/apps/rails_app/script/rails
296
316
  - spec/integration/rack/camel_caser_spec.rb
317
+ - spec/integration/rack/error_spec.rb
297
318
  - spec/integration/rails/camel_caser_accept_header_spec.rb
298
319
  - spec/integration/rails/camel_caser_spec.rb
299
320
  - spec/spec_helper.rb
@@ -307,3 +328,4 @@ test_files:
307
328
  - spec/unit/route_parser_spec.rb
308
329
  - spec/unit/sparrow_spec.rb
309
330
  - spec/unit/steward_spec.rb
331
+ has_rdoc: