aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/functional/core/startup_spec.lua25
-rw-r--r--test/functional/fixtures/start/nvim-leftpad/autoload/leftpad.vim3
-rw-r--r--test/functional/fixtures/start/nvim-leftpad/lua/leftpad.lua1
3 files changed, 26 insertions, 3 deletions
diff --git a/test/functional/core/startup_spec.lua b/test/functional/core/startup_spec.lua
index 3bfae5f3d7..27793ab936 100644
--- a/test/functional/core/startup_spec.lua
+++ b/test/functional/core/startup_spec.lua
@@ -313,14 +313,33 @@ describe('startup', function()
it("handles &packpath during startup", function()
- pack_clear [[ let g:x = bar#test() ]]
+ pack_clear [[
+ let g:x = bar#test()
+ let g:y = leftpad#pad("heyya")
+ ]]
eq(-3, eval 'g:x')
+ eq(" heyya", eval 'g:y')
- pack_clear [[ lua _G.y = require'bar'.doit() ]]
- eq(9003, exec_lua [[ return _G.y ]])
+ pack_clear [[ lua _G.y = require'bar'.doit() _G.z = require'leftpad''howdy' ]]
+ eq({9003, '\thowdy'}, exec_lua [[ return { _G.y, _G.z } ]])
end)
it("handles :packadd during startup", function()
+ -- control group: opt/bonus is not availabe by default
+ pack_clear [[
+ try
+ let g:x = bonus#secret()
+ catch
+ let g:err = v:exception
+ endtry
+ ]]
+ eq('Vim(let):E117: Unknown function: bonus#secret', eval 'g:err')
+
+ pack_clear [[ lua _G.test = {pcall(function() require'bonus'.launch() end)} ]]
+ eq({false, [[[string ":lua"]:1: module 'bonus' not found:]]},
+ exec_lua [[ _G.test[2] = string.gsub(_G.test[2], '[\r\n].*', '') return _G.test ]])
+
+ -- ok, time to launch the nukes:
pack_clear [[ packadd! bonus | let g:x = bonus#secret() ]]
eq('halloj', eval 'g:x')
diff --git a/test/functional/fixtures/start/nvim-leftpad/autoload/leftpad.vim b/test/functional/fixtures/start/nvim-leftpad/autoload/leftpad.vim
new file mode 100644
index 0000000000..2f428f59e0
--- /dev/null
+++ b/test/functional/fixtures/start/nvim-leftpad/autoload/leftpad.vim
@@ -0,0 +1,3 @@
+function! leftpad#pad(str)
+ return ' '.a:str
+endfunction
diff --git a/test/functional/fixtures/start/nvim-leftpad/lua/leftpad.lua b/test/functional/fixtures/start/nvim-leftpad/lua/leftpad.lua
new file mode 100644
index 0000000000..866ed2fd30
--- /dev/null
+++ b/test/functional/fixtures/start/nvim-leftpad/lua/leftpad.lua
@@ -0,0 +1 @@
+return function (str) return '\t' .. str end