object_attorney 2.5.6 → 2.5.7

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MWJjMGU4MDAyYjAwNTI3ZjM4NmQ2ODNjNDFmZWFhMzdiM2JhMzM1OA==
4
+ OTgxZTRjNzNjNWFmMTQxYWE3MGE0ZTliMmEyOGJkMTc3MzZmMTY2Yw==
5
5
  data.tar.gz: !binary |-
6
- MmVjNWFhYzY1ZWE3OTdkMTE1Nzg5ZDg2NDIzMzJiMjYxZGQzYmY3Nw==
6
+ ZmNmNjczMDJkYjM5YjRiMDgyNmM5NTczY2I0ZjRkYjdlODY2YWRkZg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ODYxMmNjNGE0MTI3YjA5ZDc5ZDEwM2I5YTQ2MWY2NzNkZDY5NGJjMmI1Yzdk
10
- NTVjNWZmNWZiNTkyOGZjM2I1YTliZjZmN2EwZjQ1MzkyYTkwMjc2MTYwYjgx
11
- YTY1OTM2YmY0ODllYjNlMjI5Njc5ZGQ3ZmFjMzFlMTk4Yjg5MzY=
9
+ MjljNWE3ZWRmYWZmNDQxMDgxMzhkZGFjMzkxOTNlNzMxNjQ0ZTRmOWMwMWYx
10
+ OTIyMDQxZjZiZDY0ZWUxMmZhM2FlNGZhNjFlMTRkN2NiNWI1NTUxYjdhMjIx
11
+ NTRmYTJkOTdiMjk0MWE0OGQxODlhYjc3YmYwYWMxZWZjOGIyMjY=
12
12
  data.tar.gz: !binary |-
13
- ZDc0ZDhiMjY2YWJkYjgzMWVkMzYzZDIxZTBhNzQ3Y2M2N2RhMjRlZGM3YTcy
14
- OGYxYTU1OWRjYjQ4NGZkMjk2MWJkZjI4Mzg4NjRhMDgwMmE5ZGQ3ZDU5OTVm
15
- NjRlYWQxOTQyZGMyYWU0NWQzYjY4OWY0NDk3M2FiMTdkMGYzNGI=
13
+ MGVjNjEzNWNhNWY4YjczZmMwMWY5MzdjMTY0NzY1YTFlYjcxYTBlMDg4ZGU3
14
+ MTNlN2I0Yjg1ODk1MjM0OTkxNDlhZTJmZDM3YTc0ZmY2YTIyNjQ1NjYyZDAw
15
+ MzJlM2EzN2M0MGM0MWE5YjJkYjQ2OGY1ZWY5ODFkOGE2NGIyYTQ=
@@ -23,6 +23,10 @@ module ObjectAttorney
23
23
  returning_value.nil? ? default_value : returning_value
24
24
  end
25
25
 
26
+ def has_errors_method?(object)
27
+ object.present? && object.respond_to?(:errors) && !object.errors.nil?
28
+ end
29
+
26
30
  end
27
31
 
28
32
  end
@@ -34,7 +34,7 @@ module ObjectAttorney
34
34
  nested_vs_invalid = {}
35
35
 
36
36
  nested_objects.each do |reflection, nested_object|
37
- if !nested_object.errors.empty? && !nested_vs_invalid.include?(reflection.name)
37
+ if Helpers.has_errors_method?(nested_object) && !nested_object.errors.empty? && !nested_vs_invalid.include?(reflection.name)
38
38
  message = errors.send(:normalize_message, reflection.name, :invalid, {})
39
39
 
40
40
  if !errors.messages[reflection.name].try(:include?, message)
@@ -2,7 +2,7 @@ module ObjectAttorney
2
2
  module Validations
3
3
 
4
4
  def valid?(context = nil)
5
- return true if override_validations? || !self.respond_to?(:errors) || self.errors.nil?
5
+ return true if override_validations? || !Helpers.has_errors_method?(self)
6
6
 
7
7
  context ||= (new_record? ? :create : :update)
8
8
  output = super(context)
@@ -22,7 +22,7 @@ module ObjectAttorney
22
22
 
23
23
  def populate_imposed_errors
24
24
  if respond_to?(:represented_object)
25
- represented_object.errors.each { |key, value| @imposed_errors[key] = value } if represented_object.present? && represented_object.errors.present?
25
+ represented_object.errors.each { |key, value| @imposed_errors[key] = value } if Helpers.has_errors_method?(represented_object)
26
26
  else
27
27
  errors.each { |key, value| @imposed_errors[key] = value }
28
28
  end
@@ -1,3 +1,3 @@
1
1
  module ObjectAttorney
2
- VERSION = "2.5.6"
2
+ VERSION = "2.5.7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: object_attorney
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.6
4
+ version: 2.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - João Gonçalves