Mercurial > vim
view src/testdir/test_stat.vim @ 10618:4ee16e5e2e26 v8.0.0198
patch 8.0.0198: some syntax arguments take effect even after "if 0"
commit https://github.com/vim/vim/commit/de318c5c35ed0d65fd2a07196cb8acd5ee6d9bf8
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jan 17 16:27:10 2017 +0100
patch 8.0.0198: some syntax arguments take effect even after "if 0"
Problem: Some syntax arguments take effect even after "if 0". (Taylor
Venable)
Solution: Properly skip the syntax statements. Make "syn case" and "syn
conceal" report the current state. Fix that "syn clear" didn't
reset the conceal flag. Add tests for :syntax skipping properly.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 17 Jan 2017 16:30:05 +0100 |
parents | f094d4085014 |
children | 750779134e67 |
line wrap: on
line source
" Tests for stat functions and checktime func Test_existent_file() let fname='Xtest.tmp' let ts=localtime() sleep 1 let fl=['Hello World!'] call writefile(fl, fname) let tf=getftime(fname) sleep 1 let te=localtime() call assert_true(ts <= tf && tf <= te) call assert_equal(strlen(fl[0] . "\n"), getfsize(fname)) call assert_equal('file', getftype(fname)) call assert_equal('rw-', getfperm(fname)[0:2]) endfunc func Test_existent_directory() let dname='.' call assert_equal(0, getfsize(dname)) call assert_equal('dir', getftype(dname)) call assert_equal('rwx', getfperm(dname)[0:2]) endfunc func Test_checktime() let fname='Xtest.tmp' let fl=['Hello World!'] call writefile(fl, fname) set autoread exec 'e' fname sleep 2 let fl=readfile(fname) let fl[0] .= ' - checktime' call writefile(fl, fname) checktime call assert_equal(fl[0], getline(1)) endfunc func Test_nonexistent_file() let fname='Xtest.tmp' call delete(fname) call assert_equal(-1, getftime(fname)) call assert_equal(-1, getfsize(fname)) call assert_equal('', getftype(fname)) call assert_equal('', getfperm(fname)) endfunc func Test_win32_symlink_dir() " On Windows, non-admin users cannot create symlinks. " So we use an existing symlink for this test. if has('win32') " Check if 'C:\Users\All Users' is a symlink to a directory. let res=system('dir C:\Users /a') if match(res, '\C<SYMLINKD> *All Users') >= 0 " Get the filetype of the symlink. call assert_equal('dir', getftype('C:\Users\All Users')) endif endif endfunc