summaryrefslogtreecommitdiff
path: root/jni/ruby/test/rake/file_creation.rb
diff options
context:
space:
mode:
Diffstat (limited to 'jni/ruby/test/rake/file_creation.rb')
-rw-r--r--jni/ruby/test/rake/file_creation.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/jni/ruby/test/rake/file_creation.rb b/jni/ruby/test/rake/file_creation.rb
new file mode 100644
index 0000000..facc57a
--- /dev/null
+++ b/jni/ruby/test/rake/file_creation.rb
@@ -0,0 +1,34 @@
+module FileCreation
+ OLDFILE = "old"
+ NEWFILE = "new"
+
+ def create_timed_files(oldfile, *newfiles)
+ return if (File.exist?(oldfile) &&
+ newfiles.all? { |newfile|
+ File.exist?(newfile) && File.stat(newfile).mtime > File.stat(oldfile).mtime
+ })
+ now = Time.now
+
+ create_file(oldfile, now - 60)
+
+ newfiles.each do |newfile|
+ create_file(newfile, now)
+ end
+ end
+
+ def create_dir(dirname)
+ FileUtils.mkdir_p(dirname) unless File.exist?(dirname)
+ File.stat(dirname).mtime
+ end
+
+ def create_file(name, file_time=nil)
+ create_dir(File.dirname(name))
+ FileUtils.touch(name) unless File.exist?(name)
+ File.utime(file_time, file_time, name) unless file_time.nil?
+ File.stat(name).mtime
+ end
+
+ def delete_file(name)
+ File.delete(name) rescue nil
+ end
+end