Patch 8.2.0134
Problem:    Some map functionality not covered by tests.
Solution:   Add tests. (Yegappan Lakshmanan, closes #5504)
Files:      src/testdir/test_maparg.vim, src/testdir/test_mapping.vim


*** ../vim-8.2.0133/src/testdir/test_maparg.vim 2019-09-01 18:54:54.000000000 
+0200
--- src/testdir/test_maparg.vim 2020-01-20 20:39:47.494304898 +0100
***************
*** 42,47 ****
--- 42,52 ----
    map abc y<S-char-114>y
    call assert_equal("yRy", maparg('abc'))
  
+   omap { w
+   let d = maparg('{', 'o', 0, 1)
+   call assert_equal(['{', 'w', 'o'], [d.lhs, d.rhs, d.mode])
+   ounmap {
+ 
    map abc <Nop>
    call assert_equal("<Nop>", maparg('abc'))
    unmap abc
***************
*** 102,104 ****
--- 107,111 ----
    execute "normal a\uf040\<Esc>"
    call assert_equal("abcd", getline(1))
  endfunction
+ 
+ " vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.2.0133/src/testdir/test_mapping.vim        2019-11-22 
20:50:37.000000000 +0100
--- src/testdir/test_mapping.vim        2020-01-20 20:39:47.494304898 +0100
***************
*** 492,494 ****
--- 492,567 ----
    call StopVimInTerminal(buf)
    call delete('XtestExprMap')
  endfunc
+ 
+ " Test for mapping errors
+ func Test_map_error()
+   call assert_fails('unmap', 'E474:')
+   call assert_fails("exe 'map ' .. repeat('a', 51) .. ' :ls'", 'E474:')
+   call assert_fails('unmap abc', 'E31:')
+   call assert_fails('unabbr abc', 'E24:')
+   call assert_equal('', maparg(''))
+   call assert_fails('echo maparg("abc", [])', 'E730:')
+ 
+   " unique map
+   map ,w /[#&!]<CR>
+   call assert_fails("map <unique> ,w /[#&!]<CR>", 'E227:')
+   " unique buffer-local map
+   call assert_fails("map <buffer> <unique> ,w /[.,;]<CR>", 'E225:')
+   unmap ,w
+ 
+   " unique abbreviation
+   abbr SP special
+   call assert_fails("abbr <unique> SP special", 'E226:')
+   " unique buffer-local map
+   call assert_fails("abbr <buffer> <unique> SP special", 'E224:')
+   unabbr SP
+ 
+   call assert_fails('mapclear abc', 'E474:')
+   call assert_fails('abclear abc', 'E474:')
+ endfunc
+ 
+ " Test for <special> key mapping
+ func Test_map_special()
+   new
+   let old_cpo = &cpo
+   set cpo+=<
+   imap <F12> Blue
+   call feedkeys("i\<F12>", "x")
+   call assert_equal("<F12>", getline(1))
+   call feedkeys("ddi<F12>", "x")
+   call assert_equal("Blue", getline(1))
+   iunmap <F12>
+   imap <special> <F12> Green
+   call feedkeys("ddi\<F12>", "x")
+   call assert_equal("Green", getline(1))
+   call feedkeys("ddi<F12>", "x")
+   call assert_equal("<F12>", getline(1))
+   iunmap <special> <F12>
+   let &cpo = old_cpo
+   %bwipe!
+ endfunc
+ 
+ " Test for hasmapto()
+ func Test_hasmapto()
+   call assert_equal(0, hasmapto('/^\k\+ ('))
+   call assert_equal(0, hasmapto('/^\k\+ (', 'n'))
+   nmap ,f /^\k\+ (<CR>
+   call assert_equal(1, hasmapto('/^\k\+ ('))
+   call assert_equal(1, hasmapto('/^\k\+ (', 'n'))
+   call assert_equal(0, hasmapto('/^\k\+ (', 'v'))
+ 
+   call assert_equal(0, hasmapto('/^\k\+ (', 'n', 1))
+ endfunc
+ 
+ " Test for command-line completion of maps
+ func Test_mapcomplete()
+   call assert_equal(['<buffer>', '<expr>', '<nowait>', '<script>',
+             \ '<silent>', '<special>', '<unique>'],
+             \ getcompletion('', 'mapping'))
+   call assert_equal([], getcompletion(',d', 'mapping'))
+ 
+   call feedkeys(":abbr! \<C-A>\<C-B>\"\<CR>", 'tx')
+   call assert_match("abbr! \x01", @:)
+ endfunc
+ 
+ " vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.2.0133/src/version.c       2020-01-20 20:22:27.290330424 +0100
--- src/version.c       2020-01-20 20:40:45.034069865 +0100
***************
*** 744,745 ****
--- 744,747 ----
  {   /* Add new patch number below this line */
+ /**/
+     134,
  /**/

-- 
OLD WOMAN: King of the WHO?
ARTHUR:    The Britons.
OLD WOMAN: Who are the Britons?
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// 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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/202001201942.00KJgED8007975%40masaka.moolenaar.net.

Raspunde prin e-mail lui