1" Tests for large files 2" This is only executed manually: "make test_largefile". 3" This is not run as part of "make test". 4 5func Test_largefile() 6 let fname = 'Xlarge.txt' 7 8 call delete(fname) 9 exe "e" fname 10 " Make sure that a line break is 1 byte (LF). 11 set ff=unix 12 set undolevels=-1 13 " Input 99 'A's. The line becomes 100 bytes including a line break. 14 exe "normal 99iA\<Esc>" 15 yank 16 " Put 39,999,999 times. The file becomes 4,000,000,000 bytes. 17 normal 39999999p 18 " Moving around in the file randomly. 19 normal G 20 normal 10% 21 normal 90% 22 normal 50% 23 normal gg 24 w 25 " Check if the file size is 4,000,000,000 bytes. 26 let fsize=getfsize(fname) 27 if has('num64') 28 call assert_true(fsize == 4000000000) 29 else 30 " getfsize() returns -2 if a Number is 32 bits. 31 call assert_true(fsize == -2) 32 endif 33 call delete(fname) 34endfunc 35