fix application_controller require_dependency path generated by api scaffold generator

In the app generator, regardless of the namespace, it is adapted to read the same `application_controller.rb`,
modified to api generator also be the same behavior.

ref 686966a186, 06ac63b4c6
This commit is contained in:
yuuji.yaginuma 2015-11-08 11:47:32 +09:00
parent 25673f47b6
commit 595fa6e922
2 changed files with 25 additions and 1 deletions

View File

@ -1,5 +1,5 @@
<% if namespaced? -%>
require_dependency "<%= namespaced_file_path %>/application_controller"
require_dependency "<%= namespaced_path %>/application_controller"
<% end -%>
<% module_namespacing do -%>

View File

@ -396,4 +396,28 @@ class NamespacedScaffoldGeneratorTest < NamespacedGeneratorTestCase
# Stylesheets (should not be removed)
assert_file "app/assets/stylesheets/scaffold.css"
end
def test_api_scaffold_with_namespace_on_invoke
run_generator [ "admin/role", "name:string", "description:string", "--api" ]
# Model
assert_file "app/models/test_app/admin.rb", /module TestApp\n module Admin/
assert_file "app/models/test_app/admin/role.rb", /module TestApp\n class Admin::Role < ActiveRecord::Base/
assert_file "test/models/test_app/admin/role_test.rb", /module TestApp\n class Admin::RoleTest < ActiveSupport::TestCase/
assert_file "test/fixtures/test_app/admin/roles.yml"
assert_migration "db/migrate/create_test_app_admin_roles.rb"
# Route
assert_file "config/routes.rb" do |route|
assert_match(/^ namespace :admin do\n resources :roles\n end$/, route)
end
# Controller
assert_file "app/controllers/test_app/admin/roles_controller.rb" do |content|
assert_match(/module TestApp\n class Admin::RolesController < ApplicationController/, content)
assert_match(%r(require_dependency "test_app/application_controller"), content)
end
assert_file "test/controllers/test_app/admin/roles_controller_test.rb",
/module TestApp\n class Admin::RolesControllerTest < ActionController::TestCase/
end
end