module CommonHelpers def in_tmp_folder(&block) FileUtils.chdir(@tmp_root, &block) end def in_project_folder(&block) project_folder = @active_project_folder || @tmp_root FileUtils.chdir(project_folder, &block) end def in_home_folder(&block) FileUtils.chdir(@home_path, &block) end def force_local_lib_override(project_name = @project_name) rakefile = File.read(File.join(project_name, 'Rakefile')) File.open(File.join(project_name, 'Rakefile'), "w+") do |f| f << "$:.unshift('#{@lib_path}')\n" f << rakefile end end def setup_active_project_folder project_name @active_project_folder = File.join(@tmp_root, project_name) FileUtils.mkdir_p(@active_project_folder) @project_name = project_name end def prepend_to_file(filename, text) file = File.read(filename) File.open(filename, "w+") do |f| f << text + "\n" f << file end end def append_to_file(filename, text) File.open(filename, "a") do |f| f << text + "\n" end end end World(CommonHelpers)