提交 d53de10c 编写于 作者: A Andrew White

Merge pull request #22083 from thejamespinto/idempotent-route-generator

Route generator should be idempotent
* Route generator should be idempotent
running generators several times no longer require you to cleanup routes.rb
*Thiago Pinto*
* Allow passing an environment to `config_for`.
*Simon Eskildsen*
......
......@@ -235,7 +235,7 @@ def route(routing_code)
sentinel = /\.routes\.draw do\s*\n/m
in_root do
inject_into_file 'config/routes.rb', " #{routing_code}\n", { after: sentinel, verbose: false, force: true }
inject_into_file 'config/routes.rb', " #{routing_code}\n", { after: sentinel, verbose: false, force: false }
end
end
......
......@@ -235,6 +235,21 @@ def test_route_should_add_data_to_the_routes_block_in_config_routes
assert_file 'config/routes.rb', /#{Regexp.escape(route_command)}/
end
def test_route_should_be_idempotent
run_generator
route_path = File.expand_path('config/routes.rb', destination_root)
# runs first time, not asserting
action :route, "root 'welcome#index'"
content_1 = File.read(route_path)
# runs second time
action :route, "root 'welcome#index'"
content_2 = File.read(route_path)
assert_equal content_1, content_2
end
def test_route_should_add_data_with_an_new_line
run_generator
action :route, "root 'welcome#index'"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册