summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/dl/test_cptr.rb2
-rw-r--r--test/dl/test_handle.rb2
-rw-r--r--test/fiddle/test_handle.rb2
-rw-r--r--test/fiddle/test_pointer.rb2
-rw-r--r--test/ruby/envutil.rb4
5 files changed, 6 insertions, 6 deletions
diff --git a/test/dl/test_cptr.rb b/test/dl/test_cptr.rb
index 13700cb3f2..a5b37dbb61 100644
--- a/test/dl/test_cptr.rb
+++ b/test/dl/test_cptr.rb
@@ -221,6 +221,6 @@ module DL
end
def test_no_memory_leak
- assert_no_memory_leak(%w[-W0 -rdl.so], '', '100_000.times {DL::CPtr.allocate}', limit: 1.2)
+ assert_no_memory_leak(%w[-W0 -rdl.so], '', '100_000.times {DL::CPtr.allocate}', limit: 1.2, rss: true)
end
end
diff --git a/test/dl/test_handle.rb b/test/dl/test_handle.rb
index fc5053a87e..43fdd4a6d0 100644
--- a/test/dl/test_handle.rb
+++ b/test/dl/test_handle.rb
@@ -186,6 +186,6 @@ module DL
end
def test_no_memory_leak
- assert_no_memory_leak(%w[-W0 -rdl.so], '', '100_000.times {DL::Handle.allocate}; GC.start', limit: 1.2)
+ assert_no_memory_leak(%w[-W0 -rdl.so], '', '100_000.times {DL::Handle.allocate}; GC.start', limit: 1.2, rss: true)
end
end
diff --git a/test/fiddle/test_handle.rb b/test/fiddle/test_handle.rb
index aa18c03978..0ed3ecd3f1 100644
--- a/test/fiddle/test_handle.rb
+++ b/test/fiddle/test_handle.rb
@@ -190,7 +190,7 @@ module Fiddle
end if /freebsd/=~ RUBY_PLATFORM
def test_no_memory_leak
- assert_no_memory_leak(%w[-W0 -rfiddle.so], '', '100_000.times {Fiddle::Handle.allocate}; GC.start', limit: 1.2)
+ assert_no_memory_leak(%w[-W0 -rfiddle.so], '', '100_000.times {Fiddle::Handle.allocate}; GC.start', limit: 1.2, rss: true)
end
end
end if defined?(Fiddle)
diff --git a/test/fiddle/test_pointer.rb b/test/fiddle/test_pointer.rb
index 0d7d9a7c27..0570424a44 100644
--- a/test/fiddle/test_pointer.rb
+++ b/test/fiddle/test_pointer.rb
@@ -232,7 +232,7 @@ module Fiddle
end
def test_no_memory_leak
- assert_no_memory_leak(%w[-W0 -rfiddle.so], '', '100_000.times {Fiddle::Pointer.allocate}', limit: 1.2)
+ assert_no_memory_leak(%w[-W0 -rfiddle.so], '', '100_000.times {Fiddle::Pointer.allocate}', limit: 1.2, rss: true)
end
end
end if defined?(Fiddle)
diff --git a/test/ruby/envutil.rb b/test/ruby/envutil.rb
index 9bf4b6cd56..0596676391 100644
--- a/test/ruby/envutil.rb
+++ b/test/ruby/envutil.rb
@@ -390,7 +390,7 @@ eom
assert_warning(*args) {$VERBOSE = false; yield}
end
- def assert_no_memory_leak(args, prepare, code, message=nil, limit: 1.5, **opt)
+ def assert_no_memory_leak(args, prepare, code, message=nil, limit: 1.5, rss: false, **opt)
require_relative 'memory_status'
token = "\e[7;1m#{$$.to_s}:#{Time.now.strftime('%s.%L')}:#{rand(0x10000).to_s(16)}:\e[m"
token_dump = token.dump
@@ -415,7 +415,7 @@ eom
before = err.sub!(/^#{token_re}START=(\{.*\})\n/, '') && Memory::Status.parse($1)
after = err.sub!(/^#{token_re}FINAL=(\{.*\})\n/, '') && Memory::Status.parse($1)
assert_equal([true, ""], [status.success?, err], message)
- ([:size, :rss] & after.members).each do |n|
+ ([:size, (rss && :rss)] & after.members).each do |n|
b = before[n]
a = after[n]
next unless a > 0 and b > 0