diff options
Diffstat (limited to 'spec/ruby/core/process/times_spec.rb')
| -rw-r--r-- | spec/ruby/core/process/times_spec.rb | 32 |
1 files changed, 12 insertions, 20 deletions
diff --git a/spec/ruby/core/process/times_spec.rb b/spec/ruby/core/process/times_spec.rb index 01a5595ef9..a7ffbb79e5 100644 --- a/spec/ruby/core/process/times_spec.rb +++ b/spec/ruby/core/process/times_spec.rb @@ -1,27 +1,19 @@ -require File.expand_path('../../../spec_helper', __FILE__) +require_relative '../../spec_helper' describe "Process.times" do - it "returns a Struct::Tms" do - Process.times.should be_kind_of(Struct::Tms) + it "returns a Process::Tms" do + Process.times.should.is_a?(Process::Tms) end - it "returns current cpu times" do - t = Process.times + # TODO: Intel C Compiler does not work this example + # http://rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20221013T030005Z.fail.html.gz + unless RbConfig::CONFIG['CC']&.include?("icx") + it "returns current cpu times" do + t = Process.times + user = t.utime - # 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 + 1 until Process.times.utime > user + Process.times.utime.should > user + end end end |
