diff options
Diffstat (limited to 'test')
-rwxr-xr-x | test/reline/yamatanooroti/multiline_repl | 13 | ||||
-rw-r--r-- | test/reline/yamatanooroti/test_rendering.rb | 19 |
2 files changed, 32 insertions, 0 deletions
diff --git a/test/reline/yamatanooroti/multiline_repl b/test/reline/yamatanooroti/multiline_repl index b21ad4bd8c..4de3f81c47 100755 --- a/test/reline/yamatanooroti/multiline_repl +++ b/test/reline/yamatanooroti/multiline_repl @@ -30,6 +30,19 @@ opt.on('--dynamic-prompt-returns-empty') { opt.on('--auto-indent') { AutoIndent.new } +opt.on('--simple-dialog') { + Reline.add_dialog_proc(:simple_dialog, lambda { + contents = <<~RUBY.split("\n") + Ruby is... + A dynamic, open source programming + language with a focus on simplicity + and productivity. It has an elegant + syntax that is natural to read and + easy to write. + RUBY + Reline::DialogRenderInfo.new(pos: cursor_pos, contents: contents) + }) +} opt.on('--complete') { Reline.completion_proc = lambda { |target, preposing = nil, postposing = nil| %w{String ScriptError SyntaxError Signal} diff --git a/test/reline/yamatanooroti/test_rendering.rb b/test/reline/yamatanooroti/test_rendering.rb index 55b122e0d8..2ae0b81e2d 100644 --- a/test/reline/yamatanooroti/test_rendering.rb +++ b/test/reline/yamatanooroti/test_rendering.rb @@ -835,6 +835,25 @@ begin EOC end + def test_simple_dialog + start_terminal(20, 50, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl --simple-dialog}, startup_message: 'Multiline REPL.') + write('a') + write('b') + write('c') + write("\C-h") + close + assert_screen(<<~'EOC') + Multiline REPL. + prompt> ab + Ruby is... + A dynamic, open source programming + language with a focus on simplicity + and productivity. It has an elegant + syntax that is natural to read and + easy to write. + EOC + end + def test_autocomplete start_terminal(20, 30, %W{ruby -I#{@pwd}/lib #{@pwd}/test/reline/yamatanooroti/multiline_repl --autocomplete}, startup_message: 'Multiline REPL.') write("Stri") |