model_error_messages 1.0.2 → 1.1.0
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 007df75f1595da7a658b842cd21ee696b1fd528f
|
4
|
+
data.tar.gz: dcb48d29502d70d33764934b945d64c5ada1b061
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 075734aaecb95dbc036310aeeef7dce016568075b6b7d5af236ae314502fce8e70ad576e02671469d8b5c774b83d54c1ebc78f6f2197c3d83f471852212dbb59
|
7
|
+
data.tar.gz: 757313149b18469716c470b4fc7090994625aab782a48746d8560f88ccce6624dbe09af67ae8a479e4c7d108d7ab73e5de0957d8dd721c9c30cc14defa360ee2
|
data/Gemfile.lock
CHANGED
@@ -37,11 +37,11 @@ module ModelErrorMessages
|
|
37
37
|
messages = model.errors.full_messages
|
38
38
|
|
39
39
|
if messages.count == 1 && config.single_error_in_paragraph
|
40
|
-
return tag(:p, messages.first)
|
40
|
+
return tag(:p, CGI.escapeHTML(messages.first))
|
41
41
|
end
|
42
42
|
|
43
43
|
ul_string = messages.map do |message|
|
44
|
-
tag(:li, message)
|
44
|
+
tag(:li, CGI.escapeHTML(message))
|
45
45
|
end.join.html_safe
|
46
46
|
|
47
47
|
tag(:ul, ul_string)
|
@@ -61,8 +61,9 @@ module ModelErrorMessages
|
|
61
61
|
attrs << %( #{pair.first}="#{CGI.escapeHTML(pair.last.to_s)}")
|
62
62
|
end
|
63
63
|
attrs
|
64
|
-
end
|
65
|
-
|
64
|
+
end.html_safe
|
65
|
+
|
66
|
+
"<#{name}#{string_attributes}>#{value}</#{name}>".html_safe
|
66
67
|
end
|
67
68
|
end
|
68
69
|
end
|
@@ -10,7 +10,7 @@ end
|
|
10
10
|
def mock_model_full_messages(errors_count)
|
11
11
|
case errors_count
|
12
12
|
when 0 then []
|
13
|
-
when 1 then ['Title is missing']
|
13
|
+
when 1 then ['Title is -> missing']
|
14
14
|
when 2 then ['Please select an author', 'Content is missing']
|
15
15
|
else
|
16
16
|
raise 'Please enter a valid `errors` count.'
|
@@ -27,7 +27,6 @@ end
|
|
27
27
|
describe 'Helpers' do
|
28
28
|
describe '#model_error_messages' do
|
29
29
|
include ModelErrorMessages::Helpers
|
30
|
-
attr_accessor :output_buffer
|
31
30
|
|
32
31
|
subject { model_error_messages(mock_model) }
|
33
32
|
|
@@ -46,7 +45,7 @@ describe 'Helpers' do
|
|
46
45
|
result = model_error_messages(mock_model(errors: 1))
|
47
46
|
expect(result).to eql(
|
48
47
|
'<div class="alert alert-danger model-error-messages">' \
|
49
|
-
'<p>Title is missing</p>' \
|
48
|
+
'<p>Title is -> missing</p>' \
|
50
49
|
'</div>'
|
51
50
|
)
|
52
51
|
end
|
@@ -60,6 +59,11 @@ describe 'Helpers' do
|
|
60
59
|
'</div>'
|
61
60
|
)
|
62
61
|
end
|
62
|
+
|
63
|
+
it 'returns a safe string' do
|
64
|
+
result = model_error_messages(mock_model(errors: 1))
|
65
|
+
expect(result.html_safe?).to eql(true)
|
66
|
+
end
|
63
67
|
end
|
64
68
|
|
65
69
|
context 'with a custom configuration' do
|
@@ -78,7 +82,7 @@ describe 'Helpers' do
|
|
78
82
|
expect(result).to eql(
|
79
83
|
'<div class="model-foo bar">' \
|
80
84
|
'<h1>An error occurred</h1>' \
|
81
|
-
'<ul><li>Title is missing</li></ul>' \
|
85
|
+
'<ul><li>Title is -> missing</li></ul>' \
|
82
86
|
'<p>Please try again.</p>' \
|
83
87
|
'</div>'
|
84
88
|
)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: model_error_messages
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christophe Maximin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-10-
|
11
|
+
date: 2016-10-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|