To: vim_dev@googlegroups.com Subject: Patch 8.2.1951 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.1951 (after 8.2.1949) Problem: Test for list and dict fails. Solution: Adjust for using an empty list/dict for a null one. Files: src/testdir/test_listdict.vim, src/testdir/test_python2.vim, src/testdir/test_python3.vim *** ../vim-8.2.1950/src/testdir/test_listdict.vim 2020-11-03 18:20:15.422456327 +0100 --- src/testdir/test_listdict.vim 2020-11-04 12:15:24.342225688 +0100 *************** *** 1000,1006 **** " Test for a null list func Test_null_list() let l = test_null_list() ! call assert_equal(0, join(l)) call assert_equal(0, len(l)) call assert_equal(1, empty(l)) call assert_fails('let s = join([1, 2], [])', 'E730:') --- 1000,1007 ---- " Test for a null list func Test_null_list() let l = test_null_list() ! call assert_equal(0, join(test_null_list())) ! call assert_equal('', join(l)) call assert_equal(0, len(l)) call assert_equal(1, empty(l)) call assert_fails('let s = join([1, 2], [])', 'E730:') *************** *** 1008,1015 **** call assert_equal([], l[:2]) call assert_true([] == l) call assert_equal('[]', string(l)) ! call assert_equal(0, sort(l)) ! call assert_equal(0, uniq(l)) let k = [] + l call assert_equal([], k) let k = l + [] --- 1009,1018 ---- call assert_equal([], l[:2]) call assert_true([] == l) call assert_equal('[]', string(l)) ! call assert_equal(0, sort(test_null_list())) ! call assert_equal([], sort(l)) ! call assert_equal(0, uniq(test_null_list())) ! call assert_equal([], uniq(l)) let k = [] + l call assert_equal([], k) let k = l + [] *************** *** 1019,1033 **** call assert_equal([], deepcopy(l)) call assert_equal(5, get(l, 2, 5)) call assert_equal(-1, index(l, 2, 5)) ! call assert_equal(0, insert(l, 2, -1)) call assert_equal(0, min(l)) call assert_equal(0, max(l)) ! call assert_equal(0, remove(l, 0, 2)) call assert_equal([], repeat(l, 2)) ! call assert_equal(0, reverse(l)) ! call assert_equal(0, sort(l)) call assert_equal('[]', string(l)) ! call assert_equal(0, extend(l, l, 0)) lockvar l call assert_equal(1, islocked('l')) unlockvar l --- 1022,1041 ---- call assert_equal([], deepcopy(l)) call assert_equal(5, get(l, 2, 5)) call assert_equal(-1, index(l, 2, 5)) ! call assert_equal(0, insert(test_null_list(), 2, -1)) ! call assert_fails('call insert(l, 2, -1)', 'E684:') call assert_equal(0, min(l)) call assert_equal(0, max(l)) ! call assert_equal(0, remove(test_null_list(), 0, 2)) ! call assert_fails('call remove(l, 0, 2)', 'E684:') call assert_equal([], repeat(l, 2)) ! call assert_equal(0, reverse(test_null_list())) ! call assert_equal([], reverse(l)) ! call assert_equal(0, sort(test_null_list())) ! call assert_equal([], sort(l)) call assert_equal('[]', string(l)) ! call assert_fails('call extend(test_null_list(), test_null_list())', 'E1134:') ! call assert_equal([], extend(l, l, 0)) lockvar l call assert_equal(1, islocked('l')) unlockvar l *************** *** 1040,1051 **** call assert_equal({}, d) call assert_equal(0, len(d)) call assert_equal(1, empty(d)) ! call assert_equal(0, items(d)) ! call assert_equal(0, keys(d)) ! call assert_equal(0, values(d)) call assert_false(has_key(d, 'k')) call assert_equal('{}', string(d)) ! call assert_fails('let x = d[10]') call assert_equal({}, {}) call assert_equal(0, len(copy(d))) call assert_equal(0, count(d, 'k')) --- 1048,1062 ---- call assert_equal({}, d) call assert_equal(0, len(d)) call assert_equal(1, empty(d)) ! call assert_equal(0, items(test_null_dict())) ! call assert_equal([], items(d)) ! call assert_equal(0, keys(test_null_dict())) ! call assert_equal([], keys(d)) ! call assert_equal(0, values(test_null_dict())) ! call assert_equal([], values(d)) call assert_false(has_key(d, 'k')) call assert_equal('{}', string(d)) ! call assert_fails('let x = d[10]', 'E716:') call assert_equal({}, {}) call assert_equal(0, len(copy(d))) call assert_equal(0, count(d, 'k')) *************** *** 1053,1061 **** call assert_equal(20, get(d, 'k', 20)) call assert_equal(0, min(d)) call assert_equal(0, max(d)) ! call assert_equal(0, remove(d, 'k')) call assert_equal('{}', string(d)) ! call assert_equal(0, extend(d, d, 0)) lockvar d call assert_equal(1, islocked('d')) unlockvar d --- 1064,1074 ---- call assert_equal(20, get(d, 'k', 20)) call assert_equal(0, min(d)) call assert_equal(0, max(d)) ! call assert_equal(0, remove(test_null_dict(), 'k')) ! call assert_fails("call remove(d, 'k')", 'E716:') call assert_equal('{}', string(d)) ! call assert_fails('call extend(test_null_dict(), test_null_dict())', 'E1133:') ! call assert_equal({}, extend(d, d, 'keep')) lockvar d call assert_equal(1, islocked('d')) unlockvar d *** ../vim-8.2.1950/src/testdir/test_python2.vim 2020-08-31 21:30:28.994020232 +0200 --- src/testdir/test_python2.vim 2020-11-04 12:20:43.597315667 +0100 *************** *** 353,364 **** call AssertException(["py t = vim.eval('[test_null_list()]')"], \ 'Vim(python):SystemError: error return without exception set') ! " Try to bind a null List variable let cmds =<< trim END let l = test_null_list() py ll = vim.bindeval('l') END ! call AssertException(cmds, 'Vim(python):SystemError: error return without exception set') let l = [] py l = vim.bindeval('l') --- 353,364 ---- call AssertException(["py t = vim.eval('[test_null_list()]')"], \ 'Vim(python):SystemError: error return without exception set') ! " Try to bind a null List variable (works because an empty list is used) let cmds =<< trim END let l = test_null_list() py ll = vim.bindeval('l') END ! call AssertException(cmds, '') let l = [] py l = vim.bindeval('l') *** ../vim-8.2.1950/src/testdir/test_python3.vim 2020-10-27 19:59:06.762494592 +0100 --- src/testdir/test_python3.vim 2020-11-04 12:22:11.117072452 +0100 *************** *** 545,557 **** call AssertException(["py3 t = vim.eval('[test_null_list()]')"], \ 'Vim(py3):SystemError: returned NULL without setting an error') ! " Try to bind a null List variable let cmds =<< trim END let l = test_null_list() py3 ll = vim.bindeval('l') END ! call AssertException(cmds, ! \ 'Vim(py3):SystemError: returned NULL without setting an error') let l = [] py3 l = vim.bindeval('l') --- 545,556 ---- call AssertException(["py3 t = vim.eval('[test_null_list()]')"], \ 'Vim(py3):SystemError: returned NULL without setting an error') ! " Try to bind a null List variable (works because an empty list is used) let cmds =<< trim END let l = test_null_list() py3 ll = vim.bindeval('l') END ! call AssertException(cmds, '') let l = [] py3 l = vim.bindeval('l') *** ../vim-8.2.1950/src/version.c 2020-11-04 12:00:46.656717337 +0100 --- src/version.c 2020-11-04 12:07:35.015684953 +0100 *************** *** 752,753 **** --- 752,755 ---- { /* Add new patch number below this line */ + /**/ + 1951, /**/ -- hundred-and-one symptoms of being an internet addict: 192. Your boss asks you to "go fer" coffee and you come up with 235 FTP sites. /// Bram Moolenaar -- Bram@Moolenaar.net -- 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 ///