code_error 0.9.3 → 1.0.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.
data/test/test_gen.rb ADDED
@@ -0,0 +1,76 @@
1
+ require "minitest/autorun"
2
+
3
+ $LOAD_PATH.unshift("#{File.dirname(__FILE__)}")
4
+ require "test_helper"
5
+ require "code_error"
6
+
7
+ class TestGen < Minitest::Test
8
+ GEN_ERROR_CODE_1 = :gen_code1
9
+ GEN_ERROR_MSG_1 = 'The error message for gen code 1.'
10
+ GEN_ERROR_STATUS_1 = :gen_failed1
11
+
12
+ GEN_ERROR_CODE_2 = :gen_code2
13
+ GEN_ERROR_MSG_2 = 'The error message for gen code 2.'
14
+ GEN_ERROR_STATUS_2 = :gen_failed2
15
+
16
+ GEN_ERROR_CODES = {
17
+ GEN_ERROR_CODE_1 => {
18
+ :status => GEN_ERROR_STATUS_1,
19
+ :msg => GEN_ERROR_MSG_1,
20
+ },
21
+ GEN_ERROR_CODE_2 => {
22
+ :status => GEN_ERROR_STATUS_2,
23
+ :msg => GEN_ERROR_MSG_2,
24
+ }
25
+ }
26
+
27
+ GEN_ERROR_CODE_UNDEFINED = :undefined_gen_code
28
+
29
+ class GenError < CodeError::Base
30
+ error_codes(GEN_ERROR_CODES)
31
+ end
32
+
33
+ def test_gen_should_return_the_correspond_data_if_given_code_is_defined
34
+ e = GenError.gen(GEN_ERROR_CODE_1)
35
+ assert(e.code == GEN_ERROR_CODE_1)
36
+ assert(e.status == GEN_ERROR_STATUS_1)
37
+ assert(e.msg == GEN_ERROR_MSG_1)
38
+ assert(e.data == { :code => GEN_ERROR_CODE_1,
39
+ :status => GEN_ERROR_STATUS_1,
40
+ :msg => GEN_ERROR_MSG_1,
41
+ :info => nil })
42
+ assert(e.message == e.data.inspect)
43
+ assert(!e.internal?)
44
+ end
45
+
46
+ def test_gen_should_return_an_internal_error_with_given_code_if_given_code_is_undefined
47
+ e = GenError.gen(GEN_ERROR_CODE_UNDEFINED)
48
+ assert(e.code == GEN_ERROR_CODE_UNDEFINED)
49
+ assert(e.status == CodeError::INTERNAL_STATUS)
50
+ assert(e.msg == CodeError::INTERNAL_MSG)
51
+ assert(e.internal?)
52
+ end
53
+
54
+ def test_gen_should_return_an_internal_error_with_given_msg_if_given_code_is_a_string
55
+ msg = 'An error message.'
56
+ e = GenError.gen(msg)
57
+ assert(e.code == CodeError::INTERNAL_CODE)
58
+ assert(e.status == CodeError::INTERNAL_STATUS)
59
+ assert(e.msg == msg)
60
+ assert(e.internal?)
61
+ end
62
+
63
+ def test_gen_should_return_an_success_error_if_given_code_is_a_success_code
64
+ e = GenError.gen(CodeError::SUCCESS_CODE)
65
+ assert(e.code == CodeError::SUCCESS_CODE)
66
+ assert(e.status == CodeError::SUCCESS_STATUS)
67
+ assert(e.msg == CodeError::SUCCESS_MSG)
68
+ assert(!e.internal?)
69
+ end
70
+
71
+ def test_gen_should_contain_the_info_if_an_info_is_given
72
+ info = 'some information'
73
+ e = GenError.gen(GEN_ERROR_CODE_1, { :info => info })
74
+ assert(e.info == info)
75
+ end
76
+ end
data/test/test_masked.rb CHANGED
@@ -1,89 +1,195 @@
1
- require "test/unit"
1
+ require "minitest/autorun"
2
2
 
3
3
  $LOAD_PATH.unshift("#{File.dirname(__FILE__)}")
4
4
  require "test_helper"
5
5
  require "code_error"
6
6
 
7
- class TestMasked < Test::Unit::TestCase
7
+ class TestMasked < Minitest::Test
8
8
 
9
- ERROR_CODE_1 = 1
10
- ERROR_MSG_1 = 'The error message for code 1.'
11
- ERROR_STATUS_1 = :failed
9
+ MASK_VALUES = [true, false]
12
10
 
13
- ERROR_CODE_2 = 2
14
- ERROR_MSG_2 = 'The error message for code 2.'
15
- ERROR_STATUS_2 = :failed
11
+ MASK_ERROR_CODE_1 = :mask_error_code1
12
+ MASK_ERROR_MSG_1 = 'The mask error message for code 1.'
13
+ MASK_ERROR_STATUS_1 = :mask_failed1
16
14
 
17
- ERROR_CODE_UNDEFINED = 55688
15
+ MASK_ERROR_CODE_2 = :mask_error_code2
16
+ MASK_ERROR_MSG_2 = 'The mask error message for code 2.'
17
+ MASK_ERROR_STATUS_2 = :mask_failed2
18
+
19
+ MASK_ERROR_CODE_3 = :mask_error_code3
20
+ MASK_ERROR_MSG_3 = 'The mask error message for code 3.'
21
+ MASK_ERROR_STATUS_3 = :mask_failed3
22
+
23
+ MASK_ERROR_CODE_UNDEFINED = :mask_undefined_code
24
+
25
+ MASK_ERROR_CODES = {
26
+ MASK_ERROR_CODE_1 => {
27
+ :status => MASK_ERROR_STATUS_1,
28
+ :msg => MASK_ERROR_MSG_1,
29
+ },
30
+ MASK_ERROR_CODE_2 => {
31
+ :status => MASK_ERROR_STATUS_2,
32
+ :msg => MASK_ERROR_MSG_2,
33
+ :masked => false
34
+ },
35
+ MASK_ERROR_CODE_3 => {
36
+ :status => MASK_ERROR_STATUS_3,
37
+ :msg => MASK_ERROR_MSG_3,
38
+ :masked => true
39
+ }
40
+ }
18
41
 
19
42
  class MaskedError < CodeError::Base
20
- def error_codes
21
- {
22
- ERROR_CODE_1 => {
23
- :status => ERROR_STATUS_1,
24
- :msg => ERROR_MSG_1,
25
- },
26
- ERROR_CODE_2 => {
27
- :status => ERROR_STATUS_2,
28
- :msg => ERROR_MSG_2,
29
- :masked => true
30
- }
31
- }
32
- end
43
+ error_codes (MASK_ERROR_CODES)
33
44
  end
34
45
 
35
46
  def test_masked_should_mask_the_message_if_the_true_masked_arg_is_given_in_msg_and_data
36
- e = MaskedError.new(ERROR_CODE_1)
37
- assert(e.msg(true) == "#{CodeError::MASKED_MSG}(#{ERROR_CODE_1})")
38
- assert(e.data(true) == { :code => ERROR_CODE_1,
39
- :status => ERROR_STATUS_1,
40
- :msg => "#{CodeError::MASKED_MSG}(#{ERROR_CODE_1})",
41
- :info => {} })
47
+ e = MaskedError.gen(MASK_ERROR_CODE_1)
48
+ MASK_VALUES.each do |target_mv|
49
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : MASK_ERROR_MSG_1
50
+ assert(e.msg(:masked => target_mv) == msg)
51
+ assert(e.data(:masked => target_mv) == { :code => MASK_ERROR_CODE_1,
52
+ :status => MASK_ERROR_STATUS_1,
53
+ :msg => msg,
54
+ :info => nil })
55
+ end
56
+ end
57
+
58
+ def test_masked_should_mask_the_message_if_the_true_masked_arg_is_given_in_msg_and_data_even_the_gen_has_masked_false_option
59
+ MASK_VALUES.each do |mv|
60
+ e = MaskedError.gen(MASK_ERROR_CODE_1, { :masked => mv })
61
+ MASK_VALUES.each do |target_mv|
62
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : MASK_ERROR_MSG_1
63
+ assert(e.msg(:masked => target_mv) == msg)
64
+ assert(e.data(:masked => target_mv) == { :code => MASK_ERROR_CODE_1,
65
+ :status => MASK_ERROR_STATUS_1,
66
+ :msg => msg,
67
+ :info => nil })
68
+ end
69
+ end
70
+ end
71
+
72
+ def test_masked_should_mask_the_message_if_the_true_masked_arg_is_given_in_msg_and_data_even_the_code_error_has_masked_false_option
73
+ MASK_ERROR_CODES.each do |code, value|
74
+ error_code = code
75
+ error_msg = value[:msg]
76
+ error_status= value[:status]
77
+ e = MaskedError.gen(error_code)
78
+ MASK_VALUES.each do |target_mv|
79
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : error_msg
80
+ e = MaskedError.gen(error_code)
81
+ assert(e.msg(:masked => target_mv) == msg)
82
+ assert(e.data(:masked => target_mv) == { :code => error_code,
83
+ :status => error_status,
84
+ :msg => msg,
85
+ :info => nil })
86
+ end
87
+ end
42
88
  end
43
89
 
44
- def test_masked_should_mask_the_message_if_given_code_is_undefined_but_the_true_masked_arg_is_given_in_msg_and_data
45
- e = MaskedError.new(ERROR_CODE_UNDEFINED)
46
- assert(e.msg(true) == "#{CodeError::MASKED_MSG}(#{ERROR_CODE_UNDEFINED})")
47
- assert(e.data(true) == { :code => ERROR_CODE_UNDEFINED,
48
- :status => CodeError::INTERNAL_STATUS,
49
- :msg => "#{CodeError::MASKED_MSG}(#{ERROR_CODE_UNDEFINED})",
50
- :info => {} })
90
+ def test_masked_should_mask_the_message_if_the_true_masked_arg_is_given_in_msg_and_data_even_the_class_has_masked_false_option
91
+ MASK_VALUES.each do |mv|
92
+ MaskedError.masked mv
93
+ MASK_VALUES.each do |target_mv|
94
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : MASK_ERROR_MSG_1
95
+ e = MaskedError.gen(MASK_ERROR_CODE_1)
96
+ assert(e.msg(:masked => target_mv) == msg)
97
+ assert(e.data(:masked => target_mv) == { :code => MASK_ERROR_CODE_1,
98
+ :status => MASK_ERROR_STATUS_1,
99
+ :msg => msg,
100
+ :info => nil })
101
+ end
102
+ end
51
103
  end
52
104
 
53
- def test_masked_should_mask_the_message_if_given_code_is_a_string_but_the_true_masked_arg_is_given_in_msg_and_data
54
- msg = 'An error message.'
55
- e = MaskedError.new(msg)
56
- assert(e.msg(true) == "#{CodeError::MASKED_MSG}(#{CodeError::INTERNAL_CODE})")
57
- assert(e.data(true) == { :code => CodeError::INTERNAL_CODE,
58
- :status => CodeError::INTERNAL_STATUS,
59
- :msg => "#{CodeError::MASKED_MSG}(#{CodeError::INTERNAL_CODE})",
60
- :info => {} })
105
+ def test_masked_should_mask_the_message_if_the_gen_has_masked_true_option
106
+ MASK_VALUES.each do |target_mv|
107
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : MASK_ERROR_MSG_1
108
+ e = MaskedError.gen(MASK_ERROR_CODE_1, { :masked => target_mv })
109
+ assert(e.msg == msg)
110
+ assert(e.data == { :code => MASK_ERROR_CODE_1,
111
+ :status => MASK_ERROR_STATUS_1,
112
+ :msg => msg,
113
+ :info => nil })
114
+ end
61
115
  end
62
116
 
63
- def test_masked_should_mask_the_message_if_given_code_is_a_success_code_but_the_true_masked_arg_is_given_in_msg_and_data
64
- e = MaskedError.new(CodeError::SUCCESS_CODE)
65
- assert(e.msg(true) == "#{CodeError::MASKED_MSG}")
66
- assert(e.data(true) == { :code => CodeError::SUCCESS_CODE,
67
- :status => CodeError::SUCCESS_STATUS,
68
- :msg => "#{CodeError::MASKED_MSG}",
69
- :info => {} })
117
+ def test_masked_should_mask_the_message_if_the_gen_has_masked_true_option_even_the_code_errors_has_masked_false_option
118
+ MASK_ERROR_CODES.each do |code, value|
119
+ error_code = code
120
+ error_msg = value[:msg]
121
+ error_status= value[:status]
122
+ MASK_VALUES.each do |target_mv|
123
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : error_msg
124
+ e = MaskedError.gen(error_code, { :masked => target_mv })
125
+ assert(e.msg == msg)
126
+ assert(e.data == { :code => error_code,
127
+ :status => error_status,
128
+ :msg => msg,
129
+ :info => nil })
130
+ end
131
+ end
70
132
  end
71
133
 
72
- def test_masked_should_unmask_the_message_if_given_msg_is_masked_in_new_but_the_false_masked_arg_is_given_in_msg_and_data
73
- e = MaskedError.new(ERROR_CODE_1, :masked)
74
- assert(e.msg(false) == "#{ERROR_MSG_1}(#{ERROR_CODE_1})")
75
- assert(e.data(false) == { :code => ERROR_CODE_1,
76
- :status => ERROR_STATUS_1,
77
- :msg => "#{ERROR_MSG_1}(#{ERROR_CODE_1})",
78
- :info => {} })
134
+ def test_masked_should_mask_the_message_if_the_gen_has_masked_true_option_even_the_class_has_masked_false_option
135
+ MASK_VALUES.each do |mv|
136
+ MaskedError.masked mv
137
+ MASK_VALUES.each do |target_mv|
138
+ msg = target_mv ? CodeError::DEFAULT_MASKED_MSG : MASK_ERROR_MSG_1
139
+ e = MaskedError.gen(MASK_ERROR_CODE_1, { :masked => target_mv })
140
+ assert(e.msg == msg)
141
+ assert(e.data == { :code => MASK_ERROR_CODE_1,
142
+ :status => MASK_ERROR_STATUS_1,
143
+ :msg => msg,
144
+ :info => nil })
145
+ end
146
+ end
79
147
  end
80
148
 
81
- def test_masked_should_unmask_the_message_if_true_masked_config_is_given_but_the_false_masked_arg_is_given_in_msg_and_data
82
- e = MaskedError.new(ERROR_CODE_2)
83
- assert(e.msg(false) == "#{ERROR_MSG_2}(#{ERROR_CODE_2})")
84
- assert(e.data(false) == { :code => ERROR_CODE_2,
85
- :status => ERROR_STATUS_2,
86
- :msg => "#{ERROR_MSG_2}(#{ERROR_CODE_2})",
87
- :info => {} })
149
+ def test_masked_should_mask_the_message_if_the_code_errors_has_masked_true_option
150
+ MASK_ERROR_CODES.each do |code, value|
151
+ error_code = code
152
+ error_msg = value[:msg]
153
+ error_status= value[:status]
154
+ msg = value[:masked] ? CodeError::DEFAULT_MASKED_MSG : error_msg
155
+ e = MaskedError.gen(error_code)
156
+ assert(e.msg == msg)
157
+ assert(e.data == { :code => error_code,
158
+ :status => error_status,
159
+ :msg => msg,
160
+ :info => nil })
161
+ end
162
+ end
163
+
164
+ def test_masked_should_mask_the_message_if_the_code_errors_has_masked_true_option_even_the_class_has_masked_false_option
165
+ MASK_VALUES.each do |mv|
166
+ MaskedError.masked mv
167
+ MASK_ERROR_CODES.each do |code, value|
168
+ next if value[:masked].nil?
169
+ error_code = code
170
+ error_msg = value[:msg]
171
+ error_status= value[:status]
172
+ msg = value[:masked] ? CodeError::DEFAULT_MASKED_MSG : error_msg
173
+ e = MaskedError.gen(error_code)
174
+ assert(e.msg == msg)
175
+ assert(e.data == { :code => error_code,
176
+ :status => error_status,
177
+ :msg => msg,
178
+ :info => nil })
179
+ end
180
+ end
181
+ end
182
+
183
+ def test_masked_should_mask_the_message_if_the_class_has_masked_true_option
184
+ MASK_VALUES.each do |mv|
185
+ MaskedError.masked mv
186
+ msg = mv ? CodeError::DEFAULT_MASKED_MSG : MASK_ERROR_MSG_1
187
+ e = MaskedError.gen(MASK_ERROR_CODE_1)
188
+ assert(e.msg == msg)
189
+ assert(e.data == { :code => MASK_ERROR_CODE_1,
190
+ :status => MASK_ERROR_STATUS_1,
191
+ :msg => msg,
192
+ :info => nil })
193
+ end
88
194
  end
89
195
  end
data/test/test_pos.rb ADDED
@@ -0,0 +1,213 @@
1
+ require "minitest/autorun"
2
+
3
+ $LOAD_PATH.unshift("#{File.dirname(__FILE__)}")
4
+ require "test_helper"
5
+ require "code_error"
6
+
7
+ class TestPos < Minitest::Test
8
+
9
+ POS_OPTIONS = [:append, :prepend, :none]
10
+
11
+ def show_code_msg(pos, msg, code)
12
+ case pos
13
+ when :append then "#{msg} (#{code})"
14
+ when :prepend then "(#{code}) #{msg}"
15
+ else
16
+ msg
17
+ end
18
+ end
19
+
20
+ POS_ERROR_CODE_1 = :pos_error_code1
21
+ POS_ERROR_MSG_1 = 'The pos error message for code 1.'
22
+ POS_ERROR_STATUS_1 = :pos_failed1
23
+
24
+ POS_ERROR_CODE_2 = :pos_error_code2
25
+ POS_ERROR_MSG_2 = 'The pos error message for code 2.'
26
+ POS_ERROR_STATUS_2 = :pos_failed2
27
+
28
+ POS_ERROR_CODE_3 = :pos_error_code3
29
+ POS_ERROR_MSG_3 = 'The pos error message for code 3.'
30
+ POS_ERROR_STATUS_3 = :pos_failed3
31
+
32
+ POS_ERROR_CODE_4 = :pos_error_code4
33
+ POS_ERROR_MSG_4 = 'The pos error message for code 4.'
34
+ POS_ERROR_STATUS_4 = :pos_failed4
35
+
36
+ POS_ERROR_CODE_UNDEFINED = :pos_undefined_code
37
+
38
+ POS_ERROR_CODES = {
39
+ POS_ERROR_CODE_1 => {
40
+ :status => POS_ERROR_STATUS_1,
41
+ :msg => POS_ERROR_MSG_1,
42
+ },
43
+ POS_ERROR_CODE_2 => {
44
+ :status => POS_ERROR_STATUS_2,
45
+ :msg => POS_ERROR_MSG_2,
46
+ :pos => :none
47
+ },
48
+ POS_ERROR_CODE_3 => {
49
+ :status => POS_ERROR_STATUS_3,
50
+ :msg => POS_ERROR_MSG_3,
51
+ :pos => :append
52
+ },
53
+ POS_ERROR_CODE_4 => {
54
+ :status => POS_ERROR_STATUS_4,
55
+ :msg => POS_ERROR_MSG_4,
56
+ :pos => :prepend
57
+ }
58
+ }
59
+
60
+ class PosError < CodeError::Base
61
+ error_codes (POS_ERROR_CODES)
62
+ end
63
+
64
+ def test_pos_should_put_code_in_msg_if_the_pos_arg_is_given_in_msg_and_data
65
+ POS_OPTIONS.each do |pos|
66
+ e = PosError.gen(POS_ERROR_CODE_1)
67
+ msg = show_code_msg(pos, POS_ERROR_MSG_1, POS_ERROR_CODE_1)
68
+ assert(e.msg(:pos => pos) == msg)
69
+ assert(e.data(:pos => pos) == { :code => POS_ERROR_CODE_1,
70
+ :status => POS_ERROR_STATUS_1,
71
+ :msg => msg,
72
+ :info => nil })
73
+ end
74
+ end
75
+
76
+ def test_pos_should_put_code_in_msg_if_the_pos_arg_is_given_in_msg_and_data_even_the_gen_has_other_pos_option
77
+ POS_OPTIONS.each do |pos|
78
+ POS_OPTIONS.each do |pos_target|
79
+ e = PosError.gen(POS_ERROR_CODE_1, { :pos => pos })
80
+ msg = show_code_msg(pos_target, POS_ERROR_MSG_1, POS_ERROR_CODE_1)
81
+ assert(e.msg(:pos => pos_target) == msg)
82
+ assert(e.data(:pos => pos_target) == { :code => POS_ERROR_CODE_1,
83
+ :status => POS_ERROR_STATUS_1,
84
+ :msg => msg,
85
+ :info => nil })
86
+ end
87
+ end
88
+ end
89
+
90
+ def test_pos_should_put_code_in_msg_if_the_pos_arg_is_given_in_msg_and_data_even_the_code_error_has_other_pos_option
91
+ POS_ERROR_CODES.each do |code, value|
92
+ error_code = code
93
+ error_msg = value[:msg]
94
+ error_status= value[:status]
95
+ POS_OPTIONS.each do |pos_target|
96
+ e = PosError.gen(error_code)
97
+ msg = show_code_msg(pos_target, error_msg, error_code)
98
+ assert(e.msg(:pos => pos_target) == msg)
99
+ assert(e.data(:pos => pos_target) == { :code => error_code,
100
+ :status => error_status,
101
+ :msg => msg,
102
+ :info => nil })
103
+ end
104
+ end
105
+ end
106
+
107
+ def test_pos_should_put_code_in_msg_if_the_pos_arg_is_given_in_msg_and_data_even_the_class_has_other_pos_option
108
+ POS_OPTIONS.each do |pos|
109
+ PosError.pos pos
110
+ POS_OPTIONS.each do |pos_target|
111
+ e = PosError.gen(POS_ERROR_CODE_1)
112
+ msg = show_code_msg(pos_target, POS_ERROR_MSG_1, POS_ERROR_CODE_1)
113
+ assert(e.msg(:pos => pos_target) == msg)
114
+ assert(e.data(:pos => pos_target) == { :code => POS_ERROR_CODE_1,
115
+ :status => POS_ERROR_STATUS_1,
116
+ :msg => msg,
117
+ :info => nil })
118
+ end
119
+ end
120
+ end
121
+
122
+ def test_pos_should_put_code_in_msg_if_the_gen_has_pos_option
123
+ POS_OPTIONS.each do |pos|
124
+ e = PosError.gen(POS_ERROR_CODE_1, { :pos => pos })
125
+ msg = show_code_msg(pos, POS_ERROR_MSG_1, POS_ERROR_CODE_1)
126
+ assert(e.msg == msg)
127
+ assert(e.data == { :code => POS_ERROR_CODE_1,
128
+ :status => POS_ERROR_STATUS_1,
129
+ :msg => msg,
130
+ :info => nil })
131
+ end
132
+ end
133
+
134
+ def test_pos_should_put_code_in_msg_if_the_gen_has_pos_option_even_the_code_errors_has_other_pos_option
135
+ POS_ERROR_CODES.each do |code, value|
136
+ error_code = code
137
+ error_msg = value[:msg]
138
+ error_status= value[:status]
139
+ POS_OPTIONS.each do |pos_target|
140
+ e = PosError.gen(error_code, { :pos => pos_target })
141
+ msg = show_code_msg(pos_target, error_msg, error_code)
142
+ assert(e.msg == msg)
143
+ assert(e.data == { :code => error_code,
144
+ :status => error_status,
145
+ :msg => msg,
146
+ :info => nil })
147
+ end
148
+ end
149
+ end
150
+
151
+ def test_pos_should_put_code_in_msg_if_the_gen_has_pos_option_even_the_class_has_other_pos_option
152
+ POS_OPTIONS.each do |pos|
153
+ PosError.pos pos
154
+ POS_OPTIONS.each do |pos_target|
155
+ e = PosError.gen(POS_ERROR_CODE_1, { :pos => pos_target })
156
+ msg = show_code_msg(pos_target, POS_ERROR_MSG_1, POS_ERROR_CODE_1)
157
+ assert(e.msg == msg)
158
+ assert(e.data == { :code => POS_ERROR_CODE_1,
159
+ :status => POS_ERROR_STATUS_1,
160
+ :msg => msg,
161
+ :info => nil })
162
+ end
163
+ end
164
+ end
165
+
166
+ def test_pos_should_put_code_in_msg_if_the_code_errors_has_pos_option
167
+ POS_ERROR_CODES.each do |code, value|
168
+ error_code = code
169
+ error_msg = value[:msg]
170
+ error_status= value[:status]
171
+ e = PosError.gen(error_code)
172
+ msg = show_code_msg(value[:pos], error_msg, error_code)
173
+ assert(e.msg == msg)
174
+ assert(e.data == { :code => error_code,
175
+ :status => error_status,
176
+ :msg => msg,
177
+ :info => nil })
178
+ end
179
+ end
180
+
181
+ def test_pos_should_put_code_in_msg_if_the_code_errors_has_pos_option_even_the_class_has_other_pos_option
182
+ POS_OPTIONS.each do |pos|
183
+ PosError.pos pos
184
+ POS_ERROR_CODES.each do |code, value|
185
+ next if value[:pos].nil?
186
+ error_code = code
187
+ error_msg = value[:msg]
188
+ error_status= value[:status]
189
+ e = PosError.gen(error_code)
190
+ msg = show_code_msg(value[:pos], error_msg, error_code)
191
+ assert(e.msg == msg)
192
+ assert(e.data == { :code => error_code,
193
+ :status => error_status,
194
+ :msg => msg,
195
+ :info => nil })
196
+ end
197
+ end
198
+ end
199
+
200
+ def test_pos_should_put_code_in_msg_if_the_class_has_pos_option
201
+ POS_OPTIONS.each do |pos|
202
+ PosError.pos pos
203
+ e = PosError.gen(POS_ERROR_CODE_1)
204
+ msg = show_code_msg(pos, POS_ERROR_MSG_1, POS_ERROR_CODE_1)
205
+ assert(e.msg == msg)
206
+ assert(e.data == { :code => POS_ERROR_CODE_1,
207
+ :status => POS_ERROR_STATUS_1,
208
+ :msg => msg,
209
+ :info => nil })
210
+ end
211
+ end
212
+
213
+ end