summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/irb/completion.rb2
-rw-r--r--test/irb/test_completion.rb5
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/irb/completion.rb b/lib/irb/completion.rb
index 9d386bbeca..dbd652769e 100644
--- a/lib/irb/completion.rb
+++ b/lib/irb/completion.rb
@@ -255,7 +255,7 @@ module IRB
candidates = []
end
- select_message(receiver, message, candidates, "::")
+ select_message(receiver, message, candidates.sort, "::")
end
when /^(:[^:.]+)(\.|::)([^.]*)$/
diff --git a/test/irb/test_completion.rb b/test/irb/test_completion.rb
index 4ca7f298ff..df5a78c69d 100644
--- a/test/irb/test_completion.rb
+++ b/test/irb/test_completion.rb
@@ -196,13 +196,14 @@ module TestIRB
class TestConstantCompletion < TestCompletion
class Foo
+ B3 = 1
B1 = 1
- B2 = 2
+ B2 = 1
end
def test_complete_constants
assert_equal(["Foo"], IRB::InputCompletor.retrieve_completion_data("Fo", bind: binding))
- assert_equal(["Foo::B1", "Foo::B2"], IRB::InputCompletor.retrieve_completion_data("Foo::B", bind: binding))
+ assert_equal(["Foo::B1", "Foo::B2", "Foo::B3"], IRB::InputCompletor.retrieve_completion_data("Foo::B", bind: binding))
assert_equal(["Foo::B1.positive?"], IRB::InputCompletor.retrieve_completion_data("Foo::B1.pos", bind: binding))
assert_equal(["::Forwardable"], IRB::InputCompletor.retrieve_completion_data("::Fo", bind: binding))