Mercurial > vim
view src/testdir/test_unlet.vim @ 13923:e4d5726e1678 v8.0.1832
patch 8.0.1832: cannot use :unlet for an environment variable
commit https://github.com/vim/vim/commit/137374fd6538cf9dee0cb22907728d8fdecb5832
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun May 13 15:59:50 2018 +0200
patch 8.0.1832: cannot use :unlet for an environment variable
Problem: Cannot use :unlet for an environment variable.
Solution: Make it work. Use unsetenv() if available. (Ken Takata,
closes #2855)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 13 May 2018 16:00:07 +0200 |
parents | 8bff367672a4 |
children | a94bc6a7b29e |
line wrap: on
line source
" Tests for :unlet func Test_read_only() " these caused a crash call assert_fails('unlet count', 'E795:') call assert_fails('unlet errmsg', 'E795:') endfunc func Test_existing() let does_exist = 1 call assert_true(exists('does_exist')) unlet does_exist call assert_false(exists('does_exist')) endfunc func Test_not_existing() unlet! does_not_exist call assert_fails('unlet does_not_exist', 'E108:') endfunc func Test_unlet_fails() call assert_fails('unlet v:["count"]', 'E46:') endfunc func Test_unlet_env() let envcmd = has('win32') ? 'set' : 'env' let $FOOBAR = 'test' let found = 0 for kv in split(system(envcmd), "\r*\n") if kv == 'FOOBAR=test' let found = 1 endif endfor call assert_equal(1, found) unlet $FOOBAR let found = 0 for kv in split(system(envcmd), "\r*\n") if kv == 'FOOBAR=test' let found = 1 endif endfor call assert_equal(0, found) unlet $MUST_NOT_BE_AN_ERROR endfunc