def puts_red(heredoc); puts set_color heredoc, :red; end def puts_green(heredoc); puts set_color heredoc, :green; end puts_red "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" puts_red "@@ @@@@@@@@ @@@@@@@@37@@@" puts_red "@ @@@@@ @@@@@@@@@@@@@" puts_red "@ @@@@@ @@@@ @@@@" puts_red "@ @@@@@ @@@@ @@" puts_red "@ @@@@ @@@@@@ @" puts_red "@ @@@@@@@ @@@@@@ @" puts_red "@ @@ @@@@@@ @@@@@@ @" puts_red "@ @@@@ @@@@ @@" puts_red "@@ @@@@@ @@@@@ @@@@" puts_red "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" puts_red "@@@@@@@@ https://www.rubidium.io @@@@@@@@@" puts_red "@@@@@@@@@@@@@@ 85.4678 @@@@@@@@@@@@@@@@@@" puts_red "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" puts "" puts "" # Checks for unstagged commits return_message = "There are unstaged commits. Do you want to continue?" return if !run("git diff --no-patch --exit-code") && no?(return_message) # TEMPLATE START if !defined? RSpec say "RSpec was not installed. Adding it now..." gem "rspec-rails" , group: [:development, :test] run "bundle install" generate "rspec:install" end gem "factory_bot_rails", group: [:development, :test] run "bundle install" create_file "spec/support/factory_bot.rb", <<~EOF RSpec.configure do |config| config.include FactoryBot::Syntax::Methods end EOF gsub_file 'spec/rails_helper.rb', "# Dir[Rails.root.join('spec', 'support', '**', '*.rb')].sort.each { |f| require f }\n", "Dir[Rails.root.join('spec', 'support', '**', '*.rb')].sort.each { |f| require f }\n" # TEMPLATE END puts "" puts "" puts_green "Template Name: FactoryBot" puts_green "By: y.fkhar (https://www.rubidium.io/profiles/y-fkhar)" puts_green "https://www.rubidium.io/templates/factorybot"