aboutsummaryrefslogtreecommitdiff
path: root/test/functional/normal/K_spec.lua
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2015-09-23 00:28:32 -0400
committerJustin M. Keyes <justinkz@gmail.com>2015-09-23 00:28:32 -0400
commitba6c7a6f5b45ce5d79e6dc4838a967b2299b524c (patch)
tree9745e262a75e94ca8e363d0f14d5369ff0d5cbc3 /test/functional/normal/K_spec.lua
parent1ba081a6735e74446d5e9e05d0fb0bf9cca31f63 (diff)
parent2169721b94f1f8adf490a39380ed3f16d824d359 (diff)
downloadrneovim-ba6c7a6f5b45ce5d79e6dc4838a967b2299b524c.tar.gz
rneovim-ba6c7a6f5b45ce5d79e6dc4838a967b2299b524c.tar.bz2
rneovim-ba6c7a6f5b45ce5d79e6dc4838a967b2299b524c.zip
Merge pull request #1878 from justinmk/man.vim
use :Man instead of `man` for K
Diffstat (limited to 'test/functional/normal/K_spec.lua')
-rw-r--r--test/functional/normal/K_spec.lua39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/functional/normal/K_spec.lua b/test/functional/normal/K_spec.lua
new file mode 100644
index 0000000000..dbda6dcb93
--- /dev/null
+++ b/test/functional/normal/K_spec.lua
@@ -0,0 +1,39 @@
+local helpers = require('test.functional.helpers')
+local execute, eq, clear, eval, feed, ok =
+ helpers.execute, helpers.eq, helpers.clear, helpers.eval,
+ helpers.feed, helpers.ok
+
+describe('K', function()
+ local test_file = 'K_spec_out'
+ before_each(function()
+ clear()
+ os.remove(test_file)
+ end)
+ after_each(function()
+ os.remove(test_file)
+ end)
+
+ it("invokes colon-prefixed 'keywordprg' as Vim command", function()
+ helpers.source([[
+ let @a='fnord'
+ set keywordprg=:put]])
+
+ -- K on the text "a" resolves to `:put a`.
+ feed('ia<ESC>K')
+ helpers.expect([[
+ a
+ fnord]])
+ end)
+
+ it("invokes non-prefixed 'keywordprg' as shell command", function()
+ helpers.source([[
+ let @a='fnord'
+ set keywordprg=echo\ fnord\ >>]])
+
+ -- K on the text "K_spec_out" resolves to `!echo fnord >> K_spec_out`.
+ feed('i'..test_file..'<ESC>K')
+ feed('<CR>') -- Press ENTER
+ eq({'fnord'}, eval("readfile('"..test_file.."')"))
+ end)
+
+end)