diff options
Diffstat (limited to 'test/rake/filecreation.rb')
-rw-r--r-- | test/rake/filecreation.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/rake/filecreation.rb b/test/rake/filecreation.rb new file mode 100644 index 0000000000..e4c6e347da --- /dev/null +++ b/test/rake/filecreation.rb @@ -0,0 +1,30 @@ +module FileCreation + OLDFILE = "testdata/old" + NEWFILE = "testdata/new" + + def create_timed_files(oldfile, *newfiles) + return if File.exist?(oldfile) && newfiles.all? { |newfile| File.exist?(newfile) } + old_time = create_file(oldfile) + newfiles.each do |newfile| + while create_file(newfile) <= old_time + sleep(0.1) + File.delete(newfile) rescue nil + end + end + end + + def create_dir(dirname) + FileUtils.mkdir_p(dirname) unless File.exist?(dirname) + File.stat(dirname).mtime + end + + def create_file(name) + create_dir(File.dirname(name)) + FileUtils.touch(name) unless File.exist?(name) + File.stat(name).mtime + end + + def delete_file(name) + File.delete(name) rescue nil + end +end |