padrino-mailer 0.16.0.pre4 → 0.16.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 +4 -4
- data/README.rdoc +20 -20
- data/Rakefile +1 -1
- data/lib/padrino-mailer/base.rb +15 -15
- data/lib/padrino-mailer/ext.rb +30 -29
- data/lib/padrino-mailer/helpers.rb +21 -20
- data/lib/padrino-mailer/mime.rb +4 -4
- data/lib/padrino-mailer.rb +2 -4
- data/padrino-mailer.gemspec +17 -17
- data/test/fixtures/padrino_app/app.rb +48 -48
- data/test/fixtures/sinatra_app/app.rb +23 -23
- data/test/helper.rb +5 -5
- data/test/test_email.rb +34 -32
- data/test/test_message.rb +17 -17
- data/test/test_padrino_mailer.rb +54 -54
- data/test/test_part.rb +18 -18
- metadata +6 -6
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
ENV['RACK_ENV'] = 'test'
|
|
2
|
-
PADRINO_ROOT =
|
|
2
|
+
PADRINO_ROOT = __dir__ unless defined? PADRINO_ROOT
|
|
3
3
|
|
|
4
4
|
class PadrinoApp < Padrino::Application
|
|
5
5
|
register Padrino::Helpers
|
|
@@ -9,65 +9,65 @@ class PadrinoApp < Padrino::Application
|
|
|
9
9
|
|
|
10
10
|
mailer :sample do
|
|
11
11
|
email :birthday do |name, age|
|
|
12
|
-
subject
|
|
12
|
+
subject 'Happy Birthday!'
|
|
13
13
|
to 'john@fake.com'
|
|
14
14
|
from 'noreply@birthday.com'
|
|
15
|
-
locals :
|
|
15
|
+
locals name: name, age: age
|
|
16
16
|
via :test
|
|
17
17
|
render 'sample/birthday'
|
|
18
18
|
end
|
|
19
19
|
|
|
20
20
|
email :anniversary do |names, years_married|
|
|
21
|
-
subject
|
|
22
|
-
to
|
|
23
|
-
from
|
|
21
|
+
subject 'Happy anniversary!'
|
|
22
|
+
to 'julie@fake.com'
|
|
23
|
+
from 'noreply@anniversary.com'
|
|
24
24
|
content_type :html
|
|
25
|
-
via
|
|
26
|
-
locals
|
|
27
|
-
render
|
|
25
|
+
via :test
|
|
26
|
+
locals names: names, years_married: years_married
|
|
27
|
+
render 'sample/anniversary'
|
|
28
28
|
end
|
|
29
29
|
|
|
30
30
|
message :welcome do |name|
|
|
31
|
-
subject
|
|
31
|
+
subject 'Welcome Message!'
|
|
32
32
|
to 'john@fake.com'
|
|
33
33
|
from 'noreply@custom.com'
|
|
34
|
-
locals :
|
|
34
|
+
locals name: name
|
|
35
35
|
via :test
|
|
36
36
|
render 'sample/foo_message'
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
message :helper do |name|
|
|
40
|
-
subject
|
|
40
|
+
subject 'Welcome Helper!'
|
|
41
41
|
to 'jim@fake.com'
|
|
42
42
|
from 'noreply@custom.com'
|
|
43
|
-
locals :
|
|
43
|
+
locals name: name
|
|
44
44
|
via :test
|
|
45
45
|
render 'sample/helper_message'
|
|
46
46
|
end
|
|
47
47
|
|
|
48
48
|
message :default_mailer_name do |name|
|
|
49
|
-
subject
|
|
49
|
+
subject 'Welcome Helper!'
|
|
50
50
|
to 'jim@fake.com'
|
|
51
51
|
from 'noreply@custom.com'
|
|
52
|
-
locals :
|
|
52
|
+
locals name: name
|
|
53
53
|
via :test
|
|
54
54
|
render 'default_mailer_name'
|
|
55
55
|
end
|
|
56
56
|
|
|
57
57
|
message :default_mailer_email_name do |name|
|
|
58
|
-
subject
|
|
58
|
+
subject 'Welcome Helper!'
|
|
59
59
|
to 'jim@fake.com'
|
|
60
60
|
from 'noreply@custom.com'
|
|
61
|
-
locals :
|
|
61
|
+
locals name: name
|
|
62
62
|
via :test
|
|
63
63
|
render
|
|
64
64
|
end
|
|
65
65
|
|
|
66
66
|
message :external do |name|
|
|
67
|
-
subject
|
|
67
|
+
subject 'Welcome Message!'
|
|
68
68
|
to 'john@fake.com'
|
|
69
69
|
from 'noreply@custom.com'
|
|
70
|
-
locals :
|
|
70
|
+
locals name: name
|
|
71
71
|
via :test
|
|
72
72
|
render 'demo/sample_mail'
|
|
73
73
|
end
|
|
@@ -76,54 +76,54 @@ class PadrinoApp < Padrino::Application
|
|
|
76
76
|
mailer :nonexistant do
|
|
77
77
|
end
|
|
78
78
|
|
|
79
|
-
post
|
|
80
|
-
result = email(:
|
|
81
|
-
result ?
|
|
79
|
+
post '/deliver/inline' do
|
|
80
|
+
result = email(to: 'john@apple.com', from: 'joe@smith.com', subject: 'Test Email', body: 'Test Body', via: :test)
|
|
81
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
82
82
|
end
|
|
83
83
|
|
|
84
|
-
post
|
|
85
|
-
result = deliver(:sample, :birthday,
|
|
86
|
-
result ?
|
|
84
|
+
post '/deliver/plain' do
|
|
85
|
+
result = deliver(:sample, :birthday, 'Joey', 21)
|
|
86
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
87
87
|
end
|
|
88
88
|
|
|
89
|
-
post
|
|
90
|
-
result = deliver(:sample, :anniversary,
|
|
91
|
-
result ?
|
|
89
|
+
post '/deliver/html' do
|
|
90
|
+
result = deliver(:sample, :anniversary, 'Joey & Charlotte', 16)
|
|
91
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
92
92
|
end
|
|
93
93
|
|
|
94
|
-
post
|
|
95
|
-
result = deliver(:sample, :welcome,
|
|
96
|
-
result ?
|
|
94
|
+
post '/deliver/custom' do
|
|
95
|
+
result = deliver(:sample, :welcome, 'Bobby')
|
|
96
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
97
97
|
end
|
|
98
98
|
|
|
99
|
-
post
|
|
100
|
-
result = deliver(:sample, :helper,
|
|
101
|
-
result ?
|
|
99
|
+
post '/deliver/helper' do
|
|
100
|
+
result = deliver(:sample, :helper, 'Jim')
|
|
101
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
102
102
|
end
|
|
103
103
|
|
|
104
|
-
post
|
|
105
|
-
deliver(:nonregistered, :mailer,
|
|
104
|
+
post '/deliver/failing_mailer' do
|
|
105
|
+
deliver(:nonregistered, :mailer, 'hey')
|
|
106
106
|
end
|
|
107
107
|
|
|
108
|
-
post
|
|
109
|
-
deliver(:nonexistant, :message,
|
|
108
|
+
post '/deliver/failing_message' do
|
|
109
|
+
deliver(:nonexistant, :message, 'hey')
|
|
110
110
|
end
|
|
111
111
|
|
|
112
|
-
post
|
|
113
|
-
result = deliver(:sample, :default_mailer_name,
|
|
114
|
-
result ?
|
|
112
|
+
post '/deliver/default_mailer_name' do
|
|
113
|
+
result = deliver(:sample, :default_mailer_name, 'Jim')
|
|
114
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
115
115
|
end
|
|
116
116
|
|
|
117
|
-
post
|
|
118
|
-
result = deliver(:sample, :default_mailer_email_name,
|
|
119
|
-
result ?
|
|
117
|
+
post '/deliver/default_mailer_email_name' do
|
|
118
|
+
result = deliver(:sample, :default_mailer_email_name, 'Jim')
|
|
119
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
120
120
|
end
|
|
121
121
|
|
|
122
|
-
post
|
|
123
|
-
result = deliver(:sample, :external,
|
|
124
|
-
result ?
|
|
122
|
+
post '/deliver/external' do
|
|
123
|
+
result = deliver(:sample, :external, 'Joey')
|
|
124
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
125
125
|
end
|
|
126
126
|
end
|
|
127
127
|
|
|
128
|
-
Padrino.mount(
|
|
128
|
+
Padrino.mount('PadrinoApp').to('/')
|
|
129
129
|
Padrino.load!
|
|
@@ -3,56 +3,56 @@ require 'sinatra/base'
|
|
|
3
3
|
class SinatraApp < Sinatra::Base
|
|
4
4
|
register Padrino::Mailer
|
|
5
5
|
|
|
6
|
-
set :root,
|
|
6
|
+
set :root, __dir__
|
|
7
7
|
set :delivery_method, :test
|
|
8
8
|
|
|
9
9
|
mailer :sample do
|
|
10
10
|
email :birthday do |name, age|
|
|
11
|
-
subject
|
|
11
|
+
subject 'Happy Birthday!'
|
|
12
12
|
to 'john@fake.com'
|
|
13
13
|
from 'noreply@birthday.com'
|
|
14
|
-
locals :
|
|
14
|
+
locals name: name, age: age
|
|
15
15
|
via :test
|
|
16
16
|
render 'sample/birthday'
|
|
17
17
|
end
|
|
18
18
|
|
|
19
19
|
email :anniversary do |names, years_married|
|
|
20
|
-
subject
|
|
21
|
-
to
|
|
22
|
-
from
|
|
23
|
-
locals
|
|
20
|
+
subject 'Happy anniversary!'
|
|
21
|
+
to 'julie@fake.com'
|
|
22
|
+
from 'noreply@anniversary.com'
|
|
23
|
+
locals names: names, years_married: years_married
|
|
24
24
|
content_type :html
|
|
25
|
-
via
|
|
26
|
-
render
|
|
25
|
+
via :test
|
|
26
|
+
render 'sample/anniversary'
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
message :welcome do |name|
|
|
30
|
-
subject
|
|
30
|
+
subject 'Welcome Message!'
|
|
31
31
|
to 'john@fake.com'
|
|
32
32
|
from 'noreply@custom.com'
|
|
33
|
-
locals :
|
|
33
|
+
locals name: name
|
|
34
34
|
via :test
|
|
35
35
|
render 'sample/foo_message'
|
|
36
36
|
end
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
post
|
|
40
|
-
result = email(:
|
|
41
|
-
result ?
|
|
39
|
+
post '/deliver/inline' do
|
|
40
|
+
result = email(to: 'john@apple.com', from: 'joe@smith.com', subject: 'Test Email', body: 'Test Body', via: :test)
|
|
41
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
42
42
|
end
|
|
43
43
|
|
|
44
|
-
post
|
|
45
|
-
result = deliver(:sample, :birthday,
|
|
46
|
-
result ?
|
|
44
|
+
post '/deliver/plain' do
|
|
45
|
+
result = deliver(:sample, :birthday, 'Joey', 21)
|
|
46
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
47
47
|
end
|
|
48
48
|
|
|
49
|
-
post
|
|
50
|
-
result = deliver(:sample, :anniversary,
|
|
51
|
-
result ?
|
|
49
|
+
post '/deliver/html' do
|
|
50
|
+
result = deliver(:sample, :anniversary, 'Joey & Charlotte', 16)
|
|
51
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
52
52
|
end
|
|
53
53
|
|
|
54
|
-
post
|
|
55
|
-
result = deliver(:sample, :welcome,
|
|
56
|
-
result ?
|
|
54
|
+
post '/deliver/custom' do
|
|
55
|
+
result = deliver(:sample, :welcome, 'Bobby')
|
|
56
|
+
result ? 'mail delivered' : 'mail not delivered'
|
|
57
57
|
end
|
|
58
58
|
end
|
data/test/helper.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
ENV['RACK_ENV'] = 'test'
|
|
2
|
-
PADRINO_ROOT =
|
|
2
|
+
PADRINO_ROOT = __dir__ unless defined? PADRINO_ROOT
|
|
3
3
|
|
|
4
4
|
require 'minitest/autorun'
|
|
5
5
|
require 'minitest/pride'
|
|
@@ -18,7 +18,7 @@ class Minitest::Spec
|
|
|
18
18
|
# Sets up a Sinatra::Base subclass defined with the block
|
|
19
19
|
# given. Used in setup or individual spec methods to establish
|
|
20
20
|
# the application.
|
|
21
|
-
def mock_app(base=Padrino::Application, &block)
|
|
21
|
+
def mock_app(base = Padrino::Application, &block)
|
|
22
22
|
@app = Sinatra.new(base, &block)
|
|
23
23
|
end
|
|
24
24
|
|
|
@@ -31,11 +31,11 @@ class Minitest::Spec
|
|
|
31
31
|
end
|
|
32
32
|
|
|
33
33
|
# Asserts that the specified email object was delivered
|
|
34
|
-
def assert_email_sent(mail_attributes, options={})
|
|
34
|
+
def assert_email_sent(mail_attributes, options = {})
|
|
35
35
|
mail_message = Mail::TestMailer.deliveries.last
|
|
36
|
-
raise
|
|
36
|
+
raise 'No mail message has been sent!' unless mail_message
|
|
37
37
|
delivery_attributes = mail_attributes
|
|
38
|
-
delivery_attributes.update(:
|
|
38
|
+
delivery_attributes.update(to: Array(mail_attributes[:to]), from: Array(mail_attributes[:from]))
|
|
39
39
|
delivery_attributes.each_pair do |key, expected|
|
|
40
40
|
next unless mail_message.respond_to?(key)
|
|
41
41
|
actual = mail_message.send(key)
|
data/test/test_email.rb
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
require_relative 'helper'
|
|
2
2
|
|
|
3
|
-
describe
|
|
3
|
+
describe 'Email' do
|
|
4
4
|
describe 'the mailer in an app' do
|
|
5
5
|
it 'should send a basic inline email' do
|
|
6
6
|
mock_app do
|
|
7
7
|
register Padrino::Mailer
|
|
8
|
-
get
|
|
8
|
+
get '/' do
|
|
9
9
|
email do
|
|
10
10
|
from 'padrino@me.com'
|
|
11
11
|
to 'padrino@you.com'
|
|
@@ -15,7 +15,7 @@ describe "Email" do
|
|
|
15
15
|
end
|
|
16
16
|
end
|
|
17
17
|
end
|
|
18
|
-
get
|
|
18
|
+
get '/'
|
|
19
19
|
assert ok?
|
|
20
20
|
email = pop_last_delivery
|
|
21
21
|
assert_equal ['padrino@me.com'], email.from
|
|
@@ -27,17 +27,17 @@ describe "Email" do
|
|
|
27
27
|
it 'should send a basic inline from hash' do
|
|
28
28
|
mock_app do
|
|
29
29
|
register Padrino::Mailer
|
|
30
|
-
get
|
|
31
|
-
email(
|
|
32
|
-
:
|
|
33
|
-
:
|
|
34
|
-
:
|
|
35
|
-
:
|
|
36
|
-
:
|
|
37
|
-
|
|
30
|
+
get '/' do
|
|
31
|
+
email(
|
|
32
|
+
from: 'padrino@me.com',
|
|
33
|
+
to: 'padrino@you.com',
|
|
34
|
+
subject: 'Hello there Padrino',
|
|
35
|
+
body: 'Body',
|
|
36
|
+
via: :test
|
|
37
|
+
)
|
|
38
38
|
end
|
|
39
39
|
end
|
|
40
|
-
get
|
|
40
|
+
get '/'
|
|
41
41
|
assert ok?
|
|
42
42
|
email = pop_last_delivery
|
|
43
43
|
assert_equal ['padrino@me.com'], email.from
|
|
@@ -49,9 +49,9 @@ describe "Email" do
|
|
|
49
49
|
it 'should send an basic email with body template' do
|
|
50
50
|
mock_app do
|
|
51
51
|
register Padrino::Mailer
|
|
52
|
-
get
|
|
52
|
+
get '/' do
|
|
53
53
|
email do
|
|
54
|
-
views
|
|
54
|
+
views "#{__dir__}/fixtures"
|
|
55
55
|
from 'padrino@me.com'
|
|
56
56
|
to 'padrino@you.com'
|
|
57
57
|
subject 'Hello there Padrino'
|
|
@@ -60,7 +60,7 @@ describe "Email" do
|
|
|
60
60
|
end
|
|
61
61
|
end
|
|
62
62
|
end
|
|
63
|
-
get
|
|
63
|
+
get '/'
|
|
64
64
|
assert ok?
|
|
65
65
|
email = pop_last_delivery
|
|
66
66
|
assert_equal ['padrino@me.com'], email.from
|
|
@@ -72,10 +72,10 @@ describe "Email" do
|
|
|
72
72
|
it 'should send emails with scoped mailer defaults' do
|
|
73
73
|
mock_app do
|
|
74
74
|
register Padrino::Mailer
|
|
75
|
-
set :views,
|
|
75
|
+
set :views, "#{__dir__}/fixtures/views"
|
|
76
76
|
set :delivery_method, :test
|
|
77
77
|
mailer :alternate do
|
|
78
|
-
defaults :
|
|
78
|
+
defaults from: 'padrino@from.com', to: 'padrino@to.com'
|
|
79
79
|
email :foo do
|
|
80
80
|
to 'padrino@different.com'
|
|
81
81
|
subject 'Hello there again Padrino'
|
|
@@ -83,13 +83,14 @@ describe "Email" do
|
|
|
83
83
|
render 'alternate/foo'
|
|
84
84
|
end
|
|
85
85
|
end
|
|
86
|
-
get(
|
|
86
|
+
get('/') { deliver(:alternate, :foo) }
|
|
87
87
|
end
|
|
88
|
-
|
|
88
|
+
|
|
89
|
+
get '/'
|
|
89
90
|
assert ok?
|
|
90
91
|
email = pop_last_delivery
|
|
91
|
-
assert_equal ['padrino@from.com'],
|
|
92
|
-
assert_equal ['padrino@different.com'],
|
|
92
|
+
assert_equal ['padrino@from.com'], email.from, 'should have used default value'
|
|
93
|
+
assert_equal ['padrino@different.com'], email.to, 'should have overwritten default value'
|
|
93
94
|
assert_equal 'Hello there again Padrino', email.subject
|
|
94
95
|
assert_equal 'This is a foo message in mailers/alternate dir', email.body.to_s.chomp
|
|
95
96
|
end
|
|
@@ -98,8 +99,8 @@ describe "Email" do
|
|
|
98
99
|
mock_app do
|
|
99
100
|
register Padrino::Mailer
|
|
100
101
|
set :delivery_method, :test
|
|
101
|
-
set :views,
|
|
102
|
-
set :mailer_defaults, :
|
|
102
|
+
set :views, "#{__dir__}/fixtures/views"
|
|
103
|
+
set :mailer_defaults, from: 'padrino@from.com', to: 'padrino@to.com', subject: 'This is a test'
|
|
103
104
|
mailer :alternate do
|
|
104
105
|
email :foo do
|
|
105
106
|
to 'padrino@different.com'
|
|
@@ -107,13 +108,14 @@ describe "Email" do
|
|
|
107
108
|
render 'alternate/foo'
|
|
108
109
|
end
|
|
109
110
|
end
|
|
110
|
-
get(
|
|
111
|
+
get('/') { deliver(:alternate, :foo) }
|
|
111
112
|
end
|
|
112
|
-
|
|
113
|
+
|
|
114
|
+
get '/'
|
|
113
115
|
assert ok?
|
|
114
116
|
email = pop_last_delivery
|
|
115
|
-
assert_equal ['padrino@from.com'],
|
|
116
|
-
assert_equal ['padrino@different.com'],
|
|
117
|
+
assert_equal ['padrino@from.com'], email.from, 'should have used default value'
|
|
118
|
+
assert_equal ['padrino@different.com'], email.to, 'should have overwritten default value'
|
|
117
119
|
assert_equal 'This is a test', email.subject
|
|
118
120
|
assert_equal 'This is a foo message in mailers/alternate dir', email.body.to_s.chomp
|
|
119
121
|
end
|
|
@@ -121,7 +123,7 @@ describe "Email" do
|
|
|
121
123
|
it 'should send emails without layout' do
|
|
122
124
|
mock_app do
|
|
123
125
|
register Padrino::Mailer
|
|
124
|
-
set :views,
|
|
126
|
+
set :views, "#{__dir__}/fixtures/views"
|
|
125
127
|
set :delivery_method, :test
|
|
126
128
|
mailer :alternate do
|
|
127
129
|
email :foo do
|
|
@@ -132,16 +134,16 @@ describe "Email" do
|
|
|
132
134
|
render 'alternate/foo'
|
|
133
135
|
end
|
|
134
136
|
end
|
|
135
|
-
get(
|
|
137
|
+
get('/') { deliver(:alternate, :foo) }
|
|
136
138
|
end
|
|
137
|
-
get
|
|
139
|
+
get '/'
|
|
138
140
|
assert ok?
|
|
139
141
|
email = pop_last_delivery
|
|
140
142
|
assert_equal ['padrino@me.com'], email.from
|
|
141
143
|
assert_equal ['padrino@you.com'], email.to
|
|
142
144
|
assert_equal 'Hello there Padrino', email.subject
|
|
143
145
|
assert_equal 'This is a foo message in mailers/alternate dir', email.body.to_s.chomp
|
|
144
|
-
assert_match
|
|
146
|
+
assert_match(/TestMailer/, email.delivery_method.to_s)
|
|
145
147
|
end
|
|
146
148
|
|
|
147
149
|
it 'should raise an error if there are two messages with the same name' do
|
data/test/test_message.rb
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
require_relative 'helper'
|
|
2
2
|
|
|
3
|
-
describe
|
|
3
|
+
describe 'Message' do
|
|
4
4
|
describe 'the message' do
|
|
5
5
|
it 'should accept headers and body' do
|
|
6
6
|
message = Mail::Message.new do
|
|
@@ -32,8 +32,8 @@ describe "Message" do
|
|
|
32
32
|
from 'padrino@me.com'
|
|
33
33
|
to 'padrino@you.com'
|
|
34
34
|
subject 'Hello there Padrino'
|
|
35
|
-
locals :
|
|
36
|
-
body erb(
|
|
35
|
+
locals foo: 'Im Foo!'
|
|
36
|
+
body erb('<%= foo %>')
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
assert_equal ['padrino@me.com'], message.from
|
|
@@ -44,7 +44,7 @@ describe "Message" do
|
|
|
44
44
|
|
|
45
45
|
it 'should use views paths' do
|
|
46
46
|
message = Mail::Message.new do
|
|
47
|
-
views
|
|
47
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
48
48
|
from 'padrino@me.com'
|
|
49
49
|
to 'padrino@you.com'
|
|
50
50
|
subject 'Hello there Padrino'
|
|
@@ -59,7 +59,7 @@ describe "Message" do
|
|
|
59
59
|
|
|
60
60
|
it 'should use views and mailers paths' do
|
|
61
61
|
message = Mail::Message.new do
|
|
62
|
-
views
|
|
62
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
63
63
|
from 'padrino@me.com'
|
|
64
64
|
to 'padrino@you.com'
|
|
65
65
|
subject 'Hello there Padrino'
|
|
@@ -74,11 +74,11 @@ describe "Message" do
|
|
|
74
74
|
|
|
75
75
|
it 'should use layouts' do
|
|
76
76
|
message = Mail::Message.new do
|
|
77
|
-
views
|
|
77
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
78
78
|
from 'padrino@me.com'
|
|
79
79
|
to 'padrino@you.com'
|
|
80
80
|
subject 'Hello there Padrino'
|
|
81
|
-
render 'sample/foo', :
|
|
81
|
+
render 'sample/foo', layout: :"layouts/sample"
|
|
82
82
|
end
|
|
83
83
|
|
|
84
84
|
assert_equal ['padrino@me.com'], message.from
|
|
@@ -91,7 +91,7 @@ describe "Message" do
|
|
|
91
91
|
I18n.locale = :en
|
|
92
92
|
|
|
93
93
|
message = Mail::Message.new do
|
|
94
|
-
views
|
|
94
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
95
95
|
from 'padrino@me.com'
|
|
96
96
|
to 'padrino@you.com'
|
|
97
97
|
subject 'Hello there Padrino'
|
|
@@ -106,7 +106,7 @@ describe "Message" do
|
|
|
106
106
|
I18n.locale = :it
|
|
107
107
|
|
|
108
108
|
message = Mail::Message.new do
|
|
109
|
-
views
|
|
109
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
110
110
|
from 'padrino@me.com'
|
|
111
111
|
to 'padrino@you.com'
|
|
112
112
|
subject 'Hello there Padrino'
|
|
@@ -121,7 +121,7 @@ describe "Message" do
|
|
|
121
121
|
|
|
122
122
|
it 'should auto lookup template for the given content_type' do
|
|
123
123
|
message = Mail::Message.new do
|
|
124
|
-
views
|
|
124
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
125
125
|
from 'padrino@me.com'
|
|
126
126
|
to 'padrino@you.com'
|
|
127
127
|
subject 'Hello there Padrino'
|
|
@@ -129,15 +129,15 @@ describe "Message" do
|
|
|
129
129
|
render 'multipart/basic'
|
|
130
130
|
end
|
|
131
131
|
|
|
132
|
+
message.encoded
|
|
132
133
|
assert_equal ['padrino@me.com'], message.from
|
|
133
134
|
assert_equal ['padrino@you.com'], message.to
|
|
134
135
|
assert_equal 'Hello there Padrino', message.subject
|
|
135
136
|
assert_equal 'text html', message.body.to_s.chomp
|
|
136
|
-
message.encoded
|
|
137
137
|
assert_equal :html, message.content_type
|
|
138
138
|
|
|
139
139
|
message = Mail::Message.new do
|
|
140
|
-
views
|
|
140
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
141
141
|
from 'padrino@me.com'
|
|
142
142
|
to 'padrino@you.com'
|
|
143
143
|
subject 'Hello there Padrino'
|
|
@@ -145,22 +145,22 @@ describe "Message" do
|
|
|
145
145
|
render 'multipart/basic'
|
|
146
146
|
end
|
|
147
147
|
|
|
148
|
+
message.encoded
|
|
148
149
|
assert_equal ['padrino@me.com'], message.from
|
|
149
150
|
assert_equal ['padrino@you.com'], message.to
|
|
150
151
|
assert_equal 'Hello there Padrino', message.subject
|
|
151
152
|
assert_equal 'plain text', message.body.to_s.chomp
|
|
152
|
-
message.encoded
|
|
153
153
|
assert_equal :plain, message.content_type
|
|
154
154
|
end
|
|
155
155
|
|
|
156
156
|
it 'should render partials' do
|
|
157
|
-
objects = [1,2,'<evil>','<good>'.html_safe]
|
|
157
|
+
objects = [1, 2, '<evil>', '<good>'.html_safe]
|
|
158
158
|
message = Mail::Message.new do
|
|
159
159
|
from 'padrino@me.com'
|
|
160
160
|
to 'padrino@you.com'
|
|
161
161
|
subject 'Hello there Padrino'
|
|
162
|
-
views
|
|
163
|
-
partial 'partial/object', :
|
|
162
|
+
views "#{__dir__}/fixtures/views/mailers"
|
|
163
|
+
partial 'partial/object', collection: objects
|
|
164
164
|
end
|
|
165
165
|
|
|
166
166
|
assert_equal "Object 1<br>\nObject 2<br>\nObject <evil><br>\nObject <good><br>", message.body.to_s.chomp
|