18767f52fSBram Moolenaar" Tests for large files 28767f52fSBram Moolenaar" This is only executed manually: "make test_largefile". 38767f52fSBram Moolenaar" This is not run as part of "make test". 48767f52fSBram Moolenaar 58767f52fSBram Moolenaarfunc Test_largefile() 68767f52fSBram Moolenaar let fname = 'Xlarge.txt' 78767f52fSBram Moolenaar 88767f52fSBram Moolenaar call delete(fname) 98767f52fSBram Moolenaar exe "e" fname 108767f52fSBram Moolenaar " Make sure that a line break is 1 byte (LF). 118767f52fSBram Moolenaar set ff=unix 128767f52fSBram Moolenaar set undolevels=-1 138767f52fSBram Moolenaar " Input 99 'A's. The line becomes 100 bytes including a line break. 148767f52fSBram Moolenaar exe "normal 99iA\<Esc>" 158767f52fSBram Moolenaar yank 168767f52fSBram Moolenaar " Put 39,999,999 times. The file becomes 4,000,000,000 bytes. 178767f52fSBram Moolenaar normal 39999999p 188767f52fSBram Moolenaar " Moving around in the file randomly. 198767f52fSBram Moolenaar normal G 208767f52fSBram Moolenaar normal 10% 218767f52fSBram Moolenaar normal 90% 228767f52fSBram Moolenaar normal 50% 238767f52fSBram Moolenaar normal gg 248767f52fSBram Moolenaar w 25c5af40aeSBram Moolenaar " Check if the file size is 4,000,000,000 bytes. 268767f52fSBram Moolenaar let fsize=getfsize(fname) 27c5af40aeSBram Moolenaar call assert_true(fsize == 4000000000) 28c5af40aeSBram Moolenaar call delete(fname) 298767f52fSBram Moolenaarendfunc 30*6d91bcb4SBram Moolenaar 31*6d91bcb4SBram Moolenaar" vim: shiftwidth=2 sts=2 expandtab 32