aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2010-04-09 10:04:20 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2010-04-09 10:04:20 -0700
commitec8e747960da9c0413cb5da7834f458bc5dd8ce1 (patch)
tree1dca16b6de668a2d2f875b3e090c3650d5e115b5 /railties
parentc44cacb07077325d0434b571889ac032dfb026f6 (diff)
downloadrails-ec8e747960da9c0413cb5da7834f458bc5dd8ce1.tar.gz
rails-ec8e747960da9c0413cb5da7834f458bc5dd8ce1.tar.bz2
rails-ec8e747960da9c0413cb5da7834f458bc5dd8ce1.zip
Partially revert "A new application now comes with a layout and a stylesheet."
This reverts commit ea2c5fa8046e2f953b366adc94f0610ccfea0828. Conflicts: railties/lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb railties/test/generators/app_generator_test.rb
Diffstat (limited to 'railties')
-rw-r--r--railties/CHANGELOG2
-rw-r--r--railties/lib/rails/generators.rb2
-rw-r--r--railties/lib/rails/generators/rails/app/app_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/app/templates/app/views/layouts/.empty_directory0
-rw-r--r--railties/lib/rails/generators/rails/app/templates/public/stylesheets/.empty_directory0
-rw-r--r--railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb1
-rw-r--r--railties/lib/rails/generators/rails/stylesheets/USAGE5
-rw-r--r--railties/lib/rails/generators/rails/stylesheets/stylesheets_generator.rb9
-rw-r--r--railties/lib/rails/generators/rails/stylesheets/templates/scaffold.css (renamed from railties/lib/rails/generators/rails/app/templates/public/stylesheets/application.css)0
-rw-r--r--railties/test/generators/scaffold_controller_generator_test.rb1
-rw-r--r--railties/test/generators/scaffold_generator_test.rb8
-rw-r--r--railties/test/generators/stylesheets_generator_test.rb17
12 files changed, 44 insertions, 3 deletions
diff --git a/railties/CHANGELOG b/railties/CHANGELOG
index 261333628d..82684e4614 100644
--- a/railties/CHANGELOG
+++ b/railties/CHANGELOG
@@ -1,5 +1,3 @@
-* A new application now comes with a layout and a stylesheet. [JV]
-
* Renamed config.cookie_secret to config.secret_token and pass it as env key. [JV]
*Rails 3.0.0 [beta 2] (April 1st, 2010)*
diff --git a/railties/lib/rails/generators.rb b/railties/lib/rails/generators.rb
index 5f93dbf18f..9bc019b152 100644
--- a/railties/lib/rails/generators.rb
+++ b/railties/lib/rails/generators.rb
@@ -26,6 +26,7 @@ module Rails
:orm => '-o',
:resource_controller => '-c',
:scaffold_controller => '-c',
+ :stylesheets => '-y',
:template_engine => '-e',
:test_framework => '-t'
},
@@ -50,6 +51,7 @@ module Rails
:resource_controller => :controller,
:scaffold_controller => :scaffold_controller,
:singleton => false,
+ :stylesheets => true,
:test_framework => nil,
:template_engine => :erb
},
diff --git a/railties/lib/rails/generators/rails/app/app_generator.rb b/railties/lib/rails/generators/rails/app/app_generator.rb
index f7644c3280..192792d078 100644
--- a/railties/lib/rails/generators/rails/app/app_generator.rb
+++ b/railties/lib/rails/generators/rails/app/app_generator.rb
@@ -142,7 +142,7 @@ module Rails::Generators
end
def create_public_stylesheets_files
- directory "public/stylesheets"
+ empty_directory_with_gitkeep "public/stylesheets"
end
def create_prototype_files
diff --git a/railties/lib/rails/generators/rails/app/templates/app/views/layouts/.empty_directory b/railties/lib/rails/generators/rails/app/templates/app/views/layouts/.empty_directory
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/railties/lib/rails/generators/rails/app/templates/app/views/layouts/.empty_directory
diff --git a/railties/lib/rails/generators/rails/app/templates/public/stylesheets/.empty_directory b/railties/lib/rails/generators/rails/app/templates/public/stylesheets/.empty_directory
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/railties/lib/rails/generators/rails/app/templates/public/stylesheets/.empty_directory
diff --git a/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb b/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb
index bd156f399c..779f933785 100644
--- a/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb
+++ b/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb
@@ -7,6 +7,7 @@ module Rails
remove_class_option :actions
hook_for :scaffold_controller, :required => true
+ hook_for :stylesheets
end
end
end
diff --git a/railties/lib/rails/generators/rails/stylesheets/USAGE b/railties/lib/rails/generators/rails/stylesheets/USAGE
new file mode 100644
index 0000000000..59e5495d0b
--- /dev/null
+++ b/railties/lib/rails/generators/rails/stylesheets/USAGE
@@ -0,0 +1,5 @@
+Description:
+ Copies scaffold stylesheets to public/stylesheets/.
+
+Examples:
+ `rails generate stylesheets`
diff --git a/railties/lib/rails/generators/rails/stylesheets/stylesheets_generator.rb b/railties/lib/rails/generators/rails/stylesheets/stylesheets_generator.rb
new file mode 100644
index 0000000000..ce68443c39
--- /dev/null
+++ b/railties/lib/rails/generators/rails/stylesheets/stylesheets_generator.rb
@@ -0,0 +1,9 @@
+module Rails
+ module Generators
+ class StylesheetsGenerator < Base
+ def copy_stylesheets_file
+ template "scaffold.css", "public/stylesheets/scaffold.css" if behavior == :invoke
+ end
+ end
+ end
+end
diff --git a/railties/lib/rails/generators/rails/app/templates/public/stylesheets/application.css b/railties/lib/rails/generators/rails/stylesheets/templates/scaffold.css
index ea3dc9b8b5..ea3dc9b8b5 100644
--- a/railties/lib/rails/generators/rails/app/templates/public/stylesheets/application.css
+++ b/railties/lib/rails/generators/rails/stylesheets/templates/scaffold.css
diff --git a/railties/test/generators/scaffold_controller_generator_test.rb b/railties/test/generators/scaffold_controller_generator_test.rb
index f5af137ced..8040b22fe6 100644
--- a/railties/test/generators/scaffold_controller_generator_test.rb
+++ b/railties/test/generators/scaffold_controller_generator_test.rb
@@ -66,6 +66,7 @@ class ScaffoldControllerGeneratorTest < Rails::Generators::TestCase
new
show
).each { |view| assert_file "app/views/users/#{view}.html.erb" }
+ assert_no_file "app/views/layouts/users.html.erb"
end
def test_functional_tests
diff --git a/railties/test/generators/scaffold_generator_test.rb b/railties/test/generators/scaffold_generator_test.rb
index 3cad65f503..e8e622fe5c 100644
--- a/railties/test/generators/scaffold_generator_test.rb
+++ b/railties/test/generators/scaffold_generator_test.rb
@@ -70,10 +70,14 @@ class ScaffoldGeneratorTest < Rails::Generators::TestCase
show
_form
).each { |view| assert_file "app/views/product_lines/#{view}.html.erb" }
+ assert_no_file "app/views/layouts/product_lines.html.erb"
# Helpers
assert_file "app/helpers/product_lines_helper.rb"
assert_file "test/unit/helpers/product_lines_helper_test.rb"
+
+ # Stylesheets
+ assert_file "public/stylesheets/scaffold.css"
end
def test_scaffold_on_revoke
@@ -97,9 +101,13 @@ class ScaffoldGeneratorTest < Rails::Generators::TestCase
# Views
assert_no_file "app/views/product_lines"
+ assert_no_file "app/views/layouts/product_lines.html.erb"
# Helpers
assert_no_file "app/helpers/product_lines_helper.rb"
assert_no_file "test/unit/helpers/product_lines_helper_test.rb"
+
+ # Stylesheets (should not be removed)
+ assert_file "public/stylesheets/scaffold.css"
end
end
diff --git a/railties/test/generators/stylesheets_generator_test.rb b/railties/test/generators/stylesheets_generator_test.rb
new file mode 100644
index 0000000000..aaeb686daa
--- /dev/null
+++ b/railties/test/generators/stylesheets_generator_test.rb
@@ -0,0 +1,17 @@
+require 'generators/generators_test_helper'
+require 'rails/generators/rails/stylesheets/stylesheets_generator'
+
+class StylesheetsGeneratorTest < Rails::Generators::TestCase
+ include GeneratorsTestHelper
+
+ def test_copy_stylesheets
+ run_generator
+ assert_file "public/stylesheets/scaffold.css"
+ end
+
+ def test_stylesheets_are_not_deleted_on_revoke
+ run_generator
+ run_generator [], :behavior => :revoke
+ assert_file "public/stylesheets/scaffold.css"
+ end
+end