aboutsummaryrefslogtreecommitdiff
path: root/test/functional/core/startup_spec.lua
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-07-14 06:46:16 +0800
committerGitHub <noreply@github.com>2023-07-14 06:46:16 +0800
commitdbb840da01c72d8a311e0c55d3248d78a64b63a4 (patch)
tree36a381283d42f6e23d552c3ed8e06b03b9fed51b /test/functional/core/startup_spec.lua
parenta3f4598226c4d01e4fbc41181a1ad21793862fe3 (diff)
downloadrneovim-dbb840da01c72d8a311e0c55d3248d78a64b63a4.tar.gz
rneovim-dbb840da01c72d8a311e0c55d3248d78a64b63a4.tar.bz2
rneovim-dbb840da01c72d8a311e0c55d3248d78a64b63a4.zip
fix(runtime): respect 'rtp' order for all runtime files (#24335)
Diffstat (limited to 'test/functional/core/startup_spec.lua')
-rw-r--r--test/functional/core/startup_spec.lua23
1 files changed, 15 insertions, 8 deletions
diff --git a/test/functional/core/startup_spec.lua b/test/functional/core/startup_spec.lua
index 3253854093..c541e32353 100644
--- a/test/functional/core/startup_spec.lua
+++ b/test/functional/core/startup_spec.lua
@@ -975,16 +975,23 @@ describe('runtime:', function()
end)
- it('loads ftdetect/*.lua', function()
+ it("loads ftdetect/*.{vim,lua} respecting 'rtp' order", function()
local ftdetect_folder = table.concat({xconfig, 'nvim', 'ftdetect'}, pathsep)
- local ftdetect_file = table.concat({ftdetect_folder , 'new-ft.lua'}, pathsep)
+ local after_ftdetect_folder = table.concat({xconfig, 'nvim', 'after', 'ftdetect'}, pathsep)
mkdir_p(ftdetect_folder)
- write_file(ftdetect_file , [[vim.g.lua_ftdetect = 1]])
-
- clear{ args_rm={'-u'}, env=xenv }
-
- eq(1, eval('g:lua_ftdetect'))
- rmdir(ftdetect_folder)
+ mkdir_p(after_ftdetect_folder)
+ finally(function()
+ rmdir(ftdetect_folder)
+ rmdir(after_ftdetect_folder)
+ end)
+ -- A .lua file is loaded after a .vim file if they only differ in extension.
+ -- All files in after/ftdetect/ are loaded after all files in ftdetect/.
+ write_file(table.concat({ftdetect_folder, 'new-ft.vim'}, pathsep), [[let g:seq ..= 'A']])
+ write_file(table.concat({ftdetect_folder, 'new-ft.lua'}, pathsep), [[vim.g.seq = vim.g.seq .. 'B']])
+ write_file(table.concat({after_ftdetect_folder, 'new-ft.vim'}, pathsep), [[let g:seq ..= 'a']])
+ write_file(table.concat({after_ftdetect_folder, 'new-ft.lua'}, pathsep), [[vim.g.seq = vim.g.seq .. 'b']])
+ clear{ args_rm={'-u'}, args = {'--cmd', 'let g:seq = ""'}, env=xenv }
+ eq('ABab', eval('g:seq'))
end)
end)