mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Merge latest readline-ext
This commit is contained in:
parent
2159798f4c
commit
21c1b676c4
2 changed files with 24 additions and 2 deletions
|
@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
|
|||
spec.summary = %q{Provides an interface for GNU Readline and Edit Line (libedit).}
|
||||
spec.description = %q{Provides an interface for GNU Readline and Edit Line (libedit).}
|
||||
spec.homepage = "https://github.com/ruby/readline-ext"
|
||||
spec.license = "BSD-2-Clause"
|
||||
spec.licenses = ["Ruby", "BSD-2-Clause"]
|
||||
spec.extensions = %w[ext/readline/extconf.rb]
|
||||
|
||||
spec.metadata["homepage_uri"] = spec.homepage
|
||||
|
|
|
@ -150,10 +150,13 @@ module BasetestReadline
|
|||
|
||||
def test_completion_case_fold
|
||||
expected = [true, false, "string", {"a" => "b"}]
|
||||
completion_case_fold = Readline.completion_case_fold
|
||||
expected.each do |e|
|
||||
Readline.completion_case_fold = e
|
||||
assert_equal(e, Readline.completion_case_fold)
|
||||
end
|
||||
ensure
|
||||
Readline.completion_case_fold = completion_case_fold
|
||||
end
|
||||
|
||||
def test_completion_proc_empty_result
|
||||
|
@ -593,7 +596,14 @@ module BasetestReadline
|
|||
end
|
||||
w.write("a\t\n")
|
||||
w.flush
|
||||
line = Readline.readline('> ', false)
|
||||
begin
|
||||
stderr = $stderr.dup
|
||||
$stderr.reopen(null)
|
||||
line = Readline.readline('> ', false)
|
||||
ensure
|
||||
$stderr.reopen(stderr)
|
||||
stderr.close
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -632,6 +642,8 @@ module BasetestReadline
|
|||
def test_completion_quote_character_completing_unquoted_argument
|
||||
return unless Readline.respond_to?(:completion_quote_character)
|
||||
|
||||
saved_completer_quote_characters = Readline.completer_quote_characters
|
||||
|
||||
quote_character = "original value"
|
||||
Readline.completion_proc = -> (_) do
|
||||
quote_character = Readline.completion_quote_character
|
||||
|
@ -648,11 +660,15 @@ module BasetestReadline
|
|||
end
|
||||
|
||||
assert_nil(quote_character)
|
||||
ensure
|
||||
Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters
|
||||
end
|
||||
|
||||
def test_completion_quote_character_completing_quoted_argument
|
||||
return unless Readline.respond_to?(:completion_quote_character)
|
||||
|
||||
saved_completer_quote_characters = Readline.completer_quote_characters
|
||||
|
||||
quote_character = "original value"
|
||||
Readline.completion_proc = -> (_) do
|
||||
quote_character = Readline.completion_quote_character
|
||||
|
@ -669,6 +685,8 @@ module BasetestReadline
|
|||
end
|
||||
|
||||
assert_equal("'", quote_character)
|
||||
ensure
|
||||
Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters
|
||||
end
|
||||
|
||||
def test_completion_quote_character_after_completion
|
||||
|
@ -679,6 +697,8 @@ module BasetestReadline
|
|||
end
|
||||
omit 'Needs GNU Readline 6 or later' if /mswin|mingw/ =~ RUBY_PLATFORM and defined?(TestReadline) and kind_of?(TestReadline) and Readline::VERSION < '6.0'
|
||||
|
||||
saved_completer_quote_characters = Readline.completer_quote_characters
|
||||
|
||||
Readline.completion_proc = -> (_) { [] }
|
||||
Readline.completer_quote_characters = "'\""
|
||||
|
||||
|
@ -691,6 +711,8 @@ module BasetestReadline
|
|||
end
|
||||
|
||||
assert_nil(Readline.completion_quote_character)
|
||||
ensure
|
||||
Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters
|
||||
end
|
||||
|
||||
private
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue