diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/shell/viml_system_spec.lua | 22 | ||||
-rw-r--r-- | test/unit/helpers.lua | 24 |
2 files changed, 26 insertions, 20 deletions
diff --git a/test/functional/shell/viml_system_spec.lua b/test/functional/shell/viml_system_spec.lua index 8d212c1375..48dc518d7b 100644 --- a/test/functional/shell/viml_system_spec.lua +++ b/test/functional/shell/viml_system_spec.lua @@ -188,6 +188,28 @@ describe('systemlist()', function() end) end) + describe('handles empty lines', function() + it('in the middle', function() + eq({'line one','','line two'}, eval("systemlist('cat',['line one','','line two'])")) + end) + + it('in the beginning', function() + eq({'','line one','line two'}, eval("systemlist('cat',['','line one','line two'])")) + end) + end) + + describe('when keepempty option is', function() + it('0, ignores trailing newline', function() + eq({'aa','bb'}, eval("systemlist('cat',['aa','bb'],0)")) + eq({'aa','bb'}, eval("systemlist('cat',['aa','bb',''],0)")) + end) + + it('1, preserves trailing newline', function() + eq({'aa','bb'}, eval("systemlist('cat',['aa','bb'],1)")) + eq({'aa','bb',''}, eval("systemlist('cat',['aa','bb',''],2)")) + end) + end) + if xclip then describe("with a program that doesn't close stdout", function() it('will exit properly after passing input', function() diff --git a/test/unit/helpers.lua b/test/unit/helpers.lua index 544a53fa10..1b97a2f15a 100644 --- a/test/unit/helpers.lua +++ b/test/unit/helpers.lua @@ -139,26 +139,10 @@ local function vim_init() if vim_init_called ~= nil then return end - -- import os_unix.h for mch_early_init(), which initializes some globals - local all = cimport('./src/nvim/os_unix.h', - './src/nvim/misc1.h', - './src/nvim/eval.h', - './src/nvim/os_unix.h', - './src/nvim/option.h', - './src/nvim/ex_cmds2.h', - './src/nvim/window.h', - './src/nvim/ops.h', - './src/nvim/normal.h', - './src/nvim/mbyte.h') - all.mch_early_init() - all.mb_init() - all.eval_init() - all.init_normal_cmds() - all.win_alloc_first() - all.init_yank() - all.init_homedir() - all.set_init_1() - all.set_lang_var() + local main = cimport('./src/nvim/main.h') + local time = cimport('./src/nvim/os/time.h') + time.time_init() + main.early_init() vim_init_called = true end |