coaster 1.2.2 → 1.3.0

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
  SHA256:
3
- metadata.gz: 2b275d9ddd61f4631acadb1fee4ebfd3fb1d0bb0856621b732b431721940b460
4
- data.tar.gz: f10dfe4a4583ee7ca7594ee514f384d428b3795ff421b420a86b70a89319389e
3
+ metadata.gz: aeeb91379c4231e8622891bfbfee5c93c202e96706bfa7d569b4bcea3e19d696
4
+ data.tar.gz: 124f01130e4fadf67e9e28c134e409986f8d1186e324f1b93e35fdf040a09652
5
5
  SHA512:
6
- metadata.gz: 57169b9c338d9499983fbe438d5739d2b82539652f448ed3e703e9c94570fb6f719f16aa628ea7b8928f1db475ed1e3d490acad9b8246ba43792a563cc9fa3a9
7
- data.tar.gz: 7dcb832e9d9e855973a6743ec05c12a25fcd78d58806d5b7b2e1c8f85faf6896f397ac82ed008a600dc8d273597593c3ff651cc7f13c0b3637a0c43a07c52056
6
+ metadata.gz: fe9c0490709aa11a3c96816294702dbebd982b7304af0633f319612035f4be627f030a928749506d454fd2806c485b6e440c37c0895dae8ec2633a780a66f4dd
7
+ data.tar.gz: 5a7de756347f74c4ece3dad9b36a987d44715b29cca55ded06d2a1bdfb0b38f4e16c654a4d9c2db3284c4cf76ab629afcbfa3bc33f373eeb21fc52db8008d6e0
@@ -62,19 +62,18 @@ class StandardError
62
62
  @tags = hash.delete(:tags) || hash.delete(:tag)
63
63
  @level = hash.delete(:level) || hash.delete(:severity) || @level
64
64
  @tkey = hash.delete(:tkey)
65
- msg = cause.message if msg.nil? && cause
66
65
  @attributes.merge!(hash)
67
66
  when String then
68
67
  msg = message
69
68
  when FalseClass, NilClass then
70
- msg = ''
69
+ msg = nil
71
70
  else
72
71
  msg = message
73
72
  end
74
73
 
75
74
  @fingerprint = [] unless @fingerprint.is_a?(Array)
76
75
  @tags = {} unless @tags.is_a?(Hash)
77
- msg ||= self.class._translate
76
+ msg = cause.message if msg.blank? && cause
78
77
  super(msg)
79
78
  end
80
79
 
@@ -143,6 +142,15 @@ class StandardError
143
142
  attributes[:descriptions]
144
143
  end
145
144
 
145
+ # https://github.com/getsentry/sentry-ruby/blob/fbbc7a51ed10684d0e8b7bd9d2a1b65a7351c9ef/lib/raven/event.rb#L162
146
+ # sentry message use `to_s` method
147
+ # https://ruby-doc.org/core-2.5.1/Exception.html#method-i-to_s
148
+ alias to_origin_s to_s
149
+
150
+ def to_s
151
+ "#{_translate}\n#{to_origin_s}"
152
+ end
153
+
146
154
  def to_hash
147
155
  hash = attributes.merge(
148
156
  type: self.class.name, status: status,
@@ -66,17 +66,4 @@ class StandardError
66
66
  capture(options)
67
67
  just_logging(options)
68
68
  end
69
-
70
- # https://github.com/getsentry/sentry-ruby/blob/fbbc7a51ed10684d0e8b7bd9d2a1b65a7351c9ef/lib/raven/event.rb#L162
71
- # sentry use `to_s` as a message
72
- alias to_origin_s to_s
73
- def message
74
- to_origin_s
75
- end
76
-
77
- def to_s
78
- str = super # https://ruby-doc.org/core-2.5.1/Exception.html#method-i-to_s
79
- str = "#{user_message} / #{str}" if user_message.present?
80
- str
81
- end
82
69
  end
@@ -1,3 +1,3 @@
1
1
  module Coaster
2
- VERSION = '1.2.2'
2
+ VERSION = '1.3.0'
3
3
  end
@@ -21,74 +21,90 @@ module Coaster
21
21
  end
22
22
 
23
23
  def test_standard_messages
24
- e = StandardError.new('asdf')
25
- assert_equal 'asdf', e.message
24
+ e = StandardError.new('developer message')
25
+ assert_equal "standard error translation\ndeveloper message", e.to_s
26
+ assert_equal "standard error translation\ndeveloper message", e.message
26
27
  assert_nil e.description
27
28
  assert_nil e.desc
28
29
  assert_equal 'standard error translation', e._translate
29
30
  assert_equal 'standard error translation', e.user_message
30
- assert_equal 'standard error translation / asdf', e.to_s
31
31
  assert_equal 'standard error title', e.title
32
- e = StandardError.new(m: 'foo', desc: 'bar')
33
- assert_equal 'foo', e.message
34
- assert_equal 'bar', e.description
35
- assert_equal 'bar', e.desc
36
- assert_equal 'bar', e._translate
37
- assert_equal 'bar', e.user_message
32
+ e = StandardError.new(m: 'developer message', desc: 'user message')
33
+ assert_equal "user message\ndeveloper message", e.to_s
34
+ assert_equal "user message\ndeveloper message", e.message
35
+ assert_equal 'user message', e.description
36
+ assert_equal 'user message', e.desc
37
+ assert_equal 'user message', e._translate
38
+ assert_equal 'user message', e.user_message
38
39
  assert_equal 'standard error title', e.title
39
- assert_equal 'bar / foo', e.to_s
40
40
  end
41
41
 
42
42
  def test_no_translation_class
43
- e = UntitledError.new('asdf')
44
- assert_equal 'asdf', e.message
43
+ e = UntitledError.new('developer message')
44
+ assert_equal "standard error translation\ndeveloper message", e.to_s
45
+ assert_equal "standard error translation\ndeveloper message", e.message
45
46
  assert_nil e.description
46
47
  assert_nil e.desc
47
48
  assert_equal 'standard error translation', e._translate
48
49
  assert_equal 'standard error translation', e.user_message
49
- assert_equal 'standard error translation / asdf', e.to_s
50
50
  assert_equal 'standard error title', e.title
51
- e = UntitledError.new(m: 'foo', desc: 'bar')
52
- assert_equal 'foo', e.message
53
- assert_equal 'bar', e.description
54
- assert_equal 'bar', e.desc
55
- assert_equal 'bar', e._translate
56
- assert_equal 'bar', e.user_message
57
- assert_equal 'bar / foo', e.to_s
51
+ e = UntitledError.new(m: 'developer message', desc: 'user message')
52
+ assert_equal "user message\ndeveloper message", e.to_s
53
+ assert_equal "user message\ndeveloper message", e.message
54
+ assert_equal 'user message', e.description
55
+ assert_equal 'user message', e.desc
56
+ assert_equal 'user message', e._translate
57
+ assert_equal 'user message', e.user_message
58
58
  assert_equal 'standard error title', e.title
59
59
  end
60
60
 
61
61
  def test_with_translation_class
62
- e = SampleError.new('asdf')
63
- assert_equal 'asdf', e.message
62
+ e = SampleError.new
63
+ assert_equal "Test sample error\nCoaster::TestStandardError::SampleError", e.to_s
64
+ assert_equal "Test sample error\nCoaster::TestStandardError::SampleError", e.message
65
+ assert_nil e.description
66
+ assert_nil e.desc
67
+ assert_equal 'Test sample error', e._translate
68
+ assert_equal 'Test sample error', e.user_message
69
+ assert_equal 'Test this title', e.title
70
+ e = SampleError.new(beet: 'apple')
71
+ assert_equal "Test sample error\nCoaster::TestStandardError::SampleError", e.to_s
72
+ assert_equal "Test sample error\nCoaster::TestStandardError::SampleError", e.message
73
+ assert_nil e.description
74
+ assert_nil e.desc
75
+ assert_equal 'Test sample error', e._translate
76
+ assert_equal 'Test sample error', e.user_message
77
+ assert_equal 'Test this title', e.title
78
+ e = SampleError.new('developer message')
79
+ assert_equal "Test sample error\ndeveloper message", e.to_s
80
+ assert_equal "Test sample error\ndeveloper message", e.message
64
81
  assert_nil e.description
65
82
  assert_nil e.desc
66
83
  assert_equal 'Test sample error', e._translate
67
84
  assert_equal 'Test sample error', e.user_message
68
- assert_equal 'Test sample error / asdf', e.to_s
69
85
  assert_equal 'Test this title', e.title
70
- e = SampleError.new(m: 'foo', desc: 'bar')
71
- assert_equal 'foo', e.message
72
- assert_equal 'bar', e.description
73
- assert_equal 'bar', e.desc
74
- assert_equal 'bar', e._translate
75
- assert_equal 'bar', e.user_message
76
- assert_equal 'bar / foo', e.to_s
86
+ e = SampleError.new(m: 'developer message', desc: 'user message')
87
+ assert_equal "user message\ndeveloper message", e.to_s
88
+ assert_equal "user message\ndeveloper message", e.message
89
+ assert_equal 'user message', e.description
90
+ assert_equal 'user message', e.desc
91
+ assert_equal 'user message', e._translate
92
+ assert_equal 'user message', e.user_message
77
93
  assert_equal 'Test this title', e.title
78
94
  e = SampleError.new(tkey: 'sample.interpolation', value: 'blah')
79
- assert_equal 'Test sample error', e.message
95
+ assert_equal "Sample Interpolation blah\nCoaster::TestStandardError::SampleError", e.to_s
96
+ assert_equal "Sample Interpolation blah\nCoaster::TestStandardError::SampleError", e.message
80
97
  assert_nil e.description
81
98
  assert_nil e.desc
82
99
  assert_equal 'Sample Interpolation blah', e._translate
83
100
  assert_equal 'Sample Interpolation blah', e.user_message
84
- assert_equal 'Sample Interpolation blah / Test sample error', e.to_s
85
101
  assert_equal 'Test this title', e.title
86
102
  end
87
103
 
88
104
  def test_message
89
105
  raise SampleError, {m: 'beer is proof'}
90
106
  rescue => e
91
- assert_equal 'beer is proof', e.message
107
+ assert_equal "Test sample error\nbeer is proof", e.message
92
108
  end
93
109
 
94
110
  def test_attributes
@@ -108,12 +124,12 @@ module Coaster
108
124
  assert_equal 'Coaster::TestStandardError::ExampleError', e.to_hash['type']
109
125
  assert_equal 20, e.to_hash['status']
110
126
  assert_equal 500, e.to_hash['http_status']
111
- assert_equal 'Test sample error', e.to_hash['message']
127
+ assert_equal "Test example error\nTest sample error\n#{SampleError.name}", e.to_hash['message']
112
128
  assert_equal 'rams', e.to_hash['cause']['frog']
113
129
  assert_equal 'Coaster::TestStandardError::SampleError', e.to_hash['cause']['type']
114
130
  assert_equal 10, e.to_hash['cause']['status']
115
131
  assert_equal 500, e.to_hash['cause']['http_status']
116
- assert_equal 'Test sample error', e.to_hash['cause']['message']
132
+ assert_equal "Test sample error\nCoaster::TestStandardError::SampleError", e.to_hash['cause']['message']
117
133
  end
118
134
 
119
135
  def test_cause_attributes
@@ -137,7 +153,9 @@ module Coaster
137
153
  rescue => e
138
154
  detail = <<-LOG
139
155
  [Coaster::TestStandardError::ExampleError] status:20
140
- MESSAGE: Test sample error
156
+ MESSAGE: Test example error
157
+ Test sample error
158
+ Coaster::TestStandardError::SampleError
141
159
  @fingerprint: []
142
160
  @tags: {}
143
161
  @level: \"error\"
@@ -146,6 +164,7 @@ module Coaster
146
164
  @raven: {}
147
165
  CAUSE: [Coaster::TestStandardError::SampleError] status:10
148
166
  MESSAGE: Test sample error
167
+ Coaster::TestStandardError::SampleError
149
168
  @fingerprint: []
150
169
  @tags: {}
151
170
  @level: \"error\"
@@ -194,7 +213,7 @@ LOG
194
213
  begin
195
214
  root_cause_sample3
196
215
  rescue => e
197
- assert_equal 'a', e.root_cause.message
216
+ assert_equal "standard error translation\na", e.root_cause.message
198
217
  end
199
218
  end
200
219
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coaster
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - buzz jung
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-13 00:00:00.000000000 Z
11
+ date: 2020-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n
@@ -80,62 +80,6 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: pry
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: pry-stack_explorer
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: pry-byebug
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: pry-doc
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
83
  - !ruby/object:Gem::Dependency
140
84
  name: minitest
141
85
  requirement: !ruby/object:Gem::Requirement