summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtest/reline/yamatanooroti/multiline_repl6
-rw-r--r--test/reline/yamatanooroti/test_rendering.rb31
2 files changed, 36 insertions, 1 deletions
diff --git a/test/reline/yamatanooroti/multiline_repl b/test/reline/yamatanooroti/multiline_repl
index 49c7a56074..28630210b6 100755
--- a/test/reline/yamatanooroti/multiline_repl
+++ b/test/reline/yamatanooroti/multiline_repl
@@ -70,7 +70,11 @@ opt.on('--dialog VAL') { |v|
dialog.trap_key = [?j.ord]
height = 4
end
- Reline::DialogRenderInfo.new(pos: cursor_pos, contents: contents, height: height, pointer: context.pointer)
+ scrollbar = false
+ if v.include?('scrollbar')
+ scrollbar = true
+ end
+ Reline::DialogRenderInfo.new(pos: cursor_pos, contents: contents, height: height, pointer: context.pointer, scrollbar: scrollbar)
}, Struct.new(:pointer).new)
}
opt.on('--complete') {
diff --git a/test/reline/yamatanooroti/test_rendering.rb b/test/reline/yamatanooroti/test_rendering.rb
index 5b4cf766f5..8fa436ab22 100644
--- a/test/reline/yamatanooroti/test_rendering.rb
+++ b/test/reline/yamatanooroti/test_rendering.rb
@@ -939,6 +939,37 @@ begin
EOC
end
+ def test_simple_dialog_scrollbar_with_moving_to_right
+ start_terminal(20, 50, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl --dialog long,scrollkey,scrollbar}, startup_message: 'Multiline REPL.')
+ 6.times{ write('j') }
+ write('a')
+ close
+ assert_screen(<<~'EOC')
+ Multiline REPL.
+ prompt> a
+ source programming ▄
+ language with a █
+ focus on simplicity
+ and productivity.
+ EOC
+ end
+
+ def test_simple_dialog_scrollbar_with_moving_to_left
+ start_terminal(20, 50, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl --dialog long,scrollkey,scrollbar}, startup_message: 'Multiline REPL.')
+ write('a')
+ 6.times{ write('j') }
+ write("\C-h")
+ close
+ assert_screen(<<~'EOC')
+ Multiline REPL.
+ prompt>
+ source programming ▄
+ language with a █
+ focus on simplicity
+ and productivity.
+ EOC
+ end
+
def test_autocomplete_empty
start_terminal(20, 30, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl --autocomplete}, startup_message: 'Multiline REPL.')
write('Street')