@@ -9,42 +9,47 @@ class MailInterceptorTest < Minitest::Test
99
1010 def setup
1111 @message = OpenStruct . new
12- stub_env_methods ( 'test' )
1312 end
1413
1514 def test_normalized_deliver_emails_to
16- @interceptor = ::MailInterceptor ::Interceptor . new forward_emails_to : 'test@example.com'
15+ @interceptor = ::MailInterceptor ::Interceptor . new env : env ,
16+ forward_emails_to : 'test@example.com'
1717 assert_equal [ ] , @interceptor . deliver_emails_to
1818
19- @interceptor = ::MailInterceptor ::Interceptor . new forward_emails_to : 'test@example.com' ,
20- deliver_emails_to : '@wheel.com'
19+ @interceptor = ::MailInterceptor ::Interceptor . new env : env ,
20+ forward_emails_to : 'test@example.com' ,
21+ deliver_emails_to : '@wheel.com'
2122 assert_equal [ "@wheel.com" ] , @interceptor . deliver_emails_to
2223
23- @interceptor = ::MailInterceptor ::Interceptor . new forward_emails_to : 'test@example.com' ,
24- deliver_emails_to : [ '@wheel.com' , '@pump.com' ]
24+ @interceptor = ::MailInterceptor ::Interceptor . new env : env ,
25+ forward_emails_to : 'test@example.com' ,
26+ deliver_emails_to : [ '@wheel.com' , '@pump.com' ]
2527 assert_equal [ "@wheel.com" , "@pump.com" ] , @interceptor . deliver_emails_to
2628 end
2729
2830 def test_invocation_of_regular_expression
29- interceptor = ::MailInterceptor ::Interceptor . new forward_emails_to : 'test@example.com' ,
30- deliver_emails_to : [ '@wheel.com' , '@pump.com' , 'john@gmail.com' ]
31+ interceptor = ::MailInterceptor ::Interceptor . new env : env ,
32+ forward_emails_to : 'test@example.com' ,
33+ deliver_emails_to : [ '@wheel.com' , '@pump.com' , 'john@gmail.com' ]
3134 @message . to = [ 'a@wheel.com' , 'b@wheel.com' , 'c@pump.com' , 'd@club.com' , 'e@gmail.com' , 'john@gmail.com' , 'sam@gmail.com' ]
3235 interceptor . delivering_email @message
3336 assert_equal [ "a@wheel.com" , "b@wheel.com" , "c@pump.com" , "test@example.com" , "john@gmail.com" ] , @message . to
3437 end
3538
3639 def test_no_subject_prefix_in_test
37- interceptor = ::MailInterceptor ::Interceptor . new forward_emails_to : 'test@example.com' ,
38- subject_prefix : nil
40+ interceptor = ::MailInterceptor ::Interceptor . new env : env ,
41+ forward_emails_to : 'test@example.com' ,
42+ subject_prefix : nil
3943 @message . subject = 'Forgot password'
4044
4145 interceptor . delivering_email @message
4246 assert_equal "Forgot password" , @message . subject
4347 end
4448
4549 def test_subject_prefix_in_test
46- interceptor = ::MailInterceptor ::Interceptor . new forward_emails_to : 'test@example.com' ,
47- subject_prefix : 'wheel'
50+ interceptor = ::MailInterceptor ::Interceptor . new env : env ,
51+ forward_emails_to : 'test@example.com' ,
52+ subject_prefix : 'wheel'
4853 @message . subject = 'Forgot password'
4954
5055 interceptor . delivering_email @message
@@ -56,9 +61,9 @@ def test_subject_prefix_in_test
5661 end
5762
5863 def test_subject_prefix_in_production
59- stub_env_methods ( 'production' )
60- interceptor = :: MailInterceptor :: Interceptor . new forward_emails_to : 'test@example.com' ,
61- subject_prefix : 'wheel'
64+ interceptor = :: MailInterceptor :: Interceptor . new env : env ( 'production' ) ,
65+ forward_emails_to : 'test@example.com' ,
66+ subject_prefix : 'wheel'
6267 @message . subject = 'Forgot password'
6368
6469 interceptor . delivering_email @message
@@ -69,31 +74,34 @@ def test_error_if_forward_emails_to_is_empty
6974 message = "forward_emails_to should not be empty"
7075
7176 exception = assert_raises ( RuntimeError ) do
72- ::MailInterceptor ::Interceptor . new forward_emails_to : '' ,
73- subject_prefix : 'wheel'
77+ ::MailInterceptor ::Interceptor . new env : env ,
78+ forward_emails_to : '' ,
79+ subject_prefix : 'wheel'
7480 end
7581
7682 assert_equal message , exception . message
7783
7884 exception = assert_raises ( RuntimeError ) do
79- ::MailInterceptor ::Interceptor . new forward_emails_to : [ ] ,
80- subject_prefix : 'wheel'
85+ ::MailInterceptor ::Interceptor . new env : env ,
86+ forward_emails_to : [ ] ,
87+ subject_prefix : 'wheel'
8188 end
8289
8390 assert_equal message , exception . message
8491
8592 exception = assert_raises ( RuntimeError ) do
86- ::MailInterceptor ::Interceptor . new forward_emails_to : [ '' ] ,
87- subject_prefix : 'wheel'
93+ ::MailInterceptor ::Interceptor . new env : env ,
94+ forward_emails_to : [ '' ] ,
95+ subject_prefix : 'wheel'
8896 end
8997
9098 assert_equal message , exception . message
9199 end
92100
93101 private
94102
95- def stub_env_methods ( env )
96- :: MailInterceptor :: Interceptor . any_instance . stubs ( :env ) . returns ( env )
97- :: MailInterceptor :: Interceptor . any_instance . stubs ( :production? ) . returns ( env = = 'production' )
103+ def env ( environment = 'test' )
104+ OpenStruct . new :name => environment . upcase ,
105+ :intercept? => environment ! = 'production'
98106 end
99107end
0 commit comments