view src/testdir/test77a.in @ 14856:c5a2fb8b221d v8.1.0440

patch 8.1.0440: remove() with a range not sufficiently tested commit https://github.com/vim/vim/commit/2bfddfc508bcc8dcee108f098eb75844a228fa44 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Sep 30 17:16:25 2018 +0200 patch 8.1.0440: remove() with a range not sufficiently tested Problem: remove() with a range not sufficiently tested. Solution: Add a test. (Dominique Pelle, closes https://github.com/vim/vim/issues/3497)
author Christian Brabandt <cb@256bit.org>
date Sun, 30 Sep 2018 17:30:06 +0200
parents 47a673b20e49
children e705ea6e855b
line wrap: on
line source

Inserts 2 million lines with consecutive integers starting from 1
(essentially, the output of GNU's seq 1 2000000), writes them to Xtest
and writes its cksum to test.out.

We need 2 million lines to trigger a call to mf_hash_grow().  If it would mess
up the lines the checksum would differ.

cksum is part of POSIX and so should be available on most Unixes.
If it isn't available then the test will be skipped.

VMS does not have CKSUM but has a built in CHECKSUM - it should be used
STARTTEST
:so small.vim
:if !has("vms")
: e! test.ok
: w! test.out
: qa!
:endif
:set fileformat=unix undolevels=-1
ggdG
:let i = 1
:while i <= 2000000 | call append(i, range(i, i + 99)) | let i += 100 | endwhile
ggdd
:w! Xtest.
:r !@test77a.com Xtest.
:s/\s/ /g
:set fileformat&
:.w! test.out
:qa!
ENDTEST