summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/lib/minitest/unit.rb8
-rw-r--r--test/readline/test_readline.rb14
2 files changed, 15 insertions, 7 deletions
diff --git a/test/lib/minitest/unit.rb b/test/lib/minitest/unit.rb
index e8c22c60b77..81b9d7deae5 100644
--- a/test/lib/minitest/unit.rb
+++ b/test/lib/minitest/unit.rb
@@ -1171,6 +1171,14 @@ module MiniTest
def windows? platform = RUBY_PLATFORM
/mswin|mingw/ =~ platform
end
+
+ ##
+ # Is this running on mingw?
+
+ def mingw? platform = RUBY_PLATFORM
+ /mingw/ =~ platform
+ end
+
end
##
diff --git a/test/readline/test_readline.rb b/test/readline/test_readline.rb
index 0e6f006caf2..cfa90fe3f1b 100644
--- a/test/readline/test_readline.rb
+++ b/test/readline/test_readline.rb
@@ -13,17 +13,11 @@ class TestReadline < Test::Unit::TestCase
SAVED_ENV = %w[COLUMNS LINES]
def setup
- if ENV.key?('APPVEYOR') && /mingw/ =~ RUBY_PLATFORM
- skip 'failing on AppVeyor MinGW build for now'
- end
@saved_env = ENV.values_at(*SAVED_ENV)
@inputrc, ENV[INPUTRC] = ENV[INPUTRC], IO::NULL
end
def teardown
- if ENV.key?('APPVEYOR') && /mingw/ =~ RUBY_PLATFORM
- return
- end
ENV[INPUTRC] = @inputrc
Readline.instance_variable_set("@completion_proc", nil)
begin
@@ -418,6 +412,7 @@ class TestReadline < Test::Unit::TestCase
end if !/EditLine|\A4\.3\z/n.match(Readline::VERSION)
def test_input_metachar
+ skip("Won't pass on mingw w/readline 7.0.005 [ruby-core:45682]") if mingw?
bug6601 = '[ruby-core:45682]'
Readline::HISTORY << "hello"
wo = nil
@@ -427,7 +422,7 @@ class TestReadline < Test::Unit::TestCase
end
assert_equal("hello", line, bug6601)
ensure
- wo.close
+ wo&.close
Readline.delete_text
Readline::HISTORY.clear
end if !/EditLine/n.match(Readline::VERSION)
@@ -589,6 +584,11 @@ class TestReadline < Test::Unit::TestCase
Tempfile.create("test_readline_stdin") {|stdin|
Tempfile.create("test_readline_stdout") {|stdout|
yield stdin, stdout
+ if windows?
+ # needed since readline holds refs to tempfiles, can't delete on Windows
+ Readline.input = STDIN
+ Readline.output = STDOUT
+ end
}
}
end