0
0
mirror of https://github.com/vim/vim.git synced 2025-10-18 07:54:29 -04:00

patch 8.0.0375: the "+ register is not tested

Problem:    The "+ register is not tested.
Solution:   Add a test using another Vim instance to change the "+ register.
            (Kazuki Kuriyama)
This commit is contained in:
Bram Moolenaar
2017-02-26 15:08:21 +01:00
parent ba748c8a84
commit 5074a0e033
2 changed files with 43 additions and 0 deletions

View File

@@ -72,6 +72,47 @@ func Test_getfontname_without_arg()
endif endif
endfunc endfunc
func Test_quoteplus()
let skipped = ''
if !g:x11_based_gui
let skipped = g:not_supported . 'quoteplus'
else
let quoteplus_saved = @+
let test_call = 'Can you hear me?'
let test_response = 'Yes, I can.'
let vim_exe = exepath(v:progpath)
let testee = 'VIMRUNTIME=' . $VIMRUNTIME . '; export VIMRUNTIME;'
\ . vim_exe . ' -f -g -u NONE -U NONE --noplugin -c ''%s'''
let cmd = 'call feedkeys("'
\ . '\"+p'
\ . ':s/' . test_call . '/' . test_response . '/\<CR>'
\ . '\"+yis'
\ . ':q!\<CR>", "tx")'
let run_vimtest = printf(testee, cmd)
" Set the quoteplus register to test_call, and another gvim will launched.
" Then, it first tries to paste the content of its own quotedplus register
" onto it. Second, it tries to substitute test_responce for the pasted
" sentence. If the sentence is identical to test_call, the substitution
" should succeed. Third, it tries to yank the result of the substitution
" to its own quoteplus register, and last it quits. When system()
" returns, the content of the quoteplus register should be identical to
" test_response if those quoteplus registers are synchronized properly
" with/through the X11 clipboard.
let @+ = test_call
call system(run_vimtest)
call assert_equal(test_response, @+)
let @+ = quoteplus_saved
endif
if !empty(skipped)
throw skipped
endif
endfunc
func Test_set_guifont() func Test_set_guifont()
let skipped = '' let skipped = ''

View File

@@ -764,6 +764,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
375,
/**/ /**/
374, 374,
/**/ /**/