From 9433d94cff528bfd169cb0eaa4d664a4bc0a5111 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 29 Jan 2010 05:21:55 +0000 Subject: * configure.in, win32/Makefile.sub (EXECUTABLE_EXTS): should be space-separated. [ruby-core:27912] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/mkmf/test_find_executable.rb | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 test/mkmf/test_find_executable.rb (limited to 'test') diff --git a/test/mkmf/test_find_executable.rb b/test/mkmf/test_find_executable.rb new file mode 100644 index 0000000000..6030a8e605 --- /dev/null +++ b/test/mkmf/test_find_executable.rb @@ -0,0 +1,36 @@ +require_relative 'base' + +class TestMkmf + class TestFindExecutable < TestMkmf + class F + def do_find_executable(name) + find_executable(name) + end + end + + def test_find_executable + bug2669 = '[ruby-core:27912]' + path, ENV["PATH"] = ENV["PATH"], path + ENV["PATH"] = @tmpdir + f = F.new + name = "foobar#{$$}#{rand(1000)}" + if /mswin\d|mingw|cygwin/ =~ RUBY_PLATFORM + exts = %w[.exe .com .cmd .bat] + else + exts = [""] + end + exts.each do |ext| + full = name+ext + begin + open(full, "w") {|f| f.chmod(0755)} + result = f.do_find_executable(name) + ensure + File.unlink(full) + end + assert_equal("#{@tmpdir}/#{name}#{ext}", result, bug2669) + end + ensure + ENV["PATH"] = path + end + end +end -- cgit v1.2.3