lhs 11.2.0 → 11.2.1

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: 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