active_interaction 3.5.2 → 3.5.3

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
2
  SHA1:
3
- metadata.gz: c0d9ea988d5cb1324a1cfff2baa3c901eafb47ce
4
- data.tar.gz: 70ddb30716690e05f11fa65314a609ba61a4633e
3
+ metadata.gz: fbdbdde0bcea450c62432ce3c008b01b8f848353
4
+ data.tar.gz: 99703c006de4b26a29258967e8bd0bd710b98670
5
5
  SHA512:
6
- metadata.gz: 232fdf439bb14b719903140fd7da05339a98ea7d926e9540ee65333ec2e6d3889676b94194b3e3de3fa5311fa55363a5e88a43828deace94ec1a49d2438e60dd
7
- data.tar.gz: 7f0125b70ae502bcb5b891d71b613cedb8321d046c5730f4e559c3d9f81c36986492085b06fef341514f8860fcf9ed7b711808a7a09769370273d293c3182364
6
+ metadata.gz: f1c89ec2d431e698c8a4e7917c4f17a46a91b6275a6efa686078437752318f8c2c0bf555dd270c90c862c05e0f60e2912edf8f3cd3f81cd98804c62f5de56977
7
+ data.tar.gz: ae99d37c104721aac9920dc3dc4e9deec5507dbbdb6fcddef4c10222371f46d6ad95957f328372d2dd196356d93d03af755b75f444cdcd429f66bb84a0231203
@@ -232,17 +232,17 @@ module ActiveInteraction
232
232
  # @return [Boolean]
233
233
  #
234
234
  # @since 2.1.0
235
- def given?(input, *rest)
235
+ def given?(input, *rest) # rubocop:disable Metrics/CyclomaticComplexity
236
236
  filter_level = self.class
237
237
  input_level = @_interaction_inputs
238
238
 
239
239
  [input, *rest].map(&:to_sym).each do |key|
240
240
  filter_level = filter_level.filters[key]
241
- if !filter_level || input_level.nil? || !input_level.key?(key)
242
- break false
243
- end
244
241
 
245
- input_level = input_level[key]
242
+ break false if filter_level.nil? || input_level.nil?
243
+ break false unless input_level.key?(key) || input_level.key?(key.to_s)
244
+
245
+ input_level = input_level[key] || input_level[key.to_s]
246
246
  end && true
247
247
  end
248
248
 
@@ -6,5 +6,5 @@ module ActiveInteraction
6
6
  # The version number.
7
7
  #
8
8
  # @return [Gem::Version]
9
- VERSION = Gem::Version.new('3.5.2')
9
+ VERSION = Gem::Version.new('3.5.3')
10
10
  end
@@ -440,7 +440,7 @@ describe ActiveInteraction::Base do
440
440
  end
441
441
  end
442
442
 
443
- it 'is true when the nested input is given' do
443
+ it 'is true when the nested inputs symbols are given' do
444
444
  described_class.class_exec do
445
445
  def execute
446
446
  given?(:x, :y)
@@ -451,6 +451,17 @@ describe ActiveInteraction::Base do
451
451
  expect(result).to be true
452
452
  end
453
453
 
454
+ it 'is true when the nested inputs strings are given' do
455
+ described_class.class_exec do
456
+ def execute
457
+ given?(:x, :y)
458
+ end
459
+ end
460
+
461
+ inputs['x'] = { 'y' => false }
462
+ expect(result).to be true
463
+ end
464
+
454
465
  it 'is false when the nested input is not given' do
455
466
  described_class.class_exec do
456
467
  def execute
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_interaction
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.2
4
+ version: 3.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aaron Lasseigne
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-06-09 00:00:00.000000000 Z
12
+ date: 2017-09-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activemodel
@@ -273,55 +273,55 @@ required_rubygems_version: !ruby/object:Gem::Requirement
273
273
  version: '0'
274
274
  requirements: []
275
275
  rubyforge_project:
276
- rubygems_version: 2.6.11
276
+ rubygems_version: 2.6.13
277
277
  signing_key:
278
278
  specification_version: 4
279
279
  summary: Manage application specific business logic.
280
280
  test_files:
281
- - spec/active_interaction/base_spec.rb
282
- - spec/active_interaction/concerns/active_modelable_spec.rb
283
- - spec/active_interaction/concerns/active_recordable_spec.rb
284
- - spec/active_interaction/concerns/hashable_spec.rb
285
- - spec/active_interaction/concerns/missable_spec.rb
286
- - spec/active_interaction/concerns/runnable_spec.rb
287
- - spec/active_interaction/errors_spec.rb
288
- - spec/active_interaction/filter_column_spec.rb
289
- - spec/active_interaction/filter_spec.rb
281
+ - spec/spec_helper.rb
282
+ - spec/active_interaction/grouped_input_spec.rb
283
+ - spec/active_interaction/filters/hash_filter_spec.rb
290
284
  - spec/active_interaction/filters/abstract_date_time_filter_spec.rb
291
- - spec/active_interaction/filters/abstract_filter_spec.rb
292
- - spec/active_interaction/filters/abstract_numeric_filter_spec.rb
293
- - spec/active_interaction/filters/array_filter_spec.rb
294
285
  - spec/active_interaction/filters/boolean_filter_spec.rb
295
- - spec/active_interaction/filters/date_filter_spec.rb
296
- - spec/active_interaction/filters/date_time_filter_spec.rb
297
- - spec/active_interaction/filters/decimal_filter_spec.rb
298
- - spec/active_interaction/filters/file_filter_spec.rb
286
+ - spec/active_interaction/filters/array_filter_spec.rb
287
+ - spec/active_interaction/filters/time_filter_spec.rb
288
+ - spec/active_interaction/filters/abstract_filter_spec.rb
299
289
  - spec/active_interaction/filters/float_filter_spec.rb
300
- - spec/active_interaction/filters/hash_filter_spec.rb
290
+ - spec/active_interaction/filters/date_filter_spec.rb
301
291
  - spec/active_interaction/filters/integer_filter_spec.rb
302
- - spec/active_interaction/filters/interface_filter_spec.rb
303
292
  - spec/active_interaction/filters/object_filter_spec.rb
304
- - spec/active_interaction/filters/string_filter_spec.rb
305
293
  - spec/active_interaction/filters/symbol_filter_spec.rb
306
- - spec/active_interaction/filters/time_filter_spec.rb
307
- - spec/active_interaction/grouped_input_spec.rb
294
+ - spec/active_interaction/filters/string_filter_spec.rb
295
+ - spec/active_interaction/filters/abstract_numeric_filter_spec.rb
296
+ - spec/active_interaction/filters/decimal_filter_spec.rb
297
+ - spec/active_interaction/filters/file_filter_spec.rb
298
+ - spec/active_interaction/filters/interface_filter_spec.rb
299
+ - spec/active_interaction/filters/date_time_filter_spec.rb
308
300
  - spec/active_interaction/i18n_spec.rb
309
- - spec/active_interaction/integration/array_interaction_spec.rb
310
301
  - spec/active_interaction/integration/boolean_interaction_spec.rb
311
302
  - spec/active_interaction/integration/date_interaction_spec.rb
312
- - spec/active_interaction/integration/date_time_interaction_spec.rb
313
- - spec/active_interaction/integration/file_interaction_spec.rb
303
+ - spec/active_interaction/integration/symbol_interaction_spec.rb
304
+ - spec/active_interaction/integration/interface_interaction_spec.rb
305
+ - spec/active_interaction/integration/time_interaction_spec.rb
314
306
  - spec/active_interaction/integration/float_interaction_spec.rb
315
- - spec/active_interaction/integration/hash_interaction_spec.rb
316
307
  - spec/active_interaction/integration/integer_interaction_spec.rb
317
- - spec/active_interaction/integration/interface_interaction_spec.rb
318
- - spec/active_interaction/integration/object_interaction_spec.rb
319
308
  - spec/active_interaction/integration/string_interaction_spec.rb
320
- - spec/active_interaction/integration/symbol_interaction_spec.rb
321
- - spec/active_interaction/integration/time_interaction_spec.rb
322
- - spec/active_interaction/modules/input_processor_spec.rb
309
+ - spec/active_interaction/integration/array_interaction_spec.rb
310
+ - spec/active_interaction/integration/hash_interaction_spec.rb
311
+ - spec/active_interaction/integration/date_time_interaction_spec.rb
312
+ - spec/active_interaction/integration/file_interaction_spec.rb
313
+ - spec/active_interaction/integration/object_interaction_spec.rb
314
+ - spec/active_interaction/filter_column_spec.rb
315
+ - spec/active_interaction/errors_spec.rb
323
316
  - spec/active_interaction/modules/validation_spec.rb
324
- - spec/spec_helper.rb
325
- - spec/support/concerns.rb
317
+ - spec/active_interaction/modules/input_processor_spec.rb
318
+ - spec/active_interaction/filter_spec.rb
319
+ - spec/active_interaction/base_spec.rb
320
+ - spec/active_interaction/concerns/active_modelable_spec.rb
321
+ - spec/active_interaction/concerns/hashable_spec.rb
322
+ - spec/active_interaction/concerns/active_recordable_spec.rb
323
+ - spec/active_interaction/concerns/missable_spec.rb
324
+ - spec/active_interaction/concerns/runnable_spec.rb
326
325
  - spec/support/filters.rb
327
326
  - spec/support/interactions.rb
327
+ - spec/support/concerns.rb