aboutsummaryrefslogtreecommitdiff
path: root/test/functional/plugin/helpers.lua
diff options
context:
space:
mode:
authorFelipe Morales <hel.sheep@gmail.com>2015-11-23 00:27:18 +0100
committerFelipe Morales <hel.sheep@gmail.com>2015-11-23 00:27:18 +0100
commit321db59ca1dc304feb3e00c10ca3e89c1de616e7 (patch)
tree825ba69b12a717faf011dc1b828438b5ea70c31d /test/functional/plugin/helpers.lua
parent1fbb56795d16783f9a97e25e3b71ab3ac2a644dc (diff)
parente773ffe8094041dba1b9b258dfa45104dc321522 (diff)
downloadrneovim-321db59ca1dc304feb3e00c10ca3e89c1de616e7.tar.gz
rneovim-321db59ca1dc304feb3e00c10ca3e89c1de616e7.tar.bz2
rneovim-321db59ca1dc304feb3e00c10ca3e89c1de616e7.zip
Merge pull request #3270 from ZyX-I/shada-support
Add plugin for editing ShaDa files
Diffstat (limited to 'test/functional/plugin/helpers.lua')
-rw-r--r--test/functional/plugin/helpers.lua41
1 files changed, 41 insertions, 0 deletions
diff --git a/test/functional/plugin/helpers.lua b/test/functional/plugin/helpers.lua
new file mode 100644
index 0000000000..9762ca314e
--- /dev/null
+++ b/test/functional/plugin/helpers.lua
@@ -0,0 +1,41 @@
+local paths = require('test.config.paths')
+
+local helpers = require('test.functional.helpers')
+local spawn, set_session, nvim_prog, merge_args =
+ helpers.spawn, helpers.set_session, helpers.nvim_prog, helpers.merge_args
+
+local additional_cmd = ''
+
+local function nvim_argv(shada_file)
+ local rtp_value = ('\'%s/runtime\''):format(
+ paths.test_source_path:gsub('\'', '\'\''))
+ local nvim_argv = {nvim_prog, '-u', 'NORC', '-i', shada_file or 'NONE', '-N',
+ '--cmd', 'set shortmess+=I background=light noswapfile',
+ '--cmd', 'let &runtimepath=' .. rtp_value,
+ '--cmd', additional_cmd,
+ '--embed'}
+ if helpers.prepend_argv then
+ return merge_args(helpers.prepend_argv, nvim_argv)
+ else
+ return nvim_argv
+ end
+end
+
+local session = nil
+
+local reset = function(...)
+ if session then
+ session:exit(0)
+ end
+ session = spawn(nvim_argv(...))
+ set_session(session)
+end
+
+local set_additional_cmd = function(s)
+ additional_cmd = s
+end
+
+return {
+ reset=reset,
+ set_additional_cmd=set_additional_cmd,
+}