Files
neovim/test/functional/core/path_spec.lua
Ignas Anikevicius 2b133101cf win: vim_FullName(): force backslashes #7287
- Replace obvious cases of '/' literal with PATHSEP. (There are still
  some remaining cases that need closer inspection.)
- Fixup tests: ui/screen_basic

closes #7117
ref https://github.com/neovim/neovim/issues/2471#issuecomment-271193714
2017-10-02 00:48:30 +02:00

62 lines
1.9 KiB
Lua

local helpers = require('test.functional.helpers')(after_each)
local clear = helpers.clear
local eq = helpers.eq
local eval = helpers.eval
local get_pathsep = helpers.get_pathsep
local command = helpers.command
describe("'%:p' expanding", function()
local pathsep
local targetdir
local expected_path
local function get_full_path()
return eval('expand("%:p")')
end
local function join_path(...)
return table.concat({...}, pathsep)
end
before_each(function()
clear()
pathsep = get_pathsep()
targetdir = join_path('test', 'functional', 'fixtures')
clear(join_path(targetdir, 'tty-test.c'))
expected_path = get_full_path()
end)
it('given a relative path with current directory in the middle #7117', function()
clear(join_path(targetdir, '.', 'tty-test.c'))
eq(expected_path, get_full_path())
end)
it('given a relative path with current directory #7117', function()
clear(join_path('.', targetdir, 'tty-test.c'))
eq(expected_path, get_full_path())
end)
it('given a relative path with current directory to a file when changing directory #7117', function()
clear(join_path('.', targetdir, 'tty-test.c'))
command('cd test')
eq(expected_path, get_full_path())
end)
it('given a relative path with directory up the tree to a file #7117', function()
clear(join_path(targetdir, '..', 'fixtures', 'tty-test.c'))
eq(expected_path, get_full_path())
end)
it('given a different starting directory and a relative path with directory up the tree #7117', function()
command('cd test')
command('e ' .. join_path('..', targetdir, 'tty-test.c'))
eq(expected_path, get_full_path())
end)
it('given a different starting directory and a relative path with current directory and up the tree #7117', function()
command('cd test')
command('e ' .. join_path('.', '..', targetdir, 'tty-test.c'))
eq(expected_path, get_full_path())
end)
end)