Class: Rolemodel::Testing::ParallelTestsGenerator

Inherits:
GeneratorBase
  • Object
show all
Defined in:
lib/generators/rolemodel/testing/parallel_tests/parallel_tests_generator.rb

Overview

rubocop:disable Style/Documentation

Instance Method Summary collapse

Instance Method Details

#add_rspec_parallel_fileObject



17
18
19
# File 'lib/generators/rolemodel/testing/parallel_tests/parallel_tests_generator.rb', line 17

def add_rspec_parallel_file
  template '.rspec_parallel', '.rspec_parallel'
end

#configure_database_for_parallel_testingObject



21
22
23
24
25
26
27
28
# File 'lib/generators/rolemodel/testing/parallel_tests/parallel_tests_generator.rb', line 21

def configure_database_for_parallel_testing
  say_status :update, 'Updating database.yml for parallel testing', :blue

  # If there is, append the TEST_ENV_NUMBER to it
  gsub_file 'config/database.yml', /(test:.*\n\s+database:.*_test)/m, "\\1<%= ENV['TEST_ENV_NUMBER'] %>"

  say_status :update, 'Updated database configuration successfully', :green
end

#display_post_install_messageObject



35
36
37
38
39
# File 'lib/generators/rolemodel/testing/parallel_tests/parallel_tests_generator.rb', line 35

def display_post_install_message
  say_status :info, 'Parallel Tests has been configured!', :green
  say_status :info, 'You can now run your tests in parallel with:', :green
  say_status :info, 'bundle exec rake parallel:spec', :green
end

#install_parallel_testsObject



8
9
10
11
12
13
14
15
# File 'lib/generators/rolemodel/testing/parallel_tests/parallel_tests_generator.rb', line 8

def install_parallel_tests
  gem_group :development, :test do
    gem 'parallel_tests'
    gem 'turbo_tests', require: false
    gem 'rspec_junit_formatter', require: false
  end
  run_bundle
end

#setup_parallel_test_databasesObject



30
31
32
33
# File 'lib/generators/rolemodel/testing/parallel_tests/parallel_tests_generator.rb', line 30

def setup_parallel_test_databases
  say_status :setup, 'Setting up parallel test databases...', :blue
  bundle_command 'exec rake parallel:setup'
end