module Install::Gems
Public Class Methods
included(thor)
click to toggle source
# File lib/myrails/modules/gems.rb, line 3 def self.included(thor) thor.class_eval do desc 'add_test_group', 'Add test group gems to Gemfile' def add_test_group insert_into_file 'Gemfile', before: "group :development, :test do" do <<-CODE group :test do gem 'simplecov' gem 'shoulda-matchers' gem 'factory_bot_rails' gem 'database_cleaner' gem 'chromedriver-helper' gem 'launchy' gem 'rails-controller-testing' end CODE end end desc 'add_development_test_gems', 'Add test and development group gems to Gemfile' def add_development_test_gems insert_into_file 'Gemfile', after: "group :development, :test do\n" do <<-CODE gem 'faker' gem 'yard' gem 'letter_opener' gem "rails-erd" CODE end end desc 'add_rails_gems', 'Add commonly used gems to Gemfile' def add_rails_gems insert_into_file 'Gemfile', after: "gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]\n" do <<-CODE gem 'haml-rails' gem "ransack" gem 'will_paginate' gem "font-awesome-rails" gem 'trix' gem 'record_tag_helper' gem 'jquery-rails' CODE end end desc 'add_private_section', 'Add private section to appliation controller' def add_private_section insert_into_file 'app/controllers/application_controller.rb', before: 'end' do <<-CODE private CODE end end desc 'setup_gems', 'Install development, test and prodution gems' def setup_gems add_test_group add_development_test_gems add_rails_gems run 'bundle install' add_private_section end end end
Public Instance Methods
add_development_test_gems()
click to toggle source
# File lib/myrails/modules/gems.rb, line 23 def add_development_test_gems insert_into_file 'Gemfile', after: "group :development, :test do\n" do <<-CODE gem 'faker' gem 'yard' gem 'letter_opener' gem "rails-erd" CODE end end
add_private_section()
click to toggle source
# File lib/myrails/modules/gems.rb, line 48 def add_private_section insert_into_file 'app/controllers/application_controller.rb', before: 'end' do <<-CODE private CODE end end
add_rails_gems()
click to toggle source
# File lib/myrails/modules/gems.rb, line 34 def add_rails_gems insert_into_file 'Gemfile', after: "gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]\n" do <<-CODE gem 'haml-rails' gem "ransack" gem 'will_paginate' gem "font-awesome-rails" gem 'trix' gem 'record_tag_helper' gem 'jquery-rails' CODE end end
add_test_group()
click to toggle source
# File lib/myrails/modules/gems.rb, line 7 def add_test_group insert_into_file 'Gemfile', before: "group :development, :test do" do <<-CODE group :test do gem 'simplecov' gem 'shoulda-matchers' gem 'factory_bot_rails' gem 'database_cleaner' gem 'chromedriver-helper' gem 'launchy' gem 'rails-controller-testing' end CODE end end
setup_gems()
click to toggle source
# File lib/myrails/modules/gems.rb, line 56 def setup_gems add_test_group add_development_test_gems add_rails_gems run 'bundle install' add_private_section end