class ReactOnRails::Generators::DevTestsGenerator
def add_test_related_gems_to_gemfile
def add_test_related_gems_to_gemfile gem("rspec-rails", group: :test) gem("chromedriver-helper", group: :test) gem("coveralls", require: false) end
def add_yarn_relative_install_script_in_package_json
def add_yarn_relative_install_script_in_package_json package_json = File.join(destination_root, "package.json") contents = JSON.parse(File.read(package_json)) contents["scripts"] ||= {} contents["scripts"]["postinstall"] = "yalc link react-on-rails" File.open(package_json, "w+") { |f| f.puts JSON.pretty_generate(contents) } end
def copy_rspec_files
def copy_rspec_files %w[.eslintrc spec/spec_helper.rb spec/rails_helper.rb spec/simplecov_helper.rb .rspec].each { |file| copy_file(file) } end
def copy_tests
def copy_tests %w[spec/system/hello_world_spec.rb].each { |file| copy_file(file) } end
def replace_prerender_if_server_rendering
def replace_prerender_if_server_rendering return unless options.example_server_rendering hello_world_index = File.join(destination_root, "app", "views", "hello_world", "index.html.erb") hello_world_contents = File.read(hello_world_index) new_hello_world_contents = hello_world_contents.gsub("prerender: false", "prerender: true") File.open(hello_world_index, "w+") { |f| f.puts new_hello_world_contents } end