blob: ce2bfe72bc444aa8cf76de9366a4058113582914 [file] [log] [blame]
Bram Moolenaarb782ba42018-08-07 21:39:28 +02001" Tests for the backup function
2
3func Test_backup()
Bram Moolenaarefe03732018-08-09 22:26:38 +02004 set backup backupdir=. backupskip=
Bram Moolenaarb782ba42018-08-07 21:39:28 +02005 new
6 call setline(1, ['line1', 'line2'])
7 :f Xbackup.txt
8 :w! Xbackup.txt
9 " backup file is only created after
10 " writing a second time (before overwriting)
11 :w! Xbackup.txt
12 let l = readfile('Xbackup.txt~')
13 call assert_equal(['line1', 'line2'], l)
14 bw!
Bram Moolenaarefe03732018-08-09 22:26:38 +020015 set backup&vim backupdir&vim backupskip&vim
Bram Moolenaarb782ba42018-08-07 21:39:28 +020016 call delete('Xbackup.txt')
17 call delete('Xbackup.txt~')
18endfunc
19
20func Test_backup2()
Bram Moolenaarefe03732018-08-09 22:26:38 +020021 set backup backupdir=.// backupskip=
Bram Moolenaarb782ba42018-08-07 21:39:28 +020022 new
23 call setline(1, ['line1', 'line2', 'line3'])
24 :f Xbackup.txt
25 :w! Xbackup.txt
26 " backup file is only created after
27 " writing a second time (before overwriting)
28 :w! Xbackup.txt
29 sp *Xbackup.txt~
30 call assert_equal(['line1', 'line2', 'line3'], getline(1,'$'))
31 let f=expand('%')
Bram Moolenaarf8f88f82018-08-08 11:02:32 +020032 call assert_match('%testdir%Xbackup.txt\~', f)
Bram Moolenaarb782ba42018-08-07 21:39:28 +020033 bw!
34 bw!
35 call delete('Xbackup.txt')
36 call delete(f)
Bram Moolenaarefe03732018-08-09 22:26:38 +020037 set backup&vim backupdir&vim backupskip&vim
Bram Moolenaarb782ba42018-08-07 21:39:28 +020038endfunc
39
40func Test_backup2_backupcopy()
Bram Moolenaarefe03732018-08-09 22:26:38 +020041 set backup backupdir=.// backupcopy=yes backupskip=
Bram Moolenaarb782ba42018-08-07 21:39:28 +020042 new
43 call setline(1, ['line1', 'line2', 'line3'])
44 :f Xbackup.txt
45 :w! Xbackup.txt
46 " backup file is only created after
47 " writing a second time (before overwriting)
48 :w! Xbackup.txt
49 sp *Xbackup.txt~
50 call assert_equal(['line1', 'line2', 'line3'], getline(1,'$'))
51 let f=expand('%')
Bram Moolenaarf8f88f82018-08-08 11:02:32 +020052 call assert_match('%testdir%Xbackup.txt\~', f)
Bram Moolenaarb782ba42018-08-07 21:39:28 +020053 bw!
54 bw!
55 call delete('Xbackup.txt')
56 call delete(f)
Bram Moolenaarefe03732018-08-09 22:26:38 +020057 set backup&vim backupdir&vim backupcopy&vim backupskip&vim
Bram Moolenaarb782ba42018-08-07 21:39:28 +020058endfunc