kinetic_cafe_error 1.8.1 → 1.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dc17826f6f7567f2438621fac02064e64fae64ba
4
- data.tar.gz: 8ee581bf23ad9bbedcb42638e01d159773f02c35
3
+ metadata.gz: fec4aacd3216e7dd65b34bc85e3c6f6a388de85d
4
+ data.tar.gz: b7456d64b7ad2bf4b8c0260d70543e552506de13
5
5
  SHA512:
6
- metadata.gz: 3398f8cefdabc226f3851a6b4ecf7e9a3dc0db0c135a66699341e71367ab53852745b09cf8856043ba79223a9e096c13ba83ff2405c008effe35979ae494e038
7
- data.tar.gz: da175a041e62246c34e837723e0f631b9150f96891aec8271396464aaa3c09dcd456381aa689019bf9b17f04aa3b9b8110fe99874e21c9c143947fc60e1029f7
6
+ metadata.gz: 777e6024ab58cc36d601b584dec51eb5ed0e9e2cc58b37741f75c71232568e5ada44653c283ea59c5aadcafb27b8675d363cec706a5b413ba202c8d84b963064
7
+ data.tar.gz: 85348156230d8e3ed1ef759b99202e06e1f0d24e8cc600fb032b0543fceae617f0041659bd9fe09540ab6b25f5648de866055f90d4d955c5e93dc59795f6058d
data/.travis.yml CHANGED
@@ -3,9 +3,6 @@ language: ruby
3
3
  rvm:
4
4
  - 2.2.2
5
5
  - 2.1.6
6
- - 2.0.0
7
- - 1.9.3
8
- - jruby-1.7
9
6
  - jruby-9.0.0.0
10
7
  - jruby-head
11
8
  - ruby-head
@@ -28,10 +25,4 @@ before_script:
28
25
  script: rake travis
29
26
  after_script:
30
27
  - rake travis:after -t
31
- notifications:
32
- email:
33
- recipients:
34
- - FIX@example.com
35
- on_success: change
36
- on_failure: always
37
28
  sudo: false
data/History.rdoc CHANGED
@@ -1,3 +1,15 @@
1
+ === 1.9 / 2015-11-30
2
+
3
+ * 2 bug fixes:
4
+
5
+ * The #stringify method needed to be moved to KineticCafe::ErrorModule so
6
+ that hierarchies *not* built from KineticCafe::Error can properly use query
7
+ parameter parsing.
8
+
9
+ * kinetic_cafe_error has required Ruby 2.1 or higher since version 1.5
10
+ because of the inclusion of i18n-tasks as a dependency. This is now
11
+ reflected in the dependencies.
12
+
1
13
  === 1.8.1 / 2015-10-26
2
14
 
3
15
  * Re-release because 1.8 was yanked
data/Rakefile CHANGED
@@ -15,7 +15,7 @@ spec = Hoe.spec 'kinetic_cafe_error' do
15
15
  developer('Austin Ziegler', 'aziegler@kineticcafe.com')
16
16
  developer('Jero Sutlovic', 'jsutlovic@kineticcafe.com')
17
17
 
18
- require_ruby_version '>= 1.9.2'
18
+ require_ruby_version '>= 2.1'
19
19
 
20
20
  self.history_file = 'History.rdoc'
21
21
  self.readme_file = 'README.rdoc'
@@ -25,7 +25,7 @@ module KineticCafe # :nodoc:
25
25
  # rescue clause and handled there, as is shown in the included
26
26
  # KineticCafe::ErrorHandler controller concern for Rails.
27
27
  class Error < ::StandardError
28
- VERSION = '1.8.1' # :nodoc:
28
+ VERSION = '1.9' # :nodoc:
29
29
 
30
30
  # Get the KineticCafe::Error functionality.
31
31
  include KineticCafe::ErrorModule
@@ -169,55 +169,6 @@ module KineticCafe # :nodoc:
169
169
  base.singleton_class.send :undef_method, :__rack_status
170
170
  end
171
171
  end
172
-
173
- private
174
-
175
- def default_status
176
- defined?(Rack::Utils) && :bad_request || 400
177
- end
178
-
179
- def default_severity
180
- :error
181
- end
182
-
183
- def stringify(object, namespace = nil)
184
- case object
185
- when Hash
186
- stringify_hash(object, namespace).compact.sort.join('; ')
187
- when Array
188
- stringify_array(object, namespace)
189
- else
190
- stringify_value(namespace, object)
191
- end
192
- end
193
-
194
- def stringify_hash(hash, namespace)
195
- hash.collect do |key, value|
196
- key = namespace ? "#{namespace}[#{key}]" : key
197
- case value
198
- when Hash
199
- next if value.nil?
200
- stringify(value, key)
201
- when Array
202
- stringify_array(key, value)
203
- else
204
- stringify_value(key, value)
205
- end
206
- end
207
- end
208
-
209
- def stringify_array(key, array)
210
- key = "#{key}[]"
211
- if array.empty?
212
- stringify_value(key, [])
213
- else
214
- array.collect { |value| stringify(value, key) }.join(', ')
215
- end
216
- end
217
-
218
- def stringify_value(key, value)
219
- "#{key}: #{value}"
220
- end
221
172
  end
222
173
  end
223
174
 
@@ -200,6 +200,53 @@ module KineticCafe # :nodoc:
200
200
  @i18n_params.update(cause: @cause.message)
201
201
  end
202
202
 
203
+ def stringify(object, namespace = nil)
204
+ case object
205
+ when Hash
206
+ stringify_hash(object, namespace).compact.sort.join('; ')
207
+ when Array
208
+ stringify_array(object, namespace)
209
+ else
210
+ stringify_value(namespace, object)
211
+ end
212
+ end
213
+
214
+ def stringify_hash(hash, namespace)
215
+ hash.collect do |key, value|
216
+ key = namespace ? "#{namespace}[#{key}]" : key
217
+ case value
218
+ when Hash
219
+ next if value.nil?
220
+ stringify(value, key)
221
+ when Array
222
+ stringify_array(key, value)
223
+ else
224
+ stringify_value(key, value)
225
+ end
226
+ end
227
+ end
228
+
229
+ def stringify_array(key, array)
230
+ key = "#{key}[]"
231
+ if array.empty?
232
+ stringify_value(key, [])
233
+ else
234
+ array.collect { |value| stringify(value, key) }.join(', ')
235
+ end
236
+ end
237
+
238
+ def stringify_value(key, value)
239
+ "#{key}: #{value}"
240
+ end
241
+
242
+ def default_status
243
+ defined?(Rack::Utils) && :bad_request || 400
244
+ end
245
+
246
+ def default_severity
247
+ :error
248
+ end
249
+
203
250
  class << self
204
251
  ##
205
252
  # The base for I18n key resolution. Defaults to 'kcerrors'.
@@ -91,6 +91,12 @@ describe KineticCafe::Error, '.hierarchy' do
91
91
  assert My < KineticCafe::ErrorModule
92
92
  end
93
93
 
94
+ it 'can handle a query parameter (issue #9)' do
95
+ expected = { query: "id: 1" }
96
+ actual = My.new(query: { id: 1 }).instance_variable_get(:@i18n_params)
97
+ assert_equal expected, actual
98
+ end
99
+
94
100
  it 'cannot be extended a second time' do
95
101
  ex = assert_raises do
96
102
  KineticCafe::Error.hierarchy(class: :My)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kinetic_cafe_error
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: '1.9'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Austin Ziegler
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-10-26 00:00:00.000000000 Z
12
+ date: 2015-11-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
@@ -283,14 +283,14 @@ dependencies:
283
283
  requirements:
284
284
  - - "~>"
285
285
  - !ruby/object:Gem::Version
286
- version: '3.13'
286
+ version: '3.14'
287
287
  type: :development
288
288
  prerelease: false
289
289
  version_requirements: !ruby/object:Gem::Requirement
290
290
  requirements:
291
291
  - - "~>"
292
292
  - !ruby/object:Gem::Version
293
- version: '3.13'
293
+ version: '3.14'
294
294
  description: |-
295
295
  kinetic_cafe_error provides an API-smart error base class and a DSL for
296
296
  defining errors. Under Rails, it also provides a controller concern
@@ -365,7 +365,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
365
365
  requirements:
366
366
  - - ">="
367
367
  - !ruby/object:Gem::Version
368
- version: 1.9.2
368
+ version: '2.1'
369
369
  required_rubygems_version: !ruby/object:Gem::Requirement
370
370
  requirements:
371
371
  - - ">="