Skip to content

Commit 64e4f20

Browse files
author
Arthur Nogueira Neves
committed
Merge pull request rails#23921 from y-yagi/remove_rack_cors_initializer_when_updating
remove rack cors initializer when updating
2 parents ecf6dc3 + 5a9cc01 commit 64e4f20

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

railties/lib/rails/generators/rails/app/app_generator.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ def config_when_updating
9393
active_record_belongs_to_required_by_default_config_exist = File.exist?('config/initializers/active_record_belongs_to_required_by_default.rb')
9494
action_cable_config_exist = File.exist?('config/cable.yml')
9595
ssl_options_exist = File.exist?('config/initializers/ssl_options.rb')
96+
rack_cors_config_exist = File.exist?('config/initializers/cors.rb')
9697

9798
config
9899

@@ -115,6 +116,10 @@ def config_when_updating
115116
unless ssl_options_exist
116117
remove_file 'config/initializers/ssl_options.rb'
117118
end
119+
120+
unless rack_cors_config_exist
121+
remove_file 'config/initializers/cors.rb'
122+
end
118123
end
119124

120125
def database_yml

railties/test/generators/app_generator_test.rb

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,32 @@ def test_rails_update_does_not_remove_ssl_options_if_already_present
269269
end
270270
end
271271

272+
def test_rails_update_does_not_create_rack_cors
273+
app_root = File.join(destination_root, 'myapp')
274+
run_generator [app_root]
275+
276+
stub_rails_application(app_root) do
277+
generator = Rails::Generators::AppGenerator.new ["rails"], { with_dispatchers: true }, destination_root: app_root, shell: @shell
278+
generator.send(:app_const)
279+
quietly { generator.send(:update_config_files) }
280+
assert_no_file "#{app_root}/config/initializers/cors.rb"
281+
end
282+
end
283+
284+
def test_rails_update_does_not_remove_rack_cors_if_already_present
285+
app_root = File.join(destination_root, 'myapp')
286+
run_generator [app_root]
287+
288+
FileUtils.touch("#{app_root}/config/initializers/cors.rb")
289+
290+
stub_rails_application(app_root) do
291+
generator = Rails::Generators::AppGenerator.new ["rails"], { with_dispatchers: true }, destination_root: app_root, shell: @shell
292+
generator.send(:app_const)
293+
quietly { generator.send(:update_config_files) }
294+
assert_file "#{app_root}/config/initializers/cors.rb"
295+
end
296+
end
297+
272298
def test_application_names_are_not_singularized
273299
run_generator [File.join(destination_root, "hats")]
274300
assert_file "hats/config/environment.rb", /Rails\.application\.initialize!/

0 commit comments

Comments
 (0)