aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/generators/test_unit/scaffold
diff options
context:
space:
mode:
authorYehuda Katz + Carl Lerche <ykatz+clerche@engineyard.com>2009-09-24 14:01:31 -0700
committerYehuda Katz + Carl Lerche <ykatz+clerche@engineyard.com>2009-09-24 16:11:41 -0700
commitf0dd77c6be6a86fe384bb0015151e0a497973d39 (patch)
treead81bb4c807c39edeaa37035882a16d9d95ebaa9 /railties/lib/rails/generators/test_unit/scaffold
parent610b81beca461a6fa4f00c7023e0e4315eb2b8be (diff)
downloadrails-f0dd77c6be6a86fe384bb0015151e0a497973d39.tar.gz
rails-f0dd77c6be6a86fe384bb0015151e0a497973d39.tar.bz2
rails-f0dd77c6be6a86fe384bb0015151e0a497973d39.zip
Move railties/lib/* into railties/lib/*
Diffstat (limited to 'railties/lib/rails/generators/test_unit/scaffold')
-rw-r--r--railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb18
-rw-r--r--railties/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb47
2 files changed, 65 insertions, 0 deletions
diff --git a/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb b/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb
new file mode 100644
index 0000000000..c0315c7fe6
--- /dev/null
+++ b/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb
@@ -0,0 +1,18 @@
+require 'rails/generators/test_unit'
+require 'rails/generators/resource_helpers'
+
+module TestUnit
+ module Generators
+ class ScaffoldGenerator < Base
+ include Rails::Generators::ResourceHelpers
+
+ class_option :singleton, :type => :boolean, :desc => "Supply to create a singleton controller"
+ check_class_collision :suffix => "ControllerTest"
+
+ def create_test_files
+ template 'functional_test.rb',
+ File.join('test/functional', controller_class_path, "#{controller_file_name}_controller_test.rb")
+ end
+ end
+ end
+end
diff --git a/railties/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb b/railties/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb
new file mode 100644
index 0000000000..e4bf4035da
--- /dev/null
+++ b/railties/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb
@@ -0,0 +1,47 @@
+require 'test_helper'
+
+class <%= controller_class_name %>ControllerTest < ActionController::TestCase
+<% unless options[:singleton] -%>
+ test "should get index" do
+ get :index
+ assert_response :success
+ assert_not_nil assigns(:<%= table_name %>)
+ end
+<% end -%>
+
+ test "should get new" do
+ get :new
+ assert_response :success
+ end
+
+ test "should create <%= file_name %>" do
+ assert_difference('<%= class_name %>.count') do
+ post :create, :<%= file_name %> => { }
+ end
+
+ assert_redirected_to <%= file_name %>_path(assigns(:<%= file_name %>))
+ end
+
+ test "should show <%= file_name %>" do
+ get :show, :id => <%= table_name %>(:one).to_param
+ assert_response :success
+ end
+
+ test "should get edit" do
+ get :edit, :id => <%= table_name %>(:one).to_param
+ assert_response :success
+ end
+
+ test "should update <%= file_name %>" do
+ put :update, :id => <%= table_name %>(:one).to_param, :<%= file_name %> => { }
+ assert_redirected_to <%= file_name %>_path(assigns(:<%= file_name %>))
+ end
+
+ test "should destroy <%= file_name %>" do
+ assert_difference('<%= class_name %>.count', -1) do
+ delete :destroy, :id => <%= table_name %>(:one).to_param
+ end
+
+ assert_redirected_to <%= table_name %>_path
+ end
+end