やったこと
Rails の generate コマンドを使った時、rspec のファイルも自動生成されますが
今回、自動生成される rspec のファイルを制御します。
確認環境
$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17]
$ rails --version
Rails 5.2.3
$ gem list | grep rspec-rails
rspec-rails (3.8.2)
調査
変更前
$ rails g controller Users new
Running via Spring preloader in process 49766
create app/controllers/users_controller.rb
route get 'users/new'
invoke erb
create app/views/users
create app/views/users/new.html.erb
invoke rspec
create spec/controllers/users_controller_spec.rb
create spec/views/users
create spec/views/users/new.html.erb_spec.rb
invoke helper
create app/helpers/users_helper.rb
invoke rspec
create spec/helpers/users_helper_spec.rb
invoke assets
invoke coffee
create app/assets/javascripts/users.coffee
invoke scss
create app/assets/stylesheets/users.scss
変更後
config/application.rb
module Sample2
class Application < Rails::Application
# 途中コードはスキップ
config.generators do |g|
g.test_framework :rspec,
fixtures: false,
view_specs: false,
helper_specs: false,
routing_specs: false
end
end
end
$ rails g controller Users new
Running via Spring preloader in process 51917
create app/controllers/users_controller.rb
route get 'users/new'
invoke erb
create app/views/users
create app/views/users/new.html.erb
invoke rspec
create spec/controllers/users_controller_spec.rb
invoke helper
create app/helpers/users_helper.rb
invoke rspec
invoke assets
invoke coffee
create app/assets/javascripts/users.coffee
invoke scss
create app/assets/stylesheets/users.scss
参考
- Everyday Rails - RSpecによるRailsテスト入門 (2. RSpecのインストール)