diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/mkmf/test_find_executable.rb | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/test/mkmf/test_find_executable.rb b/test/mkmf/test_find_executable.rb index d2b460bd00..ad48e5193c 100644 --- a/test/mkmf/test_find_executable.rb +++ b/test/mkmf/test_find_executable.rb @@ -8,6 +8,16 @@ class TestMkmf @path, ENV["PATH"] = ENV["PATH"], @tmpdir end + def each_exts(&block) + name = "foobar#{$$}#{rand(1000)}" + stdout.filter {|s| s.sub(name, "<executable>")} + exts = mkmf {self.class::CONFIG['EXECUTABLE_EXTS']}.split + exts[0] ||= "" + exts.each do |ext| + yield name+ext, name + end + end + def teardown ENV["PATH"] = @path super @@ -15,29 +25,19 @@ class TestMkmf def test_find_executable bug2669 = '[ruby-core:27912]' - name = "foobar#{$$}#{rand(1000)}" - exts = mkmf {self.class::CONFIG['EXECUTABLE_EXTS']}.split - stdout.filter {|s| s.sub(name, "<executable>")} - exts[0] ||= "" - exts.each do |ext| - full = name+ext + each_exts do |full, name| begin open(full, "w") {|ff| ff.chmod(0755)} result = mkmf {find_executable(name)} ensure File.unlink(full) end - assert_equal("#{@tmpdir}/#{name}#{ext}", result, bug2669) + assert_equal("#{@tmpdir}/#{full}", result, bug2669) end end def test_find_executable_dir - name = "foobar#{$$}#{rand(1000)}" - exts = mkmf {self.class::CONFIG['EXECUTABLE_EXTS']}.split - stdout.filter {|s| s.sub(name, "<executable>")} - exts[0] ||= "" - exts.each do |ext| - full = name+ext + each_exts do |full, name| begin Dir.mkdir(full) result = mkmf {find_executable(name)} |