Skip to content

Commit b4b27a3

Browse files
committed
Merge pull request rails#1716 from ryanb/namespace_engine_assets_3_1
Namespace engine assets for 3-1-stable
2 parents 1f813d9 + 40dd641 commit b4b27a3

File tree

3 files changed

+35
-17
lines changed

3 files changed

+35
-17
lines changed

railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ def rakefile
1111
def app
1212
if mountable?
1313
directory "app"
14-
template "#{app_templates_dir}/app/views/layouts/application.html.erb.tt",
14+
template "app/views/layouts/application.html.erb.tt",
1515
"app/views/layouts/#{name}/application.html.erb"
16-
empty_directory_with_gitkeep "app/assets/images"
16+
empty_directory_with_gitkeep "app/assets/images/#{name}"
1717
elsif full?
1818
empty_directory_with_gitkeep "app/models"
1919
empty_directory_with_gitkeep "app/controllers"
2020
empty_directory_with_gitkeep "app/views"
2121
empty_directory_with_gitkeep "app/helpers"
22-
empty_directory_with_gitkeep "app/assets/images"
22+
empty_directory_with_gitkeep "app/assets/images/#{name}"
2323
end
2424
end
2525

@@ -108,9 +108,9 @@ def test_dummy_clean
108108
def stylesheets
109109
if mountable?
110110
copy_file "#{app_templates_dir}/app/assets/stylesheets/application.css",
111-
"app/assets/stylesheets/application.css"
111+
"app/assets/stylesheets/#{name}/application.css"
112112
elsif full?
113-
empty_directory_with_gitkeep "app/assets/stylesheets"
113+
empty_directory_with_gitkeep "app/assets/stylesheets/#{name}"
114114
end
115115
end
116116

@@ -119,9 +119,9 @@ def javascripts
119119

120120
if mountable?
121121
copy_file "#{app_templates_dir}/app/assets/javascripts/application.js.tt",
122-
"app/assets/javascripts/application.js"
122+
"app/assets/javascripts/#{name}/application.js"
123123
elsif full?
124-
empty_directory_with_gitkeep "app/assets/javascripts"
124+
empty_directory_with_gitkeep "app/assets/javascripts/#{name}"
125125
end
126126
end
127127

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<title><%= camelized %></title>
5+
<%%= stylesheet_link_tag "<%= name %>/application" %>
6+
<%%= javascript_include_tag "<%= name %>/application" %>
7+
<%%= csrf_meta_tags %>
8+
</head>
9+
<body>
10+
11+
<%%= yield %>
12+
13+
</body>
14+
</html>

railties/test/generators/plugin_new_generator_test.rb

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -102,19 +102,19 @@ def test_generation_runs_bundle_install_with_full_and_mountable
102102

103103
def test_skipping_javascripts_without_mountable_option
104104
run_generator
105-
assert_no_file "app/assets/javascripts/application.js"
105+
assert_no_file "app/assets/javascripts/bukkits/application.js"
106106
assert_no_file "vendor/assets/javascripts/jquery.js"
107107
assert_no_file "vendor/assets/javascripts/jquery_ujs.js"
108108
end
109109

110110
def test_javascripts_generation
111111
run_generator [destination_root, "--mountable"]
112-
assert_file "app/assets/javascripts/application.js"
112+
assert_file "app/assets/javascripts/bukkits/application.js"
113113
end
114114

115115
def test_skip_javascripts
116116
run_generator [destination_root, "--skip-javascript", "--mountable"]
117-
assert_no_file "app/assets/javascripts/application.js"
117+
assert_no_file "app/assets/javascripts/bukkits/application.js"
118118
assert_no_file "vendor/assets/javascripts/jquery.js"
119119
assert_no_file "vendor/assets/javascripts/jquery_ujs.js"
120120
end
@@ -140,9 +140,9 @@ def test_ensure_that_tests_works_in_full_mode
140140

141141
def test_creating_engine_in_full_mode
142142
run_generator [destination_root, "--full"]
143-
assert_file "app/assets/javascripts"
144-
assert_file "app/assets/stylesheets"
145-
assert_file "app/assets/images"
143+
assert_file "app/assets/javascripts/bukkits"
144+
assert_file "app/assets/stylesheets/bukkits"
145+
assert_file "app/assets/images/bukkits"
146146
assert_file "app/models"
147147
assert_file "app/controllers"
148148
assert_file "app/views"
@@ -158,15 +158,19 @@ def test_being_quiet_while_creating_dummy_application
158158

159159
def test_create_mountable_application_with_mountable_option
160160
run_generator [destination_root, "--mountable"]
161-
assert_file "app/assets/javascripts"
162-
assert_file "app/assets/stylesheets"
163-
assert_file "app/assets/images"
161+
assert_file "app/assets/javascripts/bukkits"
162+
assert_file "app/assets/stylesheets/bukkits"
163+
assert_file "app/assets/images/bukkits"
164164
assert_file "config/routes.rb", /Bukkits::Engine.routes.draw do/
165165
assert_file "lib/bukkits/engine.rb", /isolate_namespace Bukkits/
166166
assert_file "test/dummy/config/routes.rb", /mount Bukkits::Engine => "\/bukkits"/
167167
assert_file "app/controllers/bukkits/application_controller.rb", /module Bukkits\n class ApplicationController < ActionController::Base/
168168
assert_file "app/helpers/bukkits/application_helper.rb", /module Bukkits\n module ApplicationHelper/
169-
assert_file "app/views/layouts/bukkits/application.html.erb", /<title>Bukkits<\/title>/
169+
assert_file "app/views/layouts/bukkits/application.html.erb" do |contents|
170+
assert_match "<title>Bukkits</title>", contents
171+
assert_match /stylesheet_link_tag\s+['"]bukkits\/application['"]/, contents
172+
assert_match /javascript_include_tag\s+['"]bukkits\/application['"]/, contents
173+
end
170174
end
171175

172176
def test_passing_dummy_path_as_a_parameter

0 commit comments

Comments
 (0)