From: Bram Moolenaar Date: Sun, 26 Feb 2017 14:08:21 +0000 (+0100) Subject: patch 8.0.0375: the "+ register is not tested X-Git-Tag: v8.0.0375 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5074a0e0333eaa6a9f697eb765124ca0e244c89b;p=vim 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) --- diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim index d9430747d..77e4f2e9a 100644 --- a/src/testdir/test_gui.vim +++ b/src/testdir/test_gui.vim @@ -72,6 +72,47 @@ func Test_getfontname_without_arg() endif 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 . '/\' + \ . '\"+yis' + \ . ':q!\", "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() let skipped = '' diff --git a/src/version.c b/src/version.c index b96daff1c..58ece754d 100644 --- a/src/version.c +++ b/src/version.c @@ -764,6 +764,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 375, /**/ 374, /**/