class ControllerGeneratorTest

Public Instance Methods

test_actions_are_turned_into_methods() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 90
def test_actions_are_turned_into_methods
  run_generator

  assert_file "app/controllers/account_controller.rb" do |controller|
    assert_instance_method :foo, controller
    assert_instance_method :bar, controller
  end
end
test_add_routes() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 68
def test_add_routes
  run_generator
  assert_file "config/routes.rb", /^  get 'account\/foo'/, /^  get 'account\/bar'/
end
test_check_class_collision() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 22
def test_check_class_collision
  Object.send :const_set, :ObjectController, Class.new
  content = capture(:stderr) { run_generator ["object"] }
  assert_match(/The name 'ObjectController' is either already used in your application or reserved/, content)
ensure
  Object.send :remove_const, :ObjectController
end
test_controller_skeleton_is_created() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 17
def test_controller_skeleton_is_created
  run_generator
  assert_file "app/controllers/account_controller.rb", /class AccountController < ApplicationController/
end
test_does_not_invoke_assets_if_required() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 46
def test_does_not_invoke_assets_if_required
  run_generator ["account", "--skip-assets"]
  assert_no_file "app/assets/javascripts/account.js"
  assert_no_file "app/assets/stylesheets/account.css"
end
test_does_not_invoke_helper_if_required() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 35
def test_does_not_invoke_helper_if_required
  run_generator ["account", "--skip-helper"]
  assert_no_file "app/helpers/account_helper.rb"
end
test_does_not_invoke_test_framework_if_required() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 57
def test_does_not_invoke_test_framework_if_required
  run_generator ["account", "--no-test-framework"]
  assert_no_file "test/controllers/account_controller_test.rb"
end
test_help_does_not_show_invoked_generators_options_if_they_already_exist() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 12
def test_help_does_not_show_invoked_generators_options_if_they_already_exist
  content = run_generator ["--help"]
  assert_no_match(/Helper options\:/, content)
end
test_invokes_assets() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 40
def test_invokes_assets
  run_generator
  assert_file "app/assets/javascripts/account.js"
  assert_file "app/assets/stylesheets/account.css"
end
test_invokes_default_template_engine() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 62
def test_invokes_default_template_engine
  run_generator
  assert_file "app/views/account/foo.html.erb", %r(app/views/account/foo\.html\.erb)
  assert_file "app/views/account/bar.html.erb", %r(app/views/account/bar\.html\.erb)
end
test_invokes_default_template_engine_even_with_no_action() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 80
def test_invokes_default_template_engine_even_with_no_action
  run_generator ["account"]
  assert_file "app/views/account"
end
test_invokes_default_test_framework() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 52
def test_invokes_default_test_framework
  run_generator
  assert_file "test/controllers/account_controller_test.rb"
end
test_invokes_helper() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 30
def test_invokes_helper
  run_generator
  assert_file "app/helpers/account_helper.rb"
end
test_namespaced_routes_are_created_in_routes() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 99
def test_namespaced_routes_are_created_in_routes
  run_generator ["admin/dashboard", "index"]
  assert_file "config/routes.rb" do |route|
    assert_match(/^  namespace :admin do\n    get 'dashboard\/index'\n  end$/, route)
  end
end
test_namespaced_routes_with_multiple_actions_are_created_in_routes() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 106
def test_namespaced_routes_with_multiple_actions_are_created_in_routes
  run_generator ["admin/dashboard", "index", "show"]
  assert_file "config/routes.rb" do |route|
    assert_match(/^  namespace :admin do\n    get 'dashboard\/index'\n    get 'dashboard\/show'\n  end$/, route)
  end
end
test_skip_routes() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 73
def test_skip_routes
  run_generator ["account", "foo", "--skip-routes"]
  assert_file "config/routes.rb" do |routes|
    assert_no_match(/get 'account\/foo'/, routes)
  end
end
test_template_engine_with_class_path() click to toggle source
# File railties/test/generators/controller_generator_test.rb, line 85
def test_template_engine_with_class_path
  run_generator ["admin/account"]
  assert_file "app/views/admin/account"
end