mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
401b64c4e8
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
27 lines
853 B
Ruby
27 lines
853 B
Ruby
require_relative '../../spec_helper'
|
|
|
|
describe "Process.times" do
|
|
it "returns a Process::Tms" do
|
|
Process.times.should be_kind_of(Process::Tms)
|
|
end
|
|
|
|
it "returns current cpu times" do
|
|
t = Process.times
|
|
|
|
# Do busy work for a wall-clock interval.
|
|
start = Time.now
|
|
1 until (Time.now - start) > 0.5
|
|
|
|
# Ensure times is larger. NOTE that there is no
|
|
# guarantee of an upper bound since anything may be
|
|
# happening at the OS level, so we ONLY check that at
|
|
# least an interval has elapsed. Also, we are assuming
|
|
# there is a correlation between wall clock time and
|
|
# process time. In practice, there is an observed
|
|
# discrepancy often 10% or greater. In other words,
|
|
# this is a very fuzzy test.
|
|
t2 = Process.times
|
|
diff = (t2.utime + t2.stime) - (t.utime + t.stime)
|
|
diff.should > 0
|
|
end
|
|
end
|