module Given ROOT = File.expand_path( '../..', File.dirname( File.realpath(__FILE__) ) ) TMP = File.join( ROOT, 'tmp' ) class << self def fixture name cleanup! `rsync -av #{File.join( ROOT, 'fixtures', name )}/ #{TMP}/` Dir.chdir TMP ENV['MM_ROOT'] = TMP end def no_file name FileUtils.rm name, force: true end def symlink source, destination no_file destination FileUtils.symlink File.expand_path(source), File.expand_path(destination), force: true end def file name, content file_path = File.join( TMP, name ) FileUtils.mkdir_p( File.dirname(file_path) ) File.open( file_path, 'w' ) do |file| file.write content end end def cleanup! Dir.chdir ROOT if File.exist? TMP `rm -rf #{TMP}` end end end end