1" Test getting and setting file permissions.
2
3func Test_file_perm()
4  call assert_equal('', getfperm('Xtest'))
5  call assert_equal(0, setfperm('Xtest', 'r--------'))
6
7  call writefile(['one'], 'Xtest')
8  call assert_true(len(getfperm('Xtest')) == 9)
9
10  call assert_equal(1, setfperm('Xtest', 'rwx------'))
11  if has('win32')
12    call assert_equal('rw-rw-rw-', getfperm('Xtest'))
13  else
14    call assert_equal('rwx------', getfperm('Xtest'))
15  endif
16
17  call assert_equal(1, setfperm('Xtest', 'r--r--r--'))
18  call assert_equal('r--r--r--', getfperm('Xtest'))
19
20  call assert_fails("setfperm('Xtest', '---')")
21
22  call assert_equal(1, setfperm('Xtest', 'rwx------'))
23  call delete('Xtest')
24endfunc
25