1
1
" Tests for stat functions and checktime
2
2
3
3
func Test_existent_file ()
4
- let fname= ' Xtest.tmp'
4
+ let fname = ' Xtest.tmp'
5
5
6
- let ts = localtime ()
7
- sleep 1
8
- let fl= [' Hello World!' ]
6
+ let ts = localtime ()
7
+ let fl = [' Hello World!' ]
9
8
call writefile (fl, fname)
10
- let tf = getftime (fname)
11
- sleep 1
12
- let te = localtime ()
9
+ let tf = getftime (fname)
10
+ let te = localtime ()
13
11
14
12
call assert_true (ts <= tf && tf <= te )
15
13
call assert_equal (strlen (fl[0 ] . " \n " ), getfsize (fname))
16
14
call assert_equal (' file' , getftype (fname))
17
15
call assert_equal (' rw-' , getfperm (fname)[0 :2 ])
16
+
17
+ call delete (fname)
18
18
endfunc
19
19
20
20
func Test_existent_directory ()
21
- let dname= ' .'
21
+ let dname = ' .'
22
22
23
23
call assert_equal (0 , getfsize (dname))
24
24
call assert_equal (' dir' , getftype (dname))
25
25
call assert_equal (' rwx' , getfperm (dname)[0 :2 ])
26
26
endfunc
27
27
28
28
func Test_checktime ()
29
- let fname= ' Xtest.tmp'
29
+ let fname = ' Xtest.tmp'
30
30
31
- let fl= [' Hello World!' ]
31
+ let fl = [' Hello World!' ]
32
32
call writefile (fl, fname)
33
33
set autoread
34
34
exec ' e' fname
35
- sleep 2
36
- let fl= readfile (fname)
35
+ " FAT has a granularity of 2 seconds, otherwise it's usually 1 second
36
+ if has (' win32' )
37
+ sleep 2
38
+ else
39
+ sleep 1
40
+ endif
41
+ let fl = readfile (fname)
37
42
let fl[0 ] .= ' - checktime'
38
43
call writefile (fl, fname)
39
44
checktime
40
45
call assert_equal (fl[0 ], getline (1 ))
46
+
47
+ call delete (fname)
41
48
endfunc
42
49
43
50
func Test_nonexistent_file ()
44
- let fname= ' Xtest.tmp'
51
+ let fname = ' Xtest.tmp'
45
52
46
53
call delete (fname)
47
54
call assert_equal (-1 , getftime (fname))
@@ -55,7 +62,7 @@ func Test_win32_symlink_dir()
55
62
" So we use an existing symlink for this test.
56
63
if has (' win32' )
57
64
" Check if 'C:\Users\All Users' is a symlink to a directory.
58
- let res = system (' dir C:\Users /a' )
65
+ let res = system (' dir C:\Users /a' )
59
66
if match (res , ' \C<SYMLINKD> *All Users' ) >= 0
60
67
" Get the filetype of the symlink.
61
68
call assert_equal (' dir' , getftype (' C:\Users\All Users' ))
0 commit comments