Only temporarily replace TMPDIR if it's defined to be an empty string

This commit is contained in:
w0rp
2018-07-16 08:45:55 +01:00
parent 6e1a5d4189
commit fcd62342d5
2 changed files with 24 additions and 6 deletions

View File

@@ -1,13 +1,32 @@
Before:
Save $TMPDIR
let g:exists = exists('$TMPDIR')
let g:old_value = $TMPDIR
After:
Restore
if g:exists
let $TMPDIR = g:old_value
else
silent! unlet! $TMPDIR
endif
Execute(ale#util#Tempname should create files in /tmp if $TMPDIR isn't set):
unlet! g:exists
unlet! g:old_value
Execute(ale#util#Tempname shouldn't set $TMPDIR to an empty string if it isn't set):
" You can't run this test twice on old Vim versions.
if has('unix')
Assert ale#util#Tempname() =~# '^/tmp'
Assert !exists('$TMPDIR'), '$TMPDIR exists where it shouldn''t'
endif
Execute(ale#util#Tempname shouldn't replace $TMPDIR and reset them to an empty string.):
if has('unix')
let $TMPDIR = ''
Assert ale#util#Tempname() =~# '^/tmp'
" We should unlet the environment variable again.
if !has('nvim')
Assert exists('$TMPDIR'), '$TMPDIR doesn''t exist where it should'
endif
AssertEqual '', $TMPDIR
endif