diff options
Diffstat (limited to 'test/ruby/test_extlibs.rb')
-rw-r--r-- | test/ruby/test_extlibs.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/test/ruby/test_extlibs.rb b/test/ruby/test_extlibs.rb index 5016692abe..7f8f033eca 100644 --- a/test/ruby/test_extlibs.rb +++ b/test/ruby/test_extlibs.rb @@ -1,11 +1,19 @@ require "envutil" class TestExtLibs < Test::Unit::TestCase + @extdir = $".grep(/\/rbconfig\.rb\z/) {break "#$`/ext"} + def self.check_existence(ext, add_msg = nil) add_msg = ". #{add_msg}" if add_msg + log = "#{@extdir}/#{ext}/mkmf.log" define_method("test_existence_of_#{ext}") do assert_separately([], <<-"end;", ignore_stderr: true) # do - assert_nothing_raised("extension library `#{ext}' is not found#{add_msg}") do + log = #{log.dump} + msg = proc { + "extension library `#{ext}' is not found#{add_msg}\n" << + (File.exist?(log) ? File.read(log) : "\#{log} not found") + } + assert_nothing_raised(msg) do require "#{ext}" end end; |