Patch 8.1.1212
Problem: Signal PWR is not tested.
Solution: Test that PWR updates the swap file. (Dominique Pelle,
closes #4312)
Files: src/testdir/test_signals.vim
*** ../vim-8.1.1211/src/testdir/test_signals.vim 2019-04-02
21:45:38.260326643 +0200
--- src/testdir/test_signals.vim 2019-04-27 17:30:53.055172109 +0200
***************
*** 4,21 ****
finish
endif
- if has('gui_running')
- " Signals only work for terminals, and won't work for GUI.
- finish
- endif
-
source shared.vim
" Test signal WINCH (window resize signal)
func Test_signal_WINCH()
! let signals = system('kill -l')
! if signals !~ '\<WINCH\>'
! " signal WINCH is not available, skip the test.
return
endif
--- 4,20 ----
finish
endif
source shared.vim
+ " Check whether a signal is available on this system.
+ func HasSignal(signal)
+ let signals = system('kill -l')
+ return signals =~# '\<' .. a:signal .. '\>'
+ endfunc
+
" Test signal WINCH (window resize signal)
func Test_signal_WINCH()
! if has('gui_running') || !HasSignal('WINCH')
return
endif
***************
*** 31,45 ****
let new_lines = &lines - 2
let new_columns = &columns - 2
! exe 'set lines=' . new_lines
! exe 'set columns=' . new_columns
call assert_equal(new_lines, &lines)
call assert_equal(new_columns, &columns)
" Send signal and wait for signal to be processed.
" 'lines' and 'columns' should have been restored
" after handing signal WINCH.
! exe 'silent !kill -s WINCH ' . getpid()
call WaitForAssert({-> assert_equal(old_lines, &lines)})
call assert_equal(old_columns, &columns)
--- 30,44 ----
let new_lines = &lines - 2
let new_columns = &columns - 2
! exe 'set lines=' .. new_lines
! exe 'set columns=' .. new_columns
call assert_equal(new_lines, &lines)
call assert_equal(new_columns, &columns)
" Send signal and wait for signal to be processed.
" 'lines' and 'columns' should have been restored
" after handing signal WINCH.
! exe 'silent !kill -s WINCH ' .. getpid()
call WaitForAssert({-> assert_equal(old_lines, &lines)})
call assert_equal(old_columns, &columns)
***************
*** 47,49 ****
--- 46,77 ----
let &t_WS = old_WS
endif
endfunc
+
+ " Test signal PWR, which should update the swap file.
+ func Test_signal_PWR()
+ if !HasSignal('PWR')
+ return
+ endif
+
+ " Set a very large 'updatetime' and 'updatecount', so that we can be sure
+ " that swap file is updated as a result of sending PWR signal, and not
+ " because of exceeding 'updatetime' or 'updatecount' when changing buffer.
+ set updatetime=100000 updatecount=100000
+ new Xtest_signal_PWR
+ let swap_name = swapname('%')
+ call setline(1, '123')
+ preserve
+ let swap_content = readfile(swap_name, 'b')
+
+ " Update the buffer and check that the swap file is not yet updated,
+ " since we set 'updatetime' and 'updatecount' to large values.
+ call setline(1, 'abc')
+ call assert_equal(swap_content, readfile(swap_name, 'b'))
+
+ " Sending PWR signal should update the swap file.
+ exe 'silent !kill -s PWR ' .. getpid()
+ call WaitForAssert({-> assert_notequal(swap_content, readfile(swap_name,
'b'))})
+
+ bwipe!
+ set updatetime& updatecount&
+ endfunc
*** ../vim-8.1.1211/src/version.c 2019-04-27 15:05:04.528816589 +0200
--- src/version.c 2019-04-27 17:31:56.794872746 +0200
***************
*** 769,770 ****
--- 769,772 ----
{ /* Add new patch number below this line */
+ /**/
+ 1212,
/**/
--
CUSTOMER: You're not fooling anyone y'know. Look, isn't there something
you can do?
DEAD PERSON: I feel happy... I feel happy.
[whop]
CUSTOMER: Ah, thanks very much.
MORTICIAN: Not at all. See you on Thursday.
CUSTOMER: Right.
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.