fix(source): make changing 'shellslash' change expand() result

This commit is contained in:
zeertzjq
2022-08-15 08:28:20 +08:00
parent d6a6adf708
commit 9ab9eb1220
3 changed files with 36 additions and 7 deletions

View File

@@ -13,6 +13,10 @@ local exec_lua = helpers.exec_lua
local eval = helpers.eval
local exec_capture = helpers.exec_capture
local neq = helpers.neq
local matches = helpers.matches
local iswin = helpers.iswin
local mkdir = helpers.mkdir
local rmdir = helpers.rmdir
describe(':source', function()
before_each(function()
@@ -39,6 +43,30 @@ describe(':source', function()
os.remove(test_file)
end)
it("changing 'shellslash' changes the result of expand()", function()
if not iswin() then
pending("'shellslash' only works on Windows")
return
end
mkdir('Xshellslash')
local script = [[
let g:result1 = expand('<stack>')
set shellslash
let g:result2 = expand('<stack>')
set noshellslash
let g:result3 = expand('<stack>')
]]
write_file([[Xshellslash/Xexpand.vim]], script)
meths.set_option('shellslash', false)
command([[source Xshellslash/Xexpand.vim]])
matches([[Xshellslash\Xexpand%.vim]], meths.get_var('result1'))
matches([[Xshellslash/Xexpand%.vim]], meths.get_var('result2'))
matches([[Xshellslash\Xexpand%.vim]], meths.get_var('result3'))
rmdir('Xshellslash')
end)
it('current buffer', function()
insert([[
let a = 2