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.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.description = %q{Provides an interface for GNU Readline and Edit Line (libedit).}
|
||||||
spec.homepage = "https://github.com/ruby/readline-ext"
|
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.extensions = %w[ext/readline/extconf.rb]
|
||||||
|
|
||||||
spec.metadata["homepage_uri"] = spec.homepage
|
spec.metadata["homepage_uri"] = spec.homepage
|
||||||
|
|
|
@ -150,10 +150,13 @@ module BasetestReadline
|
||||||
|
|
||||||
def test_completion_case_fold
|
def test_completion_case_fold
|
||||||
expected = [true, false, "string", {"a" => "b"}]
|
expected = [true, false, "string", {"a" => "b"}]
|
||||||
|
completion_case_fold = Readline.completion_case_fold
|
||||||
expected.each do |e|
|
expected.each do |e|
|
||||||
Readline.completion_case_fold = e
|
Readline.completion_case_fold = e
|
||||||
assert_equal(e, Readline.completion_case_fold)
|
assert_equal(e, Readline.completion_case_fold)
|
||||||
end
|
end
|
||||||
|
ensure
|
||||||
|
Readline.completion_case_fold = completion_case_fold
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_completion_proc_empty_result
|
def test_completion_proc_empty_result
|
||||||
|
@ -593,7 +596,14 @@ module BasetestReadline
|
||||||
end
|
end
|
||||||
w.write("a\t\n")
|
w.write("a\t\n")
|
||||||
w.flush
|
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
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -632,6 +642,8 @@ module BasetestReadline
|
||||||
def test_completion_quote_character_completing_unquoted_argument
|
def test_completion_quote_character_completing_unquoted_argument
|
||||||
return unless Readline.respond_to?(:completion_quote_character)
|
return unless Readline.respond_to?(:completion_quote_character)
|
||||||
|
|
||||||
|
saved_completer_quote_characters = Readline.completer_quote_characters
|
||||||
|
|
||||||
quote_character = "original value"
|
quote_character = "original value"
|
||||||
Readline.completion_proc = -> (_) do
|
Readline.completion_proc = -> (_) do
|
||||||
quote_character = Readline.completion_quote_character
|
quote_character = Readline.completion_quote_character
|
||||||
|
@ -648,11 +660,15 @@ module BasetestReadline
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_nil(quote_character)
|
assert_nil(quote_character)
|
||||||
|
ensure
|
||||||
|
Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_completion_quote_character_completing_quoted_argument
|
def test_completion_quote_character_completing_quoted_argument
|
||||||
return unless Readline.respond_to?(:completion_quote_character)
|
return unless Readline.respond_to?(:completion_quote_character)
|
||||||
|
|
||||||
|
saved_completer_quote_characters = Readline.completer_quote_characters
|
||||||
|
|
||||||
quote_character = "original value"
|
quote_character = "original value"
|
||||||
Readline.completion_proc = -> (_) do
|
Readline.completion_proc = -> (_) do
|
||||||
quote_character = Readline.completion_quote_character
|
quote_character = Readline.completion_quote_character
|
||||||
|
@ -669,6 +685,8 @@ module BasetestReadline
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_equal("'", quote_character)
|
assert_equal("'", quote_character)
|
||||||
|
ensure
|
||||||
|
Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_completion_quote_character_after_completion
|
def test_completion_quote_character_after_completion
|
||||||
|
@ -679,6 +697,8 @@ module BasetestReadline
|
||||||
end
|
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'
|
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.completion_proc = -> (_) { [] }
|
||||||
Readline.completer_quote_characters = "'\""
|
Readline.completer_quote_characters = "'\""
|
||||||
|
|
||||||
|
@ -691,6 +711,8 @@ module BasetestReadline
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_nil(Readline.completion_quote_character)
|
assert_nil(Readline.completion_quote_character)
|
||||||
|
ensure
|
||||||
|
Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue