Sha256: 8073f7f9c2530f42b57e43a500aeac6685f4f687da5b51d86e0bc4c9a5199334

Contents?: true

Size: 771 Bytes

Versions: 4

Compression:

Stored size: 771 Bytes

Contents

#!/usr/bin/env ruby

# TODO: Ensure compile first (but only if needed)
# system "task/make"

# Run memory tests

live = ARGV.include?('--live')

unless live
  $LOAD_PATH.unshift(File.expand_path('ext/libxml'))
  $LOAD_PATH.unshift(File.expand_path('lib'))
end
$LOAD_PATH.unshift('test')  # NEEDED?

unless glob = ARGV.select{ |a| a !~ /^[-]/ }[0]
  glob = 'test/ets_*.rb'
end

Dir[glob].each do |fn|
  next if File.directory?(fn)
  puts "test #{fn}"
  f=Process.fork
  if f.nil?
    require fn
    exit
  end
  rss_k=0
  while (px=Process.wait2(f,Process::WNOHANG)).nil?
    sleep 2
    rss_k2=`ps -o rss= -p #{f}`.to_i
    rss_k=(rss_k2>rss_k) ? rss_k2 : rss_k
  end
  pid,status=px
  puts "\nProcess #{pid} exited status #{status.exitstatus}, max rss(k) #{rss_k}"
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
libxml-ruby-0.6.0 work/task/memory
libxml-ruby-0.6.0-x86-mswin32-60 work/task/memory
libxml-ruby-0.7.0 work/task/memory
libxml-ruby-0.7.0-x86-mswin32-60 work/task/memory