lhs 11.2.0 → 11.2.1

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: ec9e7eae2816a09a270575802d332cf27a0a4ae5
4
- data.tar.gz: fee348a432bdace92a25a94a48efc319d0ed848d
3
+ metadata.gz: 03ef3cf453e687b887eecf083b9db24027367077
4
+ data.tar.gz: 813cf6662e7e1b84fc88f7bbea58e9ede0bd78f9
5
5
  SHA512:
6
- metadata.gz: e7e1fd9491380f0bf1cf439d4e895e515160922bcf10df80c92b542b50b0eed85e6d78a5f3a78459db26ab098a252aad52f7f8e3f7b1a4c6d78e6bb66c1ab982
7
- data.tar.gz: 75201af82683c6d58d8f7270f8b309ada0a6d81ea4c37bd9ebaebd445614813dcf82e9cbfa8f279291aa1bc64ad7f90eca9f61506163b223a6ef545cd87b176e
6
+ metadata.gz: bbab32a774d4fc31d35cec8a4a58d4ab9727f8605073ff4887b01fe6714248d77140987767e2d7c58a086869784d322114daebe637387440feb0286a26935163
7
+ data.tar.gz: e8e4c55d6c74e2286d0adc4cb77295d95df5bf902a8984e552ee5e719eee7db55222c604356e79a63296f0b94c9dcea91c343bc78931744433d478e1b5cb13c6
@@ -85,21 +85,28 @@ module LHS::Errors
85
85
  end
86
86
 
87
87
  def find_translated_error_message(attribute, message)
88
- record_name = record.model_name.name.underscore
89
88
  normalized_attribute = attribute.to_s.underscore
90
89
  normalized_message = message.to_s.underscore
91
- [
92
- ['lhs', 'errors', 'records', record_name, 'attributes', normalized_attribute, normalized_message],
93
- ['lhs', 'errors', 'records', record_name, normalized_message],
90
+ messages = []
91
+ messages = messages_for_record(normalized_attribute, normalized_message) if record
92
+ messages.concat([
94
93
  ['lhs', 'errors', 'messages', normalized_message],
95
94
  ['lhs', 'errors', 'attributes', normalized_attribute, normalized_message],
96
95
  ['lhs', 'errors', 'fallback_message']
97
- ].detect do |path|
96
+ ]).detect do |path|
98
97
  key = path.join('.')
99
98
  return I18n.translate(key) if I18n.exists?(key)
100
99
  end
101
100
  end
102
101
 
102
+ def messages_for_record(normalized_attribute, normalized_message)
103
+ record_name = record.model_name.name.underscore
104
+ [
105
+ ['lhs', 'errors', 'records', record_name, 'attributes', normalized_attribute, normalized_message],
106
+ ['lhs', 'errors', 'records', record_name, normalized_message]
107
+ ]
108
+ end
109
+
103
110
  def parse_messages(json)
104
111
  messages = {}
105
112
  fields_to_errors(json, messages) if json['fields']
@@ -1,3 +1,3 @@
1
1
  module LHS
2
- VERSION = "11.2.0"
2
+ VERSION = "11.2.1"
3
3
  end
@@ -228,5 +228,13 @@ describe LHS::Item do
228
228
  expect(record.reviews.last.errors).to be
229
229
  expect(record.reviews.last.errors[:name]).to include 'UNSUPPORTED_PROPERTY_VALUE'
230
230
  end
231
+
232
+ context 'accessing no model' do
233
+ it 'does not raise an error when trying to find error record model name' do
234
+ expect(lambda do
235
+ record.reviews.first.errors[:name]
236
+ end).not_to raise_error(NoMethodError)
237
+ end
238
+ end
231
239
  end
232
240
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lhs
3
3
  version: !ruby/object:Gem::Version
4
- version: 11.2.0
4
+ version: 11.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - https://github.com/local-ch/lhs/graphs/contributors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-02 00:00:00.000000000 Z
11
+ date: 2017-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lhc