When /^I add "([^"]+)" from this project as a dependency$/ do |gem_name| append_to_file("Gemfile", %{gem "#{gem_name}", :path => "#{PROJECT_ROOT}"\n}) end When /^I add "([^"]+)" as a dependency$/ do |gem_name| append_to_file("Gemfile", %{gem "#{gem_name}"\n}) end When /^I print out "([^"]*)"$/ do |path| in_current_dir do File.open(path, "r") do |f| puts f.inspect end end end When /^I configure the factories as:$/ do |string| append_to_file File.join("config", "application.rb"), <<~RUBY class Testapp::Application #{string} end RUBY end When /^I configure the factories directory as "([^"]+)"$/ do |factory_dir| append_to_file File.join("config", "application.rb"), <<~RUBY class Testapp::Application config.generators do |g| g.fixture_replacement :factory_bot, :dir => "#{factory_dir}" end end RUBY end When /^I comment out gem "([^"]*)" from my Gemfile$/ do |gem_name| in_current_dir do content = File.read("Gemfile") File.open("Gemfile", "w") do |f| f.write content.sub(/gem ['"]#{gem_name}/, '#\1') end end end