aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/output_spec.lua
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2016-07-14 22:11:49 -0400
committerJustin M. Keyes <justinkz@gmail.com>2016-07-14 23:28:23 -0400
commited3b3aa9cd3010c5bbfbb39cf14aceaecc673b85 (patch)
treeb47ffdd079e9013d2dca1fec6408e23fa4e722bd /test/functional/ui/output_spec.lua
parentae9cb1fe07d34289ebe4a929bfca8a07aab85b9f (diff)
downloadrneovim-ed3b3aa9cd3010c5bbfbb39cf14aceaecc673b85.tar.gz
rneovim-ed3b3aa9cd3010c5bbfbb39cf14aceaecc673b85.tar.bz2
rneovim-ed3b3aa9cd3010c5bbfbb39cf14aceaecc673b85.zip
test: output_spec
Reference: https://github.com/neovim/neovim/issues/3772#issuecomment-162334005
Diffstat (limited to 'test/functional/ui/output_spec.lua')
-rw-r--r--test/functional/ui/output_spec.lua39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/functional/ui/output_spec.lua b/test/functional/ui/output_spec.lua
new file mode 100644
index 0000000000..c7c8986527
--- /dev/null
+++ b/test/functional/ui/output_spec.lua
@@ -0,0 +1,39 @@
+local session = require('test.functional.helpers')(after_each)
+local child_session = require('test.functional.terminal.helpers')
+
+describe("shell command :!", function()
+ local screen
+ before_each(function()
+ session.clear()
+ screen = child_session.screen_setup(0, '["'..session.nvim_prog..
+ '", "-u", "NONE", "-i", "NONE", "--cmd", "set noswapfile"]')
+ screen:expect([[
+ {1: } |
+ ~ |
+ ~ |
+ ~ |
+ [No Name] |
+ |
+ -- TERMINAL -- |
+ ]])
+ end)
+
+ after_each(function()
+ screen:detach()
+ end)
+
+ it("displays output even without LF/EOF. #4646 #4569 #3772", function()
+ -- NOTE: We use a child nvim (within a :term buffer)
+ -- to avoid triggering a UI flush.
+ child_session.feed_data(":!printf foo; sleep 200\n")
+ screen:expect([[
+ ~ |
+ ~ |
+ [No Name] |
+ :!printf foo; sleep 200 |
+ |
+ foo |
+ -- TERMINAL -- |
+ ]])
+ end)
+end)