summaryrefslogtreecommitdiff
path: root/test/ruby/test_process.rb
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-12-16 05:04:03 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-12-16 05:04:03 +0000
commit2a732947a65d1fe55e917425af10cee2e14b277a (patch)
treef01843f3b4ab4f66eee455df1d1c7490e9ee40b8 /test/ruby/test_process.rb
parentb7cbdcc5fdb027bd349ecf32417962a0fa6ea98d (diff)
* process.c (make_clock_result): add :second as a unit for
Process.clock_gettime. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_process.rb')
-rw-r--r--test/ruby/test_process.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/ruby/test_process.rb b/test/ruby/test_process.rb
index 6586a06fa5..06ccafc987 100644
--- a/test/ruby/test_process.rb
+++ b/test/ruby/test_process.rb
@@ -1682,6 +1682,29 @@ EOS
assert_raise(Errno::EINVAL) { Process.clock_gettime(:foo) }
end
+ def test_clock_gettime_unit
+ t0 = Time.now.to_f
+ [
+ [:nanosecond, 1_000_000_000],
+ [:microsecond, 1_000_000],
+ [:millisecond, 1_000],
+ [:second, 1],
+ [:float_microsecond, 1_000_000.0],
+ [:float_millisecond, 1_000.0],
+ [:float_second, 1.0],
+ [nil, 1.0],
+ [:foo],
+ ].each do |unit, num|
+ unless num
+ assert_raise(ArgumentError){ Process.clock_gettime(Process::CLOCK_REALTIME, unit) }
+ next
+ end
+ t1 = Process.clock_gettime(Process::CLOCK_REALTIME, unit)
+ assert_kind_of num.class, t1, [unit, num].inspect
+ assert_in_delta t0, t1/num, 1, [unit, num].inspect
+ end
+ end
+
def test_clock_gettime_constants
Process.constants.grep(/\ACLOCK_/).each {|n|
c = Process.const_get(n)