summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/mkmf/test_find_executable.rb26
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)}