diff options
-rw-r--r-- | test/fiddle/test_function.rb | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/test/fiddle/test_function.rb b/test/fiddle/test_function.rb index cbf84eae9d..b799fb874a 100644 --- a/test/fiddle/test_function.rb +++ b/test/fiddle/test_function.rb @@ -86,9 +86,9 @@ module Fiddle n1 = f.call(nil, 0, msec) n2 = th.value t1 = Process.clock_gettime(Process::CLOCK_MONOTONIC, :millisecond) - assert_in_delta(msec, t1 - t0, 100, 'slept correct amount of time') - assert_equal(0, n1, 'poll(2) called correctly main-thread') - assert_equal(0, n2, 'poll(2) called correctly in sub-thread') + assert_in_delta(msec, t1 - t0, 100, 'slept amount of time') + assert_equal(0, n1, perror("poll(2) in main-thread")) + assert_equal(0, n2, perror("poll(2) in sub-thread")) end def test_no_memory_leak @@ -96,5 +96,16 @@ module Fiddle code = 'begin r.call(a); rescue TypeError; end' assert_no_memory_leak(%w[-W0 -rfiddle], "#{prep}\n1000.times{#{code}}", "10_000.times {#{code}}", limit: 1.2) end + + private + + def perror(m) + proc do + if e = Fiddle.last_error + m = "#{m}: #{SystemCallError.new(e).message}" + end + m + end + end end end if defined?(Fiddle) |