Mercurial > vim
view src/testdir/test_hide.vim @ 12248:f9de19f981a4 v8.0.1004
patch 8.0.1004: matchstrpos() without a match returns too many items
commit https://github.com/vim/vim/commit/8d9f0ef5c6a6f6d19c3d02690e1ee347a70b8452
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Aug 27 13:51:01 2017 +0200
patch 8.0.1004: matchstrpos() without a match returns too many items
Problem: Matchstrpos() without a match returns too many items.
Solution: Also remove the second item when the position is beyond the end of
the string. (Hirohito Higashi) Use an enum for the type.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 27 Aug 2017 14:00:05 +0200 |
parents | b59df2194b01 |
children | 45eca7143d7c |
line wrap: on
line source
" Tests for :hide command/modifier and 'hidden' option function SetUp() let s:save_hidden = &hidden let s:save_bufhidden = &bufhidden let s:save_autowrite = &autowrite set nohidden set bufhidden= set noautowrite endfunc function TearDown() let &hidden = s:save_hidden let &bufhidden = s:save_bufhidden let &autowrite = s:save_autowrite endfunc function Test_hide() let orig_bname = bufname('') let orig_winnr = winnr('$') new Xf1 set modified call assert_fails('edit Xf2') bwipeout! Xf1 new Xf1 set modified edit! Xf2 call assert_equal(['Xf2', 2], [bufname(''), winnr('$')]) call assert_equal([1, 0], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 bwipeout! Xf2 new Xf1 set modified " :hide as a command hide call assert_equal([orig_bname, orig_winnr], [bufname(''), winnr('$')]) call assert_equal([1, 1], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 new Xf1 set modified " :hide as a command with trailing comment hide " comment call assert_equal([orig_bname, orig_winnr], [bufname(''), winnr('$')]) call assert_equal([1, 1], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 new Xf1 set modified " :hide as a command with bar hide | new Xf2 " comment call assert_equal(['Xf2', 2], [bufname(''), winnr('$')]) call assert_equal([1, 1], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 bwipeout! Xf2 new Xf1 set modified " :hide as a modifier with trailing comment hide edit Xf2 " comment call assert_equal(['Xf2', 2], [bufname(''), winnr('$')]) call assert_equal([1, 1], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 bwipeout! Xf2 new Xf1 set modified " To check that the bar is not recognized to separate commands hide echo "one|two" call assert_equal(['Xf1', 2], [bufname(''), winnr('$')]) call assert_equal([1, 1], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 " set hidden new Xf1 set hidden set modified edit Xf2 " comment call assert_equal(['Xf2', 2], [bufname(''), winnr('$')]) call assert_equal([1, 1], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf1 bwipeout! Xf2 " set hidden bufhidden=wipe new Xf1 set bufhidden=wipe set modified hide edit! Xf2 " comment call assert_equal(['Xf2', 2], [bufname(''), winnr('$')]) call assert_equal([0, 0], [buflisted('Xf1'), bufloaded('Xf1')]) bwipeout! Xf2 endfunc " vim: shiftwidth=2 sts=2 expandtab