Skip to content

Commit 771d3ad

Browse files
authored
Merge pull request #308 from rails/272-flavorjones-fix-generator-mailer-nested
fix: mailer generation with namespaces
2 parents e22c8ce + 2cbf5cc commit 771d3ad

File tree

3 files changed

+45
-1
lines changed

3 files changed

+45
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5+
<style>
6+
/* Email styles need to be inline */
7+
</style>
8+
</head>
9+
10+
<body>
11+
<%%= yield %>
12+
</body>
13+
</html>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<%%= yield %>

test/lib/generators/tailwindcss/mailer_generator_test.rb

+31-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
require "generators/tailwindcss/mailer/mailer_generator"
44

55
class Tailwindcss::Generators::MailerGeneratorTest < Rails::Generators::TestCase
6-
tests Rails::Generators::MailerGenerator
6+
tests Tailwindcss::Generators::MailerGenerator
77
destination Dir.mktmpdir
88

99
arguments %w(Notifications invoice)
@@ -20,6 +20,36 @@ class Tailwindcss::Generators::MailerGeneratorTest < Rails::Generators::TestCase
2020
assert_match %r(app/views/notifications_mailer/invoice\.text\.erb), view
2121
assert_match(/\= @greeting/, view)
2222
end
23+
24+
assert_file "app/views/layouts/mailer.text.erb" do |view|
25+
assert_match("<%= yield %>", view)
26+
end
27+
28+
assert_file "app/views/layouts/mailer.html.erb" do |view|
29+
assert_match("<%= yield %>", view)
30+
end
31+
end
32+
33+
test "generates correct mailer view templates with namespace" do
34+
run_generator ["admin/notifications", "invoice"]
35+
36+
assert_file "app/views/admin/notifications_mailer/invoice.html.erb" do |view|
37+
assert_match %r(app/views/admin/notifications_mailer/invoice\.html\.erb), view
38+
assert_match(/\= @greeting/, view)
39+
end
40+
41+
assert_file "app/views/admin/notifications_mailer/invoice.text.erb" do |view|
42+
assert_match %r(app/views/admin/notifications_mailer/invoice\.text\.erb), view
43+
assert_match(/\= @greeting/, view)
44+
end
45+
46+
assert_file "app/views/layouts/admin/mailer.text.erb" do |view|
47+
assert_match("<%= yield %>", view)
48+
end
49+
50+
assert_file "app/views/layouts/admin/mailer.html.erb" do |view|
51+
assert_match("<%= yield %>", view)
52+
end
2353
end
2454
end
2555

0 commit comments

Comments
 (0)