##// END OF EJS Templates
code layout clean up test/unit/mail_handler_test.rb...
Toshi MARUYAMA -
r8621:65a1f54f71d7
parent child
Show More
@@ -67,7 +67,10 class MailHandlerTest < ActiveSupport::TestCase
67
67
68 def test_add_issue_with_default_tracker
68 def test_add_issue_with_default_tracker
69 # This email contains: 'Project: onlinestore'
69 # This email contains: 'Project: onlinestore'
70 issue = submit_email('ticket_on_given_project.eml', :issue => {:tracker => 'Support request'})
70 issue = submit_email(
71 'ticket_on_given_project.eml',
72 :issue => {:tracker => 'Support request'}
73 )
71 assert issue.is_a?(Issue)
74 assert issue.is_a?(Issue)
72 assert !issue.new_record?
75 assert !issue.new_record?
73 issue.reload
76 issue.reload
@@ -85,7 +88,10 class MailHandlerTest < ActiveSupport::TestCase
85 end
88 end
86
89
87 def test_add_issue_with_attributes_override
90 def test_add_issue_with_attributes_override
88 issue = submit_email('ticket_with_attributes.eml', :allow_override => 'tracker,category,priority')
91 issue = submit_email(
92 'ticket_with_attributes.eml',
93 :allow_override => 'tracker,category,priority'
94 )
89 assert issue.is_a?(Issue)
95 assert issue.is_a?(Issue)
90 assert !issue.new_record?
96 assert !issue.new_record?
91 issue.reload
97 issue.reload
@@ -111,7 +117,11 class MailHandlerTest < ActiveSupport::TestCase
111 end
117 end
112
118
113 def test_add_issue_with_partial_attributes_override
119 def test_add_issue_with_partial_attributes_override
114 issue = submit_email('ticket_with_attributes.eml', :issue => {:priority => 'High'}, :allow_override => ['tracker'])
120 issue = submit_email(
121 'ticket_with_attributes.eml',
122 :issue => {:priority => 'High'},
123 :allow_override => ['tracker']
124 )
115 assert issue.is_a?(Issue)
125 assert issue.is_a?(Issue)
116 assert !issue.new_record?
126 assert !issue.new_record?
117 issue.reload
127 issue.reload
@@ -125,7 +135,10 class MailHandlerTest < ActiveSupport::TestCase
125 end
135 end
126
136
127 def test_add_issue_with_spaces_between_attribute_and_separator
137 def test_add_issue_with_spaces_between_attribute_and_separator
128 issue = submit_email('ticket_with_spaces_between_attribute_and_separator.eml', :allow_override => 'tracker,category,priority')
138 issue = submit_email(
139 'ticket_with_spaces_between_attribute_and_separator.eml',
140 :allow_override => 'tracker,category,priority'
141 )
129 assert issue.is_a?(Issue)
142 assert issue.is_a?(Issue)
130 assert !issue.new_record?
143 assert !issue.new_record?
131 issue.reload
144 issue.reload
@@ -160,7 +173,8 class MailHandlerTest < ActiveSupport::TestCase
160 assert !issue.new_record?
173 assert !issue.new_record?
161 issue.reload
174 issue.reload
162 assert_equal 'New ticket with custom field values', issue.subject
175 assert_equal 'New ticket with custom field values', issue.subject
163 assert_equal 'Value for a custom field', issue.custom_value_for(CustomField.find_by_name('Searchable field')).value
176 assert_equal 'Value for a custom field',
177 issue.custom_value_for(CustomField.find_by_name('Searchable field')).value
164 assert !issue.description.match(/^searchable field:/i)
178 assert !issue.description.match(/^searchable field:/i)
165 end
179 end
166
180
@@ -175,14 +189,22 class MailHandlerTest < ActiveSupport::TestCase
175
189
176 def test_add_issue_by_unknown_user
190 def test_add_issue_by_unknown_user
177 assert_no_difference 'User.count' do
191 assert_no_difference 'User.count' do
178 assert_equal false, submit_email('ticket_by_unknown_user.eml', :issue => {:project => 'ecookbook'})
192 assert_equal false,
193 submit_email(
194 'ticket_by_unknown_user.eml',
195 :issue => {:project => 'ecookbook'}
196 )
179 end
197 end
180 end
198 end
181
199
182 def test_add_issue_by_anonymous_user
200 def test_add_issue_by_anonymous_user
183 Role.anonymous.add_permission!(:add_issues)
201 Role.anonymous.add_permission!(:add_issues)
184 assert_no_difference 'User.count' do
202 assert_no_difference 'User.count' do
185 issue = submit_email('ticket_by_unknown_user.eml', :issue => {:project => 'ecookbook'}, :unknown_user => 'accept')
203 issue = submit_email(
204 'ticket_by_unknown_user.eml',
205 :issue => {:project => 'ecookbook'},
206 :unknown_user => 'accept'
207 )
186 assert issue.is_a?(Issue)
208 assert issue.is_a?(Issue)
187 assert issue.author.anonymous?
209 assert issue.author.anonymous?
188 end
210 end
@@ -191,7 +213,11 class MailHandlerTest < ActiveSupport::TestCase
191 def test_add_issue_by_anonymous_user_with_no_from_address
213 def test_add_issue_by_anonymous_user_with_no_from_address
192 Role.anonymous.add_permission!(:add_issues)
214 Role.anonymous.add_permission!(:add_issues)
193 assert_no_difference 'User.count' do
215 assert_no_difference 'User.count' do
194 issue = submit_email('ticket_by_empty_user.eml', :issue => {:project => 'ecookbook'}, :unknown_user => 'accept')
216 issue = submit_email(
217 'ticket_by_empty_user.eml',
218 :issue => {:project => 'ecookbook'},
219 :unknown_user => 'accept'
220 )
195 assert issue.is_a?(Issue)
221 assert issue.is_a?(Issue)
196 assert issue.author.anonymous?
222 assert issue.author.anonymous?
197 end
223 end
@@ -201,7 +227,12 class MailHandlerTest < ActiveSupport::TestCase
201 Role.anonymous.add_permission!(:add_issues)
227 Role.anonymous.add_permission!(:add_issues)
202 assert_no_difference 'User.count' do
228 assert_no_difference 'User.count' do
203 assert_no_difference 'Issue.count' do
229 assert_no_difference 'Issue.count' do
204 assert_equal false, submit_email('ticket_by_unknown_user.eml', :issue => {:project => 'onlinestore'}, :unknown_user => 'accept')
230 assert_equal false,
231 submit_email(
232 'ticket_by_unknown_user.eml',
233 :issue => {:project => 'onlinestore'},
234 :unknown_user => 'accept'
235 )
205 end
236 end
206 end
237 end
207 end
238 end
@@ -209,7 +240,12 class MailHandlerTest < ActiveSupport::TestCase
209 def test_add_issue_by_anonymous_user_on_private_project_without_permission_check
240 def test_add_issue_by_anonymous_user_on_private_project_without_permission_check
210 assert_no_difference 'User.count' do
241 assert_no_difference 'User.count' do
211 assert_difference 'Issue.count' do
242 assert_difference 'Issue.count' do
212 issue = submit_email('ticket_by_unknown_user.eml', :issue => {:project => 'onlinestore'}, :no_permission_check => '1', :unknown_user => 'accept')
243 issue = submit_email(
244 'ticket_by_unknown_user.eml',
245 :issue => {:project => 'onlinestore'},
246 :no_permission_check => '1',
247 :unknown_user => 'accept'
248 )
213 assert issue.is_a?(Issue)
249 assert issue.is_a?(Issue)
214 assert issue.author.anonymous?
250 assert issue.author.anonymous?
215 assert !issue.project.is_public?
251 assert !issue.project.is_public?
@@ -221,7 +257,11 class MailHandlerTest < ActiveSupport::TestCase
221 def test_add_issue_by_created_user
257 def test_add_issue_by_created_user
222 Setting.default_language = 'en'
258 Setting.default_language = 'en'
223 assert_difference 'User.count' do
259 assert_difference 'User.count' do
224 issue = submit_email('ticket_by_unknown_user.eml', :issue => {:project => 'ecookbook'}, :unknown_user => 'create')
260 issue = submit_email(
261 'ticket_by_unknown_user.eml',
262 :issue => {:project => 'ecookbook'},
263 :unknown_user => 'create'
264 )
225 assert issue.is_a?(Issue)
265 assert issue.is_a?(Issue)
226 assert issue.author.active?
266 assert issue.author.active?
227 assert_equal 'john.doe@somenet.foo', issue.author.mail
267 assert_equal 'john.doe@somenet.foo', issue.author.mail
@@ -244,7 +284,10 class MailHandlerTest < ActiveSupport::TestCase
244 end
284 end
245
285
246 def test_add_issue_with_invalid_attributes
286 def test_add_issue_with_invalid_attributes
247 issue = submit_email('ticket_with_invalid_attributes.eml', :allow_override => 'tracker,category,priority')
287 issue = submit_email(
288 'ticket_with_invalid_attributes.eml',
289 :allow_override => 'tracker,category,priority'
290 )
248 assert issue.is_a?(Issue)
291 assert issue.is_a?(Issue)
249 assert !issue.new_record?
292 assert !issue.new_record?
250 issue.reload
293 issue.reload
@@ -258,7 +301,10 class MailHandlerTest < ActiveSupport::TestCase
258
301
259 def test_add_issue_with_localized_attributes
302 def test_add_issue_with_localized_attributes
260 User.find_by_mail('jsmith@somenet.foo').update_attribute 'language', 'fr'
303 User.find_by_mail('jsmith@somenet.foo').update_attribute 'language', 'fr'
261 issue = submit_email('ticket_with_localized_attributes.eml', :allow_override => 'tracker,category,priority')
304 issue = submit_email(
305 'ticket_with_localized_attributes.eml',
306 :allow_override => 'tracker,category,priority'
307 )
262 assert issue.is_a?(Issue)
308 assert issue.is_a?(Issue)
263 assert !issue.new_record?
309 assert !issue.new_record?
264 issue.reload
310 issue.reload
@@ -276,13 +322,20 class MailHandlerTest < ActiveSupport::TestCase
276 ja_dev.force_encoding('UTF-8') if ja_dev.respond_to?(:force_encoding)
322 ja_dev.force_encoding('UTF-8') if ja_dev.respond_to?(:force_encoding)
277 tracker = Tracker.create!(:name => ja_dev)
323 tracker = Tracker.create!(:name => ja_dev)
278 Project.find(1).trackers << tracker
324 Project.find(1).trackers << tracker
279 issue = submit_email('japanese_keywords_iso_2022_jp.eml', :issue => {:project => 'ecookbook'}, :allow_override => 'tracker')
325 issue = submit_email(
326 'japanese_keywords_iso_2022_jp.eml',
327 :issue => {:project => 'ecookbook'},
328 :allow_override => 'tracker'
329 )
280 assert_kind_of Issue, issue
330 assert_kind_of Issue, issue
281 assert_equal tracker, issue.tracker
331 assert_equal tracker, issue.tracker
282 end
332 end
283
333
284 def test_add_issue_from_apple_mail
334 def test_add_issue_from_apple_mail
285 issue = submit_email('apple_mail_with_attachment.eml', :issue => {:project => 'ecookbook'})
335 issue = submit_email(
336 'apple_mail_with_attachment.eml',
337 :issue => {:project => 'ecookbook'}
338 )
286 assert_kind_of Issue, issue
339 assert_kind_of Issue, issue
287 assert_equal 1, issue.attachments.size
340 assert_equal 1, issue.attachments.size
288
341
@@ -297,7 +350,12 class MailHandlerTest < ActiveSupport::TestCase
297 def test_should_ignore_emails_from_emission_address
350 def test_should_ignore_emails_from_emission_address
298 Role.anonymous.add_permission!(:add_issues)
351 Role.anonymous.add_permission!(:add_issues)
299 assert_no_difference 'User.count' do
352 assert_no_difference 'User.count' do
300 assert_equal false, submit_email('ticket_from_emission_address.eml', :issue => {:project => 'ecookbook'}, :unknown_user => 'create')
353 assert_equal false,
354 submit_email(
355 'ticket_from_emission_address.eml',
356 :issue => {:project => 'ecookbook'},
357 :unknown_user => 'create'
358 )
301 end
359 end
302 end
360 end
303
361
@@ -367,7 +425,10 class MailHandlerTest < ActiveSupport::TestCase
367 end
425 end
368
426
369 def test_update_issue_should_not_set_defaults
427 def test_update_issue_should_not_set_defaults
370 journal = submit_email('ticket_reply.eml', :issue => {:tracker => 'Support request', :priority => 'High'})
428 journal = submit_email(
429 'ticket_reply.eml',
430 :issue => {:tracker => 'Support request', :priority => 'High'}
431 )
371 assert journal.is_a?(Journal)
432 assert journal.is_a?(Journal)
372 assert_match /This is reply/, journal.notes
433 assert_match /This is reply/, journal.notes
373 assert_equal 'Feature request', journal.issue.tracker.name
434 assert_equal 'Feature request', journal.issue.tracker.name
General Comments 0
You need to be logged in to leave comments. Login now