Sha256: eb5aae443827fe034210d64ecec83426aa0e159f56272487e4235f3ea1e21f29
Contents?: true
Size: 732 Bytes
Versions: 323
Compression:
Stored size: 732 Bytes
Contents
require 'tmpdir' include FileUtils # Prepares temporary fixture-directories and # cleans them afterwards. # # @param [Fixnum] number_of_directories the number of fixture-directories to make # # @yield [path1, path2, ...] the empty fixture-directories # @yieldparam [String] path the path to a fixture directory # def fixtures(number_of_directories = 1) current_pwd = pwd paths = 1.upto(number_of_directories).map do File.expand_path(File.join(pwd, "spec/.fixtures/#{Time.now.to_f.to_s.sub('.', '') + rand(9999).to_s}")) end # Create the dirs paths.each { |p| mkdir_p(p) } cd(paths.first) if number_of_directories == 1 yield(*paths) ensure cd current_pwd paths.map { |p| rm_rf(p) if File.exists?(p) } end
Version data entries
323 entries across 224 versions & 13 rubygems