module FakeFS::FileSystem
def clone(path)
copies directories and files from the real filesystem
def clone(path) path = File.expand_path(path) pattern = File.join(path, '**', '*') files = RealFile.file?(path) ? [path] : [path] + RealDir.glob(pattern, RealFile::FNM_DOTMATCH) files.each do |f| if RealFile.file?(f) FileUtils.mkdir_p(File.dirname(f)) File.open(f, 'w') do |g| g.print RealFile.open(f){|h| h.read } end elsif RealFile.directory?(f) FileUtils.mkdir_p(f) elsif RealFile.symlink?(f) FileUtils.ln_s() end end end