comparison src/testdir/test_autocmd.vim @ 31463:db72745d328c v9.0.1064

patch 9.0.1064: code for making 'shortmess' temporarily empty is repeated Commit: https://github.com/vim/vim/commit/9aee8ec400fe617f6d82441c46a22d0cef6fa3e6 Author: Christian Brabandt <cb@256bit.org> Date: Fri Dec 16 16:41:23 2022 +0000 patch 9.0.1064: code for making 'shortmess' temporarily empty is repeated Problem: Code for making 'shortmess' temporarily empty is repeated. Solution: Add functions for making 'shortmess' empty and restoring it. (Christian Brabandt, closes #11709)
author Bram Moolenaar <Bram@vim.org>
date Fri, 16 Dec 2022 17:45:04 +0100
parents 742b7bf2fefc
children 157a4a49f924
comparison
equal deleted inserted replaced
31462:d6db0f4e24f3 31463:db72745d328c
4159 call delete('Xaaa') 4159 call delete('Xaaa')
4160 call delete('Xbbb') 4160 call delete('Xbbb')
4161 %bwipe! 4161 %bwipe!
4162 endfunc 4162 endfunc
4163 4163
4164 func SetupVimTest_shm()
4165 let g:bwe = []
4166 let g:brp = []
4167 set shortmess+=F
4168
4169 let dirname='XVimTestSHM'
4170 call mkdir(dirname, 'R')
4171 call writefile(['test'], dirname .. '/1')
4172 call writefile(['test'], dirname .. '/2')
4173 call writefile(['test'], dirname .. '/3')
4174
4175 augroup test
4176 autocmd!
4177 autocmd BufWinEnter * call add(g:bwe, $'BufWinEnter: {expand('<amatch>')}')
4178 autocmd BufReadPost * call add(g:brp, $'BufReadPost: {expand('<amatch>')}')
4179 augroup END
4180
4181 call setqflist([
4182 \ {'filename': dirname .. '/1', 'lnum': 1, 'col': 1, 'text': 'test', 'vcol': 0},
4183 \ {'filename': dirname .. '/2', 'lnum': 1, 'col': 1, 'text': 'test', 'vcol': 0},
4184 \ {'filename': dirname .. '/3', 'lnum': 1, 'col': 1, 'text': 'test', 'vcol': 0}
4185 \ ])
4186 cdo! substitute/test/TEST
4187
4188 " clean up
4189 noa enew!
4190 set shortmess&vim
4191 augroup test
4192 autocmd!
4193 augroup END
4194 augroup! test
4195 endfunc
4196
4197 func Test_autocmd_shortmess()
4198 CheckNotMSWindows
4199
4200 call SetupVimTest_shm()
4201 let output = execute(':mess')->split('\n')
4202
4203 let info = copy(output)->filter({idx, val -> val =~# '\d of 3'} )
4204 let bytes = copy(output)->filter({idx, val -> val =~# 'bytes'} )
4205
4206 " We test the following here:
4207 " BufReadPost should have been triggered 3 times, once per file
4208 " BufWinEnter should have been triggered 3 times, once per file
4209 " FileInfoMessage should have been shown 3 times, regardless of shm option
4210 " "(x of 3)" message from :cnext has been shown 3 times
4211
4212 call assert_equal(3, g:brp->len())
4213 call assert_equal(3, g:bwe->len())
4214 call assert_equal(3, info->len())
4215 call assert_equal(3, bytes->len())
4216
4217 delfunc SetupVimTest_shm
4218 endfunc
4164 4219
4165 " vim: shiftwidth=2 sts=2 expandtab 4220 " vim: shiftwidth=2 sts=2 expandtab