comparison src/testdir/test_functions.vim @ 16831:f42aa3d90b12 v8.1.1417

patch 8.1.1417: MS-Windows: resolve() does not resolve all components of path commit https://github.com/vim/vim/commit/1bbebab5255b5300d727c9b3f1b308205847dafd Author: Bram Moolenaar <Bram@vim.org> Date: Wed May 29 20:36:54 2019 +0200 patch 8.1.1417: MS-Windows: resolve() does not resolve all components of path Problem: MS-Windows: resolve() does not resolve all components of the path. (David Briscoe) Solution: Do not bail out for a reparse point. (Yasuhiro Matsumoto, closes #4211, closes #4447)
author Bram Moolenaar <Bram@vim.org>
date Wed, 29 May 2019 20:45:05 +0200
parents e2d8d83e6721
children efd36a9052cc
comparison
equal deleted inserted replaced
16830:20191617fa3f 16831:f42aa3d90b12
236 endfunc 236 endfunc
237 237
238 func s:normalize_fname(fname) 238 func s:normalize_fname(fname)
239 let ret = substitute(a:fname, '\', '/', 'g') 239 let ret = substitute(a:fname, '\', '/', 'g')
240 let ret = substitute(ret, '//', '/', 'g') 240 let ret = substitute(ret, '//', '/', 'g')
241 let ret = tolower(ret) 241 return tolower(ret)
242 endfunc 242 endfunc
243 243
244 func Test_resolve_win32() 244 func Test_resolve_win32()
245 if !has('win32') 245 if !has('win32')
246 return 246 return
328 bw! 328 bw!
329 else 329 else
330 echomsg 'skipped test for buffer name' 330 echomsg 'skipped test for buffer name'
331 endif 331 endif
332 call delete('Xfile') 332 call delete('Xfile')
333
334 " test for reparse point
335 call mkdir('Xdir')
336 silent !mklink /D Xdirlink Xdir
337 if !v:shell_error
338 w Xdir/text.txt
339 call assert_equal(s:normalize_fname(getcwd() . '\Xdir\text.txt'), s:normalize_fname(resolve('Xdirlink\text.txt')))
340 call assert_equal(s:normalize_fname(getcwd() . '\Xdir'), s:normalize_fname(resolve('Xdirlink')))
341 else
342 echomsg 'skipped test for reparse point'
343 endif
344
345 call delete('Xdir', 'rf')
333 endfunc 346 endfunc
334 347
335 func Test_simplify() 348 func Test_simplify()
336 call assert_equal('', simplify('')) 349 call assert_equal('', simplify(''))
337 call assert_equal('/', simplify('/')) 350 call assert_equal('/', simplify('/'))