Skip to content

Commit e0c0e06

Browse files
committed
Skip fiddle assertions if fiddle is not available
1 parent 158e4cc commit e0c0e06

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

test/rubygems/test_gem_ext_cargo_builder.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33
require_relative "helper"
44
require "rubygems/ext"
55
require "open3"
6-
require "fiddle"
6+
begin
7+
require "fiddle"
8+
rescue LoadError
9+
end
710

811
class TestGemExtCargoBuilder < Gem::TestCase
912
def setup
@@ -150,13 +153,17 @@ def skip_unsupported_platforms!
150153
end
151154

152155
def assert_ffi_handle(bundle, name)
156+
return unless defined?(Fiddle)
157+
153158
dylib_handle = Fiddle.dlopen bundle
154159
assert_nothing_raised { dylib_handle[name] }
155160
ensure
156161
dylib_handle&.close
157162
end
158163

159164
def refute_ffi_handle(bundle, name)
165+
return unless defined?(Fiddle)
166+
160167
dylib_handle = Fiddle.dlopen bundle
161168
assert_raise { dylib_handle[name] }
162169
ensure

0 commit comments

Comments
 (0)