diff --git a/7.3.1173 b/7.3.1173 new file mode 100644 index 0000000..fce4e87 --- /dev/null +++ b/7.3.1173 @@ -0,0 +1,1405 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.1173 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.1173 +Problem: Python 2 tests don't have the same output everywhere. +Solution: Make the Python 2 tests more portable. (ZyX) +Files: src/testdir/test86.in, src/testdir/test86.ok + + +*** ../vim-7.3.1172/src/testdir/test86.in 2013-06-12 14:20:15.000000000 +0200 +--- src/testdir/test86.in 2013-06-12 14:21:28.000000000 +0200 +*************** +*** 45,53 **** + dk = d.keys() + dv = d.values() + di = d.items() +! dk.sort(key=repr) +! dv.sort(key=repr) +! di.sort(key=repr) + EOF + :$put =pyeval('d[''f''](self={})') + :$put =pyeval('repr(dk)') +--- 45,54 ---- + dk = d.keys() + dv = d.values() + di = d.items() +! cmpfun = lambda a, b: cmp(repr(a), repr(b)) +! dk.sort(cmpfun) +! dv.sort(cmpfun) +! di.sort(cmpfun) + EOF + :$put =pyeval('d[''f''](self={})') + :$put =pyeval('repr(dk)') +*************** +*** 813,819 **** + try: + exec(expr, g, l) + except: +! cb.append(expr + ':' + repr(sys.exc_info()[:2])) + else: + cb.append(expr + ':NOT FAILED') + d = vim.Dictionary() +--- 814,830 ---- + try: + exec(expr, g, l) + except: +! ei = sys.exc_info() +! msg = sys.exc_info()[0].__name__ + ':' + repr(sys.exc_info()[1].args) +! msg = msg.replace('TypeError:(\'argument 1 ', 'TypeError:(\'') +! if expr.find('None') > -1: +! msg = msg.replace('TypeError:(\'iteration over non-sequence\',)', +! 'TypeError:("\'NoneType\' object is not iterable",)') +! if expr == 'fd(self=[])': +! # HACK: PyMapping_Check changed meaning +! msg = msg.replace('AttributeError:(\'keys\',)', +! 'TypeError:(\'unable to convert object to vim dictionary\',)') +! cb.append(expr + ':' + msg) + else: + cb.append(expr + ':NOT FAILED') + d = vim.Dictionary() +*** ../vim-7.3.1172/src/testdir/test86.ok 2013-06-12 14:20:15.000000000 +0200 +--- src/testdir/test86.ok 2013-06-12 14:21:28.000000000 +0200 +*************** +*** 437,1094 **** + test86.in + > Output + >> OutputSetattr +! del sys.stdout.softspace:(, AttributeError("can't delete OutputObject attributes",)) +! sys.stdout.softspace = []:(, TypeError('softspace must be an integer',)) +! sys.stdout.attr = None:(, AttributeError('invalid attribute',)) + >> OutputWrite +! sys.stdout.write(None):(, TypeError('coercing to Unicode: need string or buffer, NoneType found',)) + >> OutputWriteLines +! sys.stdout.writelines(None):(, TypeError("'NoneType' object is not iterable",)) +! sys.stdout.writelines([1]):(, TypeError('writelines() requires list of strings',)) + > VimCommand +! vim.command(1):(, TypeError('must be string, not int',)) + > VimToPython + > VimEval +! vim.eval(1):(, TypeError('must be string, not int',)) + > VimEvalPy +! vim.bindeval(1):(, TypeError('must be string, not int',)) + > VimStrwidth +! vim.strwidth(1):(, TypeError('must be string, not int',)) + > Dictionary + >> DictionaryConstructor +! vim.Dictionary("abc"):(, ValueError('expected sequence element of size 2',)) + >> DictionarySetattr +! del d.locked:(, AttributeError('cannot delete vim.Dictionary attributes',)) +! d.locked = FailingTrue():(, NotImplementedError()) +! vim.vvars.locked = False:(, TypeError('cannot modify fixed dictionary',)) +! d.scope = True:(, AttributeError('cannot set this attribute',)) +! d.xxx = True:(, AttributeError('cannot set this attribute',)) + >> _DictionaryItem +! d.get("a", 2, 3):(, TypeError('function takes at most 2 arguments (3 given)',)) + >>> Testing StringToChars using d.get(%s) +! d.get(1):(, TypeError('object must be string',)) +! d.get(u"\0"):(, TypeError('expected string without null bytes',)) +! d.get("\0"):(, TypeError('expected string without null bytes',)) + <<< Finished +! d.pop("a"):(, KeyError('a',)) +! dl.pop("a"):(, error('dict is locked',)) + >> DictionaryIterNext +! for i in ned: ned["a"] = 1:(, RuntimeError('hashtab changed during iteration',)) + >> DictionaryAssItem +! dl["b"] = 1:(, error('dict is locked',)) + >>> Testing StringToChars using d[%s] = 1 +! d[1] = 1:(, TypeError('object must be string',)) +! d[u"\0"] = 1:(, TypeError('expected string without null bytes',)) +! d["\0"] = 1:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d["a"] = {%s : 1} +! d["a"] = {1 : 1}:(, TypeError('object must be string',)) +! d["a"] = {u"\0" : 1}:(, TypeError('expected string without null bytes',)) +! d["a"] = {"\0" : 1}:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d["a"] = {"abc" : {%s : 1}} +! d["a"] = {"abc" : {1 : 1}}:(, TypeError('object must be string',)) +! d["a"] = {"abc" : {u"\0" : 1}}:(, TypeError('expected string without null bytes',)) +! d["a"] = {"abc" : {"\0" : 1}}:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d["a"] = {"abc" : Mapping({%s : 1})} +! d["a"] = {"abc" : Mapping({1 : 1})}:(, TypeError('object must be string',)) +! d["a"] = {"abc" : Mapping({u"\0" : 1})}:(, TypeError('expected string without null bytes',)) +! d["a"] = {"abc" : Mapping({"\0" : 1})}:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using d["a"] = {"abc" : %s} +! d["a"] = {"abc" : FailingIter()}:(, TypeError('unable to convert to vim structure',)) +! d["a"] = {"abc" : FailingIterNext()}:(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d["a"] = {"abc" : %s} +! d["a"] = {"abc" : None}:(, TypeError('unable to convert to vim structure',)) +! d["a"] = {"abc" : {"": 1}}:(, ValueError('empty keys are not allowed',)) +! d["a"] = {"abc" : {u"": 1}}:(, ValueError('empty keys are not allowed',)) +! d["a"] = {"abc" : FailingMapping()}:(, NotImplementedError()) +! d["a"] = {"abc" : FailingMappingKey()}:(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using d["a"] = Mapping({%s : 1}) +! d["a"] = Mapping({1 : 1}):(, TypeError('object must be string',)) +! d["a"] = Mapping({u"\0" : 1}):(, TypeError('expected string without null bytes',)) +! d["a"] = Mapping({"\0" : 1}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d["a"] = Mapping({"abc" : {%s : 1}}) +! d["a"] = Mapping({"abc" : {1 : 1}}):(, TypeError('object must be string',)) +! d["a"] = Mapping({"abc" : {u"\0" : 1}}):(, TypeError('expected string without null bytes',)) +! d["a"] = Mapping({"abc" : {"\0" : 1}}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d["a"] = Mapping({"abc" : Mapping({%s : 1})}) +! d["a"] = Mapping({"abc" : Mapping({1 : 1})}):(, TypeError('object must be string',)) +! d["a"] = Mapping({"abc" : Mapping({u"\0" : 1})}):(, TypeError('expected string without null bytes',)) +! d["a"] = Mapping({"abc" : Mapping({"\0" : 1})}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using d["a"] = Mapping({"abc" : %s}) +! d["a"] = Mapping({"abc" : FailingIter()}):(, TypeError('unable to convert to vim structure',)) +! d["a"] = Mapping({"abc" : FailingIterNext()}):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d["a"] = Mapping({"abc" : %s}) +! d["a"] = Mapping({"abc" : None}):(, TypeError('unable to convert to vim structure',)) +! d["a"] = Mapping({"abc" : {"": 1}}):(, ValueError('empty keys are not allowed',)) +! d["a"] = Mapping({"abc" : {u"": 1}}):(, ValueError('empty keys are not allowed',)) +! d["a"] = Mapping({"abc" : FailingMapping()}):(, NotImplementedError()) +! d["a"] = Mapping({"abc" : FailingMappingKey()}):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using d["a"] = %s +! d["a"] = FailingIter():(, TypeError('unable to convert to vim structure',)) +! d["a"] = FailingIterNext():(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d["a"] = %s +! d["a"] = None:(, TypeError('unable to convert to vim structure',)) +! d["a"] = {"": 1}:(, ValueError('empty keys are not allowed',)) +! d["a"] = {u"": 1}:(, ValueError('empty keys are not allowed',)) +! d["a"] = FailingMapping():(, NotImplementedError()) +! d["a"] = FailingMappingKey():(, NotImplementedError()) + <<< Finished + >> DictionaryUpdate + >>> kwargs + >>> iter +! d.update(FailingMapping()):(, NotImplementedError()) +! d.update([FailingIterNext()]):(, NotImplementedError()) + >>> Testing StringToChars using d.update({%s : 1}) +! d.update({1 : 1}):(, TypeError('object must be string',)) +! d.update({u"\0" : 1}):(, TypeError('expected string without null bytes',)) +! d.update({"\0" : 1}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update({"abc" : {%s : 1}}) +! d.update({"abc" : {1 : 1}}):(, TypeError('object must be string',)) +! d.update({"abc" : {u"\0" : 1}}):(, TypeError('expected string without null bytes',)) +! d.update({"abc" : {"\0" : 1}}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update({"abc" : Mapping({%s : 1})}) +! d.update({"abc" : Mapping({1 : 1})}):(, TypeError('object must be string',)) +! d.update({"abc" : Mapping({u"\0" : 1})}):(, TypeError('expected string without null bytes',)) +! d.update({"abc" : Mapping({"\0" : 1})}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using d.update({"abc" : %s}) +! d.update({"abc" : FailingIter()}):(, TypeError('unable to convert to vim structure',)) +! d.update({"abc" : FailingIterNext()}):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d.update({"abc" : %s}) +! d.update({"abc" : None}):(, TypeError('unable to convert to vim structure',)) +! d.update({"abc" : {"": 1}}):(, ValueError('empty keys are not allowed',)) +! d.update({"abc" : {u"": 1}}):(, ValueError('empty keys are not allowed',)) +! d.update({"abc" : FailingMapping()}):(, NotImplementedError()) +! d.update({"abc" : FailingMappingKey()}):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using d.update(Mapping({%s : 1})) +! d.update(Mapping({1 : 1})):(, TypeError('object must be string',)) +! d.update(Mapping({u"\0" : 1})):(, TypeError('expected string without null bytes',)) +! d.update(Mapping({"\0" : 1})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update(Mapping({"abc" : {%s : 1}})) +! d.update(Mapping({"abc" : {1 : 1}})):(, TypeError('object must be string',)) +! d.update(Mapping({"abc" : {u"\0" : 1}})):(, TypeError('expected string without null bytes',)) +! d.update(Mapping({"abc" : {"\0" : 1}})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update(Mapping({"abc" : Mapping({%s : 1})})) +! d.update(Mapping({"abc" : Mapping({1 : 1})})):(, TypeError('object must be string',)) +! d.update(Mapping({"abc" : Mapping({u"\0" : 1})})):(, TypeError('expected string without null bytes',)) +! d.update(Mapping({"abc" : Mapping({"\0" : 1})})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using d.update(Mapping({"abc" : %s})) +! d.update(Mapping({"abc" : FailingIter()})):(, TypeError('unable to convert to vim structure',)) +! d.update(Mapping({"abc" : FailingIterNext()})):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d.update(Mapping({"abc" : %s})) +! d.update(Mapping({"abc" : None})):(, TypeError('unable to convert to vim structure',)) +! d.update(Mapping({"abc" : {"": 1}})):(, ValueError('empty keys are not allowed',)) +! d.update(Mapping({"abc" : {u"": 1}})):(, ValueError('empty keys are not allowed',)) +! d.update(Mapping({"abc" : FailingMapping()})):(, NotImplementedError()) +! d.update(Mapping({"abc" : FailingMappingKey()})):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using d.update(%s) +! d.update(FailingIter()):(, NotImplementedError()) +! d.update(FailingIterNext()):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d.update(%s) +! d.update(None):(, TypeError("'NoneType' object is not iterable",)) +! d.update({"": 1}):(, ValueError('empty keys are not allowed',)) +! d.update({u"": 1}):(, ValueError('empty keys are not allowed',)) +! d.update(FailingMapping()):(, NotImplementedError()) +! d.update(FailingMappingKey()):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using d.update(((%s, 0),)) +! d.update(((1, 0),)):(, TypeError('object must be string',)) +! d.update(((u"\0", 0),)):(, TypeError('expected string without null bytes',)) +! d.update((("\0", 0),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update((("a", {%s : 1}),)) +! d.update((("a", {1 : 1}),)):(, TypeError('object must be string',)) +! d.update((("a", {u"\0" : 1}),)):(, TypeError('expected string without null bytes',)) +! d.update((("a", {"\0" : 1}),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update((("a", {"abc" : {%s : 1}}),)) +! d.update((("a", {"abc" : {1 : 1}}),)):(, TypeError('object must be string',)) +! d.update((("a", {"abc" : {u"\0" : 1}}),)):(, TypeError('expected string without null bytes',)) +! d.update((("a", {"abc" : {"\0" : 1}}),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update((("a", {"abc" : Mapping({%s : 1})}),)) +! d.update((("a", {"abc" : Mapping({1 : 1})}),)):(, TypeError('object must be string',)) +! d.update((("a", {"abc" : Mapping({u"\0" : 1})}),)):(, TypeError('expected string without null bytes',)) +! d.update((("a", {"abc" : Mapping({"\0" : 1})}),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using d.update((("a", {"abc" : %s}),)) +! d.update((("a", {"abc" : FailingIter()}),)):(, TypeError('unable to convert to vim structure',)) +! d.update((("a", {"abc" : FailingIterNext()}),)):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d.update((("a", {"abc" : %s}),)) +! d.update((("a", {"abc" : None}),)):(, TypeError('unable to convert to vim structure',)) +! d.update((("a", {"abc" : {"": 1}}),)):(, ValueError('empty keys are not allowed',)) +! d.update((("a", {"abc" : {u"": 1}}),)):(, ValueError('empty keys are not allowed',)) +! d.update((("a", {"abc" : FailingMapping()}),)):(, NotImplementedError()) +! d.update((("a", {"abc" : FailingMappingKey()}),)):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using d.update((("a", Mapping({%s : 1})),)) +! d.update((("a", Mapping({1 : 1})),)):(, TypeError('object must be string',)) +! d.update((("a", Mapping({u"\0" : 1})),)):(, TypeError('expected string without null bytes',)) +! d.update((("a", Mapping({"\0" : 1})),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update((("a", Mapping({"abc" : {%s : 1}})),)) +! d.update((("a", Mapping({"abc" : {1 : 1}})),)):(, TypeError('object must be string',)) +! d.update((("a", Mapping({"abc" : {u"\0" : 1}})),)):(, TypeError('expected string without null bytes',)) +! d.update((("a", Mapping({"abc" : {"\0" : 1}})),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using d.update((("a", Mapping({"abc" : Mapping({%s : 1})})),)) +! d.update((("a", Mapping({"abc" : Mapping({1 : 1})})),)):(, TypeError('object must be string',)) +! d.update((("a", Mapping({"abc" : Mapping({u"\0" : 1})})),)):(, TypeError('expected string without null bytes',)) +! d.update((("a", Mapping({"abc" : Mapping({"\0" : 1})})),)):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using d.update((("a", Mapping({"abc" : %s})),)) +! d.update((("a", Mapping({"abc" : FailingIter()})),)):(, TypeError('unable to convert to vim structure',)) +! d.update((("a", Mapping({"abc" : FailingIterNext()})),)):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d.update((("a", Mapping({"abc" : %s})),)) +! d.update((("a", Mapping({"abc" : None})),)):(, TypeError('unable to convert to vim structure',)) +! d.update((("a", Mapping({"abc" : {"": 1}})),)):(, ValueError('empty keys are not allowed',)) +! d.update((("a", Mapping({"abc" : {u"": 1}})),)):(, ValueError('empty keys are not allowed',)) +! d.update((("a", Mapping({"abc" : FailingMapping()})),)):(, NotImplementedError()) +! d.update((("a", Mapping({"abc" : FailingMappingKey()})),)):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using d.update((("a", %s),)) +! d.update((("a", FailingIter()),)):(, TypeError('unable to convert to vim structure',)) +! d.update((("a", FailingIterNext()),)):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using d.update((("a", %s),)) +! d.update((("a", None),)):(, TypeError('unable to convert to vim structure',)) +! d.update((("a", {"": 1}),)):(, ValueError('empty keys are not allowed',)) +! d.update((("a", {u"": 1}),)):(, ValueError('empty keys are not allowed',)) +! d.update((("a", FailingMapping()),)):(, NotImplementedError()) +! d.update((("a", FailingMappingKey()),)):(, NotImplementedError()) + <<< Finished + >> DictionaryPopItem +! d.popitem(1, 2):(, TypeError('popitem() takes no arguments (2 given)',)) + >> DictionaryHasKey +! d.has_key():(, TypeError('function takes exactly 1 argument (0 given)',)) + > List + >> ListConstructor +! vim.List(1, 2):(, TypeError('function takes at most 1 argument (2 given)',)) +! vim.List(a=1):(, TypeError('list constructor does not accept keyword arguments',)) + >>> Testing StringToChars using vim.List([{%s : 1}]) +! vim.List([{1 : 1}]):(, TypeError('object must be string',)) +! vim.List([{u"\0" : 1}]):(, TypeError('expected string without null bytes',)) +! vim.List([{"\0" : 1}]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using vim.List([{"abc" : {%s : 1}}]) +! vim.List([{"abc" : {1 : 1}}]):(, TypeError('object must be string',)) +! vim.List([{"abc" : {u"\0" : 1}}]):(, TypeError('expected string without null bytes',)) +! vim.List([{"abc" : {"\0" : 1}}]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using vim.List([{"abc" : Mapping({%s : 1})}]) +! vim.List([{"abc" : Mapping({1 : 1})}]):(, TypeError('object must be string',)) +! vim.List([{"abc" : Mapping({u"\0" : 1})}]):(, TypeError('expected string without null bytes',)) +! vim.List([{"abc" : Mapping({"\0" : 1})}]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using vim.List([{"abc" : %s}]) +! vim.List([{"abc" : FailingIter()}]):(, TypeError('unable to convert to vim structure',)) +! vim.List([{"abc" : FailingIterNext()}]):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using vim.List([{"abc" : %s}]) +! vim.List([{"abc" : None}]):(, TypeError('unable to convert to vim structure',)) +! vim.List([{"abc" : {"": 1}}]):(, ValueError('empty keys are not allowed',)) +! vim.List([{"abc" : {u"": 1}}]):(, ValueError('empty keys are not allowed',)) +! vim.List([{"abc" : FailingMapping()}]):(, NotImplementedError()) +! vim.List([{"abc" : FailingMappingKey()}]):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using vim.List([Mapping({%s : 1})]) +! vim.List([Mapping({1 : 1})]):(, TypeError('object must be string',)) +! vim.List([Mapping({u"\0" : 1})]):(, TypeError('expected string without null bytes',)) +! vim.List([Mapping({"\0" : 1})]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using vim.List([Mapping({"abc" : {%s : 1}})]) +! vim.List([Mapping({"abc" : {1 : 1}})]):(, TypeError('object must be string',)) +! vim.List([Mapping({"abc" : {u"\0" : 1}})]):(, TypeError('expected string without null bytes',)) +! vim.List([Mapping({"abc" : {"\0" : 1}})]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using vim.List([Mapping({"abc" : Mapping({%s : 1})})]) +! vim.List([Mapping({"abc" : Mapping({1 : 1})})]):(, TypeError('object must be string',)) +! vim.List([Mapping({"abc" : Mapping({u"\0" : 1})})]):(, TypeError('expected string without null bytes',)) +! vim.List([Mapping({"abc" : Mapping({"\0" : 1})})]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using vim.List([Mapping({"abc" : %s})]) +! vim.List([Mapping({"abc" : FailingIter()})]):(, TypeError('unable to convert to vim structure',)) +! vim.List([Mapping({"abc" : FailingIterNext()})]):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using vim.List([Mapping({"abc" : %s})]) +! vim.List([Mapping({"abc" : None})]):(, TypeError('unable to convert to vim structure',)) +! vim.List([Mapping({"abc" : {"": 1}})]):(, ValueError('empty keys are not allowed',)) +! vim.List([Mapping({"abc" : {u"": 1}})]):(, ValueError('empty keys are not allowed',)) +! vim.List([Mapping({"abc" : FailingMapping()})]):(, NotImplementedError()) +! vim.List([Mapping({"abc" : FailingMappingKey()})]):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using vim.List([%s]) +! vim.List([FailingIter()]):(, TypeError('unable to convert to vim structure',)) +! vim.List([FailingIterNext()]):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using vim.List([%s]) +! vim.List([None]):(, TypeError('unable to convert to vim structure',)) +! vim.List([{"": 1}]):(, ValueError('empty keys are not allowed',)) +! vim.List([{u"": 1}]):(, ValueError('empty keys are not allowed',)) +! vim.List([FailingMapping()]):(, NotImplementedError()) +! vim.List([FailingMappingKey()]):(, NotImplementedError()) + <<< Finished + >> ListItem +! l[1000]:(, IndexError('list index out of range',)) + >> ListAssItem +! ll[1] = 2:(, error('list is locked',)) +! l[1000] = 3:(, IndexError('list index out of range',)) + >> ListAssSlice +! ll[1:100] = "abc":(, error('list is locked',)) + >>> Testing StringToChars using l[:] = [{%s : 1}] +! l[:] = [{1 : 1}]:(, TypeError('object must be string',)) +! l[:] = [{u"\0" : 1}]:(, TypeError('expected string without null bytes',)) +! l[:] = [{"\0" : 1}]:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l[:] = [{"abc" : {%s : 1}}] +! l[:] = [{"abc" : {1 : 1}}]:(, TypeError('object must be string',)) +! l[:] = [{"abc" : {u"\0" : 1}}]:(, TypeError('expected string without null bytes',)) +! l[:] = [{"abc" : {"\0" : 1}}]:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l[:] = [{"abc" : Mapping({%s : 1})}] +! l[:] = [{"abc" : Mapping({1 : 1})}]:(, TypeError('object must be string',)) +! l[:] = [{"abc" : Mapping({u"\0" : 1})}]:(, TypeError('expected string without null bytes',)) +! l[:] = [{"abc" : Mapping({"\0" : 1})}]:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using l[:] = [{"abc" : %s}] +! l[:] = [{"abc" : FailingIter()}]:(, TypeError('unable to convert to vim structure',)) +! l[:] = [{"abc" : FailingIterNext()}]:(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using l[:] = [{"abc" : %s}] +! l[:] = [{"abc" : None}]:(, TypeError('unable to convert to vim structure',)) +! l[:] = [{"abc" : {"": 1}}]:(, ValueError('empty keys are not allowed',)) +! l[:] = [{"abc" : {u"": 1}}]:(, ValueError('empty keys are not allowed',)) +! l[:] = [{"abc" : FailingMapping()}]:(, NotImplementedError()) +! l[:] = [{"abc" : FailingMappingKey()}]:(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using l[:] = [Mapping({%s : 1})] +! l[:] = [Mapping({1 : 1})]:(, TypeError('object must be string',)) +! l[:] = [Mapping({u"\0" : 1})]:(, TypeError('expected string without null bytes',)) +! l[:] = [Mapping({"\0" : 1})]:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l[:] = [Mapping({"abc" : {%s : 1}})] +! l[:] = [Mapping({"abc" : {1 : 1}})]:(, TypeError('object must be string',)) +! l[:] = [Mapping({"abc" : {u"\0" : 1}})]:(, TypeError('expected string without null bytes',)) +! l[:] = [Mapping({"abc" : {"\0" : 1}})]:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l[:] = [Mapping({"abc" : Mapping({%s : 1})})] +! l[:] = [Mapping({"abc" : Mapping({1 : 1})})]:(, TypeError('object must be string',)) +! l[:] = [Mapping({"abc" : Mapping({u"\0" : 1})})]:(, TypeError('expected string without null bytes',)) +! l[:] = [Mapping({"abc" : Mapping({"\0" : 1})})]:(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using l[:] = [Mapping({"abc" : %s})] +! l[:] = [Mapping({"abc" : FailingIter()})]:(, TypeError('unable to convert to vim structure',)) +! l[:] = [Mapping({"abc" : FailingIterNext()})]:(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using l[:] = [Mapping({"abc" : %s})] +! l[:] = [Mapping({"abc" : None})]:(, TypeError('unable to convert to vim structure',)) +! l[:] = [Mapping({"abc" : {"": 1}})]:(, ValueError('empty keys are not allowed',)) +! l[:] = [Mapping({"abc" : {u"": 1}})]:(, ValueError('empty keys are not allowed',)) +! l[:] = [Mapping({"abc" : FailingMapping()})]:(, NotImplementedError()) +! l[:] = [Mapping({"abc" : FailingMappingKey()})]:(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using l[:] = [%s] +! l[:] = [FailingIter()]:(, TypeError('unable to convert to vim structure',)) +! l[:] = [FailingIterNext()]:(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using l[:] = [%s] +! l[:] = [None]:(, TypeError('unable to convert to vim structure',)) +! l[:] = [{"": 1}]:(, ValueError('empty keys are not allowed',)) +! l[:] = [{u"": 1}]:(, ValueError('empty keys are not allowed',)) +! l[:] = [FailingMapping()]:(, NotImplementedError()) +! l[:] = [FailingMappingKey()]:(, NotImplementedError()) + <<< Finished + >> ListConcatInPlace + >>> Testing StringToChars using l.extend([{%s : 1}]) +! l.extend([{1 : 1}]):(, TypeError('object must be string',)) +! l.extend([{u"\0" : 1}]):(, TypeError('expected string without null bytes',)) +! l.extend([{"\0" : 1}]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l.extend([{"abc" : {%s : 1}}]) +! l.extend([{"abc" : {1 : 1}}]):(, TypeError('object must be string',)) +! l.extend([{"abc" : {u"\0" : 1}}]):(, TypeError('expected string without null bytes',)) +! l.extend([{"abc" : {"\0" : 1}}]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l.extend([{"abc" : Mapping({%s : 1})}]) +! l.extend([{"abc" : Mapping({1 : 1})}]):(, TypeError('object must be string',)) +! l.extend([{"abc" : Mapping({u"\0" : 1})}]):(, TypeError('expected string without null bytes',)) +! l.extend([{"abc" : Mapping({"\0" : 1})}]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using l.extend([{"abc" : %s}]) +! l.extend([{"abc" : FailingIter()}]):(, TypeError('unable to convert to vim structure',)) +! l.extend([{"abc" : FailingIterNext()}]):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using l.extend([{"abc" : %s}]) +! l.extend([{"abc" : None}]):(, TypeError('unable to convert to vim structure',)) +! l.extend([{"abc" : {"": 1}}]):(, ValueError('empty keys are not allowed',)) +! l.extend([{"abc" : {u"": 1}}]):(, ValueError('empty keys are not allowed',)) +! l.extend([{"abc" : FailingMapping()}]):(, NotImplementedError()) +! l.extend([{"abc" : FailingMappingKey()}]):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using l.extend([Mapping({%s : 1})]) +! l.extend([Mapping({1 : 1})]):(, TypeError('object must be string',)) +! l.extend([Mapping({u"\0" : 1})]):(, TypeError('expected string without null bytes',)) +! l.extend([Mapping({"\0" : 1})]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l.extend([Mapping({"abc" : {%s : 1}})]) +! l.extend([Mapping({"abc" : {1 : 1}})]):(, TypeError('object must be string',)) +! l.extend([Mapping({"abc" : {u"\0" : 1}})]):(, TypeError('expected string without null bytes',)) +! l.extend([Mapping({"abc" : {"\0" : 1}})]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using l.extend([Mapping({"abc" : Mapping({%s : 1})})]) +! l.extend([Mapping({"abc" : Mapping({1 : 1})})]):(, TypeError('object must be string',)) +! l.extend([Mapping({"abc" : Mapping({u"\0" : 1})})]):(, TypeError('expected string without null bytes',)) +! l.extend([Mapping({"abc" : Mapping({"\0" : 1})})]):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using l.extend([Mapping({"abc" : %s})]) +! l.extend([Mapping({"abc" : FailingIter()})]):(, TypeError('unable to convert to vim structure',)) +! l.extend([Mapping({"abc" : FailingIterNext()})]):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using l.extend([Mapping({"abc" : %s})]) +! l.extend([Mapping({"abc" : None})]):(, TypeError('unable to convert to vim structure',)) +! l.extend([Mapping({"abc" : {"": 1}})]):(, ValueError('empty keys are not allowed',)) +! l.extend([Mapping({"abc" : {u"": 1}})]):(, ValueError('empty keys are not allowed',)) +! l.extend([Mapping({"abc" : FailingMapping()})]):(, NotImplementedError()) +! l.extend([Mapping({"abc" : FailingMappingKey()})]):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using l.extend([%s]) +! l.extend([FailingIter()]):(, TypeError('unable to convert to vim structure',)) +! l.extend([FailingIterNext()]):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using l.extend([%s]) +! l.extend([None]):(, TypeError('unable to convert to vim structure',)) +! l.extend([{"": 1}]):(, ValueError('empty keys are not allowed',)) +! l.extend([{u"": 1}]):(, ValueError('empty keys are not allowed',)) +! l.extend([FailingMapping()]):(, NotImplementedError()) +! l.extend([FailingMappingKey()]):(, NotImplementedError()) + <<< Finished + >> ListSetattr +! del l.locked:(, AttributeError('cannot delete vim.List attributes',)) +! l.locked = FailingTrue():(, NotImplementedError()) +! l.xxx = True:(, AttributeError('cannot set this attribute',)) + > Function + >> FunctionConstructor +! vim.Function("123"):(, ValueError('unnamed function does not exist',)) +! vim.Function("xxx_non_existent_function_xxx"):(, ValueError('function does not exist',)) + vim.Function("xxx#non#existent#function#xxx"):NOT FAILED + >> FunctionCall + >>> Testing StringToChars using f({%s : 1}) +! f({1 : 1}):(, TypeError('object must be string',)) +! f({u"\0" : 1}):(, TypeError('expected string without null bytes',)) +! f({"\0" : 1}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using f({"abc" : {%s : 1}}) +! f({"abc" : {1 : 1}}):(, TypeError('object must be string',)) +! f({"abc" : {u"\0" : 1}}):(, TypeError('expected string without null bytes',)) +! f({"abc" : {"\0" : 1}}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using f({"abc" : Mapping({%s : 1})}) +! f({"abc" : Mapping({1 : 1})}):(, TypeError('object must be string',)) +! f({"abc" : Mapping({u"\0" : 1})}):(, TypeError('expected string without null bytes',)) +! f({"abc" : Mapping({"\0" : 1})}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using f({"abc" : %s}) +! f({"abc" : FailingIter()}):(, TypeError('unable to convert to vim structure',)) +! f({"abc" : FailingIterNext()}):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using f({"abc" : %s}) +! f({"abc" : None}):(, TypeError('unable to convert to vim structure',)) +! f({"abc" : {"": 1}}):(, ValueError('empty keys are not allowed',)) +! f({"abc" : {u"": 1}}):(, ValueError('empty keys are not allowed',)) +! f({"abc" : FailingMapping()}):(, NotImplementedError()) +! f({"abc" : FailingMappingKey()}):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using f(Mapping({%s : 1})) +! f(Mapping({1 : 1})):(, TypeError('object must be string',)) +! f(Mapping({u"\0" : 1})):(, TypeError('expected string without null bytes',)) +! f(Mapping({"\0" : 1})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using f(Mapping({"abc" : {%s : 1}})) +! f(Mapping({"abc" : {1 : 1}})):(, TypeError('object must be string',)) +! f(Mapping({"abc" : {u"\0" : 1}})):(, TypeError('expected string without null bytes',)) +! f(Mapping({"abc" : {"\0" : 1}})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using f(Mapping({"abc" : Mapping({%s : 1})})) +! f(Mapping({"abc" : Mapping({1 : 1})})):(, TypeError('object must be string',)) +! f(Mapping({"abc" : Mapping({u"\0" : 1})})):(, TypeError('expected string without null bytes',)) +! f(Mapping({"abc" : Mapping({"\0" : 1})})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using f(Mapping({"abc" : %s})) +! f(Mapping({"abc" : FailingIter()})):(, TypeError('unable to convert to vim structure',)) +! f(Mapping({"abc" : FailingIterNext()})):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using f(Mapping({"abc" : %s})) +! f(Mapping({"abc" : None})):(, TypeError('unable to convert to vim structure',)) +! f(Mapping({"abc" : {"": 1}})):(, ValueError('empty keys are not allowed',)) +! f(Mapping({"abc" : {u"": 1}})):(, ValueError('empty keys are not allowed',)) +! f(Mapping({"abc" : FailingMapping()})):(, NotImplementedError()) +! f(Mapping({"abc" : FailingMappingKey()})):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using f(%s) +! f(FailingIter()):(, TypeError('unable to convert to vim structure',)) +! f(FailingIterNext()):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using f(%s) +! f(None):(, TypeError('unable to convert to vim structure',)) +! f({"": 1}):(, ValueError('empty keys are not allowed',)) +! f({u"": 1}):(, ValueError('empty keys are not allowed',)) +! f(FailingMapping()):(, NotImplementedError()) +! f(FailingMappingKey()):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using fd(self={%s : 1}) +! fd(self={1 : 1}):(, TypeError('object must be string',)) +! fd(self={u"\0" : 1}):(, TypeError('expected string without null bytes',)) +! fd(self={"\0" : 1}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using fd(self={"abc" : {%s : 1}}) +! fd(self={"abc" : {1 : 1}}):(, TypeError('object must be string',)) +! fd(self={"abc" : {u"\0" : 1}}):(, TypeError('expected string without null bytes',)) +! fd(self={"abc" : {"\0" : 1}}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using fd(self={"abc" : Mapping({%s : 1})}) +! fd(self={"abc" : Mapping({1 : 1})}):(, TypeError('object must be string',)) +! fd(self={"abc" : Mapping({u"\0" : 1})}):(, TypeError('expected string without null bytes',)) +! fd(self={"abc" : Mapping({"\0" : 1})}):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using fd(self={"abc" : %s}) +! fd(self={"abc" : FailingIter()}):(, TypeError('unable to convert to vim structure',)) +! fd(self={"abc" : FailingIterNext()}):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using fd(self={"abc" : %s}) +! fd(self={"abc" : None}):(, TypeError('unable to convert to vim structure',)) +! fd(self={"abc" : {"": 1}}):(, ValueError('empty keys are not allowed',)) +! fd(self={"abc" : {u"": 1}}):(, ValueError('empty keys are not allowed',)) +! fd(self={"abc" : FailingMapping()}):(, NotImplementedError()) +! fd(self={"abc" : FailingMappingKey()}):(, NotImplementedError()) + <<< Finished + >>> Testing StringToChars using fd(self=Mapping({%s : 1})) +! fd(self=Mapping({1 : 1})):(, TypeError('object must be string',)) +! fd(self=Mapping({u"\0" : 1})):(, TypeError('expected string without null bytes',)) +! fd(self=Mapping({"\0" : 1})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using fd(self=Mapping({"abc" : {%s : 1}})) +! fd(self=Mapping({"abc" : {1 : 1}})):(, TypeError('object must be string',)) +! fd(self=Mapping({"abc" : {u"\0" : 1}})):(, TypeError('expected string without null bytes',)) +! fd(self=Mapping({"abc" : {"\0" : 1}})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing StringToChars using fd(self=Mapping({"abc" : Mapping({%s : 1})})) +! fd(self=Mapping({"abc" : Mapping({1 : 1})})):(, TypeError('object must be string',)) +! fd(self=Mapping({"abc" : Mapping({u"\0" : 1})})):(, TypeError('expected string without null bytes',)) +! fd(self=Mapping({"abc" : Mapping({"\0" : 1})})):(, TypeError('expected string without null bytes',)) + <<< Finished + >>> Testing *Iter* using fd(self=Mapping({"abc" : %s})) +! fd(self=Mapping({"abc" : FailingIter()})):(, TypeError('unable to convert to vim structure',)) +! fd(self=Mapping({"abc" : FailingIterNext()})):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyObject using fd(self=Mapping({"abc" : %s})) +! fd(self=Mapping({"abc" : None})):(, TypeError('unable to convert to vim structure',)) +! fd(self=Mapping({"abc" : {"": 1}})):(, ValueError('empty keys are not allowed',)) +! fd(self=Mapping({"abc" : {u"": 1}})):(, ValueError('empty keys are not allowed',)) +! fd(self=Mapping({"abc" : FailingMapping()})):(, NotImplementedError()) +! fd(self=Mapping({"abc" : FailingMappingKey()})):(, NotImplementedError()) + <<< Finished + >>> Testing *Iter* using fd(self=%s) +! fd(self=FailingIter()):(, TypeError('unable to convert object to vim dictionary',)) +! fd(self=FailingIterNext()):(, TypeError('unable to convert object to vim dictionary',)) + <<< Finished + >>> Testing ConvertFromPyObject using fd(self=%s) +! fd(self=None):(, TypeError('unable to convert object to vim dictionary',)) +! fd(self={"": 1}):(, ValueError('empty keys are not allowed',)) +! fd(self={u"": 1}):(, ValueError('empty keys are not allowed',)) +! fd(self=FailingMapping()):(, NotImplementedError()) +! fd(self=FailingMappingKey()):(, NotImplementedError()) + <<< Finished + >>> Testing ConvertFromPyMapping using fd(self=%s) +! fd(self=[]):(, TypeError('unable to convert object to vim dictionary',)) + <<< Finished + > TabPage + >> TabPageAttr +! vim.current.tabpage.xxx:(, AttributeError('xxx',)) + > TabList + >> TabListItem +! vim.tabpages[1000]:(, IndexError('no such tab page',)) + > Window + >> WindowAttr +! vim.current.window.xxx:(, AttributeError('xxx',)) + >> WindowSetattr +! vim.current.window.buffer = 0:(, TypeError('readonly attribute',)) +! vim.current.window.cursor = (100000000, 100000000):(, error('cursor position outside buffer',)) +! vim.current.window.cursor = True:(, TypeError('argument must be 2-item sequence, not bool',)) +! vim.current.window.height = "abc":(, TypeError('an integer is required',)) +! vim.current.window.width = "abc":(, TypeError('an integer is required',)) +! vim.current.window.xxxxxx = True:(, AttributeError('xxxxxx',)) + > WinList + >> WinListItem +! vim.windows[1000]:(, IndexError('no such window',)) + > Buffer + >> StringToLine (indirect) +! vim.current.buffer[0] = "\na":(, error('string cannot contain newlines',)) + >> SetBufferLine (indirect) +! vim.current.buffer[0] = True:(, TypeError('bad argument type for built-in operation',)) + >> SetBufferLines (indirect) +! vim.current.buffer[:] = True:(, TypeError('bad argument type for built-in operation',)) +! vim.current.buffer[:] = ["\na", "bc"]:(, error('string cannot contain newlines',)) + >> InsertBufferLines (indirect) +! vim.current.buffer.append(None):(, TypeError('bad argument type for built-in operation',)) +! vim.current.buffer.append(["\na", "bc"]):(, error('string cannot contain newlines',)) +! vim.current.buffer.append("\nbc"):(, error('string cannot contain newlines',)) + >> RBItem +! vim.current.buffer[100000000]:(, IndexError('line number out of range',)) + >> RBAsItem +! vim.current.buffer[100000000] = "":(, IndexError('line number out of range',)) + >> BufferAttr +! vim.current.buffer.xxx:(, AttributeError('xxx',)) + >> BufferSetattr +! vim.current.buffer.name = True:(, TypeError('object must be string',)) +! vim.current.buffer.xxx = True:(, AttributeError('xxx',)) + >> BufferMark +! vim.current.buffer.mark(0):(, TypeError('must be string, not int',)) +! vim.current.buffer.mark("abc"):(, ValueError('mark name must be a single character',)) +! vim.current.buffer.mark("!"):(, error('invalid mark name',)) + >> BufferRange +! vim.current.buffer.range(1, 2, 3):(, TypeError('function takes exactly 2 arguments (3 given)',)) + > BufMap + >> BufMapItem +! vim.buffers[None]:(, TypeError('key must be integer',)) +! vim.buffers[100000000]:(, KeyError(100000000,)) + > Current + >> CurrentGetattr +! vim.current.xxx:(, AttributeError('xxx',)) + >> CurrentSetattr +! vim.current.line = True:(, TypeError('bad argument type for built-in operation',)) +! vim.current.buffer = True:(, TypeError('expected vim.Buffer object',)) +! vim.current.window = True:(, TypeError('expected vim.Window object',)) +! vim.current.tabpage = True:(, TypeError('expected vim.TabPage object',)) +! vim.current.xxx = True:(, AttributeError('xxx',)) + 2,xx + before + after +! vim.command("throw 'abc'"):(, error('abc',)) +! Exe("throw 'def'"):(, error('def',)) +! vim.eval("Exe('throw ''ghi''')"):(, error('ghi',)) +! vim.eval("Exe('echoerr ''jkl''')"):(, error('Vim(echoerr):jkl',)) +! vim.eval("Exe('xxx_non_existent_command_xxx')"):(, error('Vim:E492: Not an editor command: xxx_non_existent_command_xxx',)) +! vim.bindeval("Exe('xxx_non_existent_command_xxx')"):(, error('Vim:E492: Not an editor command: xxx_non_existent_command_xxx',)) +--- 437,1094 ---- + test86.in + > Output + >> OutputSetattr +! del sys.stdout.softspace:AttributeError:("can't delete OutputObject attributes",) +! sys.stdout.softspace = []:TypeError:('softspace must be an integer',) +! sys.stdout.attr = None:AttributeError:('invalid attribute',) + >> OutputWrite +! sys.stdout.write(None):TypeError:('coercing to Unicode: need string or buffer, NoneType found',) + >> OutputWriteLines +! sys.stdout.writelines(None):TypeError:("'NoneType' object is not iterable",) +! sys.stdout.writelines([1]):TypeError:('writelines() requires list of strings',) + > VimCommand +! vim.command(1):TypeError:('must be string, not int',) + > VimToPython + > VimEval +! vim.eval(1):TypeError:('must be string, not int',) + > VimEvalPy +! vim.bindeval(1):TypeError:('must be string, not int',) + > VimStrwidth +! vim.strwidth(1):TypeError:('must be string, not int',) + > Dictionary + >> DictionaryConstructor +! vim.Dictionary("abc"):ValueError:('expected sequence element of size 2',) + >> DictionarySetattr +! del d.locked:AttributeError:('cannot delete vim.Dictionary attributes',) +! d.locked = FailingTrue():NotImplementedError:() +! vim.vvars.locked = False:TypeError:('cannot modify fixed dictionary',) +! d.scope = True:AttributeError:('cannot set this attribute',) +! d.xxx = True:AttributeError:('cannot set this attribute',) + >> _DictionaryItem +! d.get("a", 2, 3):TypeError:('function takes at most 2 arguments (3 given)',) + >>> Testing StringToChars using d.get(%s) +! d.get(1):TypeError:('object must be string',) +! d.get(u"\0"):TypeError:('expected string without null bytes',) +! d.get("\0"):TypeError:('expected string without null bytes',) + <<< Finished +! d.pop("a"):KeyError:('a',) +! dl.pop("a"):error:('dict is locked',) + >> DictionaryIterNext +! for i in ned: ned["a"] = 1:RuntimeError:('hashtab changed during iteration',) + >> DictionaryAssItem +! dl["b"] = 1:error:('dict is locked',) + >>> Testing StringToChars using d[%s] = 1 +! d[1] = 1:TypeError:('object must be string',) +! d[u"\0"] = 1:TypeError:('expected string without null bytes',) +! d["\0"] = 1:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d["a"] = {%s : 1} +! d["a"] = {1 : 1}:TypeError:('object must be string',) +! d["a"] = {u"\0" : 1}:TypeError:('expected string without null bytes',) +! d["a"] = {"\0" : 1}:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d["a"] = {"abc" : {%s : 1}} +! d["a"] = {"abc" : {1 : 1}}:TypeError:('object must be string',) +! d["a"] = {"abc" : {u"\0" : 1}}:TypeError:('expected string without null bytes',) +! d["a"] = {"abc" : {"\0" : 1}}:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d["a"] = {"abc" : Mapping({%s : 1})} +! d["a"] = {"abc" : Mapping({1 : 1})}:TypeError:('object must be string',) +! d["a"] = {"abc" : Mapping({u"\0" : 1})}:TypeError:('expected string without null bytes',) +! d["a"] = {"abc" : Mapping({"\0" : 1})}:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using d["a"] = {"abc" : %s} +! d["a"] = {"abc" : FailingIter()}:TypeError:('unable to convert to vim structure',) +! d["a"] = {"abc" : FailingIterNext()}:NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d["a"] = {"abc" : %s} +! d["a"] = {"abc" : None}:TypeError:('unable to convert to vim structure',) +! d["a"] = {"abc" : {"": 1}}:ValueError:('empty keys are not allowed',) +! d["a"] = {"abc" : {u"": 1}}:ValueError:('empty keys are not allowed',) +! d["a"] = {"abc" : FailingMapping()}:NotImplementedError:() +! d["a"] = {"abc" : FailingMappingKey()}:NotImplementedError:() + <<< Finished + >>> Testing StringToChars using d["a"] = Mapping({%s : 1}) +! d["a"] = Mapping({1 : 1}):TypeError:('object must be string',) +! d["a"] = Mapping({u"\0" : 1}):TypeError:('expected string without null bytes',) +! d["a"] = Mapping({"\0" : 1}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d["a"] = Mapping({"abc" : {%s : 1}}) +! d["a"] = Mapping({"abc" : {1 : 1}}):TypeError:('object must be string',) +! d["a"] = Mapping({"abc" : {u"\0" : 1}}):TypeError:('expected string without null bytes',) +! d["a"] = Mapping({"abc" : {"\0" : 1}}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d["a"] = Mapping({"abc" : Mapping({%s : 1})}) +! d["a"] = Mapping({"abc" : Mapping({1 : 1})}):TypeError:('object must be string',) +! d["a"] = Mapping({"abc" : Mapping({u"\0" : 1})}):TypeError:('expected string without null bytes',) +! d["a"] = Mapping({"abc" : Mapping({"\0" : 1})}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using d["a"] = Mapping({"abc" : %s}) +! d["a"] = Mapping({"abc" : FailingIter()}):TypeError:('unable to convert to vim structure',) +! d["a"] = Mapping({"abc" : FailingIterNext()}):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d["a"] = Mapping({"abc" : %s}) +! d["a"] = Mapping({"abc" : None}):TypeError:('unable to convert to vim structure',) +! d["a"] = Mapping({"abc" : {"": 1}}):ValueError:('empty keys are not allowed',) +! d["a"] = Mapping({"abc" : {u"": 1}}):ValueError:('empty keys are not allowed',) +! d["a"] = Mapping({"abc" : FailingMapping()}):NotImplementedError:() +! d["a"] = Mapping({"abc" : FailingMappingKey()}):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using d["a"] = %s +! d["a"] = FailingIter():TypeError:('unable to convert to vim structure',) +! d["a"] = FailingIterNext():NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d["a"] = %s +! d["a"] = None:TypeError:('unable to convert to vim structure',) +! d["a"] = {"": 1}:ValueError:('empty keys are not allowed',) +! d["a"] = {u"": 1}:ValueError:('empty keys are not allowed',) +! d["a"] = FailingMapping():NotImplementedError:() +! d["a"] = FailingMappingKey():NotImplementedError:() + <<< Finished + >> DictionaryUpdate + >>> kwargs + >>> iter +! d.update(FailingMapping()):NotImplementedError:() +! d.update([FailingIterNext()]):NotImplementedError:() + >>> Testing StringToChars using d.update({%s : 1}) +! d.update({1 : 1}):TypeError:('object must be string',) +! d.update({u"\0" : 1}):TypeError:('expected string without null bytes',) +! d.update({"\0" : 1}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update({"abc" : {%s : 1}}) +! d.update({"abc" : {1 : 1}}):TypeError:('object must be string',) +! d.update({"abc" : {u"\0" : 1}}):TypeError:('expected string without null bytes',) +! d.update({"abc" : {"\0" : 1}}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update({"abc" : Mapping({%s : 1})}) +! d.update({"abc" : Mapping({1 : 1})}):TypeError:('object must be string',) +! d.update({"abc" : Mapping({u"\0" : 1})}):TypeError:('expected string without null bytes',) +! d.update({"abc" : Mapping({"\0" : 1})}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using d.update({"abc" : %s}) +! d.update({"abc" : FailingIter()}):TypeError:('unable to convert to vim structure',) +! d.update({"abc" : FailingIterNext()}):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d.update({"abc" : %s}) +! d.update({"abc" : None}):TypeError:('unable to convert to vim structure',) +! d.update({"abc" : {"": 1}}):ValueError:('empty keys are not allowed',) +! d.update({"abc" : {u"": 1}}):ValueError:('empty keys are not allowed',) +! d.update({"abc" : FailingMapping()}):NotImplementedError:() +! d.update({"abc" : FailingMappingKey()}):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using d.update(Mapping({%s : 1})) +! d.update(Mapping({1 : 1})):TypeError:('object must be string',) +! d.update(Mapping({u"\0" : 1})):TypeError:('expected string without null bytes',) +! d.update(Mapping({"\0" : 1})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update(Mapping({"abc" : {%s : 1}})) +! d.update(Mapping({"abc" : {1 : 1}})):TypeError:('object must be string',) +! d.update(Mapping({"abc" : {u"\0" : 1}})):TypeError:('expected string without null bytes',) +! d.update(Mapping({"abc" : {"\0" : 1}})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update(Mapping({"abc" : Mapping({%s : 1})})) +! d.update(Mapping({"abc" : Mapping({1 : 1})})):TypeError:('object must be string',) +! d.update(Mapping({"abc" : Mapping({u"\0" : 1})})):TypeError:('expected string without null bytes',) +! d.update(Mapping({"abc" : Mapping({"\0" : 1})})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using d.update(Mapping({"abc" : %s})) +! d.update(Mapping({"abc" : FailingIter()})):TypeError:('unable to convert to vim structure',) +! d.update(Mapping({"abc" : FailingIterNext()})):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d.update(Mapping({"abc" : %s})) +! d.update(Mapping({"abc" : None})):TypeError:('unable to convert to vim structure',) +! d.update(Mapping({"abc" : {"": 1}})):ValueError:('empty keys are not allowed',) +! d.update(Mapping({"abc" : {u"": 1}})):ValueError:('empty keys are not allowed',) +! d.update(Mapping({"abc" : FailingMapping()})):NotImplementedError:() +! d.update(Mapping({"abc" : FailingMappingKey()})):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using d.update(%s) +! d.update(FailingIter()):NotImplementedError:() +! d.update(FailingIterNext()):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d.update(%s) +! d.update(None):TypeError:("'NoneType' object is not iterable",) +! d.update({"": 1}):ValueError:('empty keys are not allowed',) +! d.update({u"": 1}):ValueError:('empty keys are not allowed',) +! d.update(FailingMapping()):NotImplementedError:() +! d.update(FailingMappingKey()):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using d.update(((%s, 0),)) +! d.update(((1, 0),)):TypeError:('object must be string',) +! d.update(((u"\0", 0),)):TypeError:('expected string without null bytes',) +! d.update((("\0", 0),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update((("a", {%s : 1}),)) +! d.update((("a", {1 : 1}),)):TypeError:('object must be string',) +! d.update((("a", {u"\0" : 1}),)):TypeError:('expected string without null bytes',) +! d.update((("a", {"\0" : 1}),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update((("a", {"abc" : {%s : 1}}),)) +! d.update((("a", {"abc" : {1 : 1}}),)):TypeError:('object must be string',) +! d.update((("a", {"abc" : {u"\0" : 1}}),)):TypeError:('expected string without null bytes',) +! d.update((("a", {"abc" : {"\0" : 1}}),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update((("a", {"abc" : Mapping({%s : 1})}),)) +! d.update((("a", {"abc" : Mapping({1 : 1})}),)):TypeError:('object must be string',) +! d.update((("a", {"abc" : Mapping({u"\0" : 1})}),)):TypeError:('expected string without null bytes',) +! d.update((("a", {"abc" : Mapping({"\0" : 1})}),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using d.update((("a", {"abc" : %s}),)) +! d.update((("a", {"abc" : FailingIter()}),)):TypeError:('unable to convert to vim structure',) +! d.update((("a", {"abc" : FailingIterNext()}),)):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d.update((("a", {"abc" : %s}),)) +! d.update((("a", {"abc" : None}),)):TypeError:('unable to convert to vim structure',) +! d.update((("a", {"abc" : {"": 1}}),)):ValueError:('empty keys are not allowed',) +! d.update((("a", {"abc" : {u"": 1}}),)):ValueError:('empty keys are not allowed',) +! d.update((("a", {"abc" : FailingMapping()}),)):NotImplementedError:() +! d.update((("a", {"abc" : FailingMappingKey()}),)):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using d.update((("a", Mapping({%s : 1})),)) +! d.update((("a", Mapping({1 : 1})),)):TypeError:('object must be string',) +! d.update((("a", Mapping({u"\0" : 1})),)):TypeError:('expected string without null bytes',) +! d.update((("a", Mapping({"\0" : 1})),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update((("a", Mapping({"abc" : {%s : 1}})),)) +! d.update((("a", Mapping({"abc" : {1 : 1}})),)):TypeError:('object must be string',) +! d.update((("a", Mapping({"abc" : {u"\0" : 1}})),)):TypeError:('expected string without null bytes',) +! d.update((("a", Mapping({"abc" : {"\0" : 1}})),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using d.update((("a", Mapping({"abc" : Mapping({%s : 1})})),)) +! d.update((("a", Mapping({"abc" : Mapping({1 : 1})})),)):TypeError:('object must be string',) +! d.update((("a", Mapping({"abc" : Mapping({u"\0" : 1})})),)):TypeError:('expected string without null bytes',) +! d.update((("a", Mapping({"abc" : Mapping({"\0" : 1})})),)):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using d.update((("a", Mapping({"abc" : %s})),)) +! d.update((("a", Mapping({"abc" : FailingIter()})),)):TypeError:('unable to convert to vim structure',) +! d.update((("a", Mapping({"abc" : FailingIterNext()})),)):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d.update((("a", Mapping({"abc" : %s})),)) +! d.update((("a", Mapping({"abc" : None})),)):TypeError:('unable to convert to vim structure',) +! d.update((("a", Mapping({"abc" : {"": 1}})),)):ValueError:('empty keys are not allowed',) +! d.update((("a", Mapping({"abc" : {u"": 1}})),)):ValueError:('empty keys are not allowed',) +! d.update((("a", Mapping({"abc" : FailingMapping()})),)):NotImplementedError:() +! d.update((("a", Mapping({"abc" : FailingMappingKey()})),)):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using d.update((("a", %s),)) +! d.update((("a", FailingIter()),)):TypeError:('unable to convert to vim structure',) +! d.update((("a", FailingIterNext()),)):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using d.update((("a", %s),)) +! d.update((("a", None),)):TypeError:('unable to convert to vim structure',) +! d.update((("a", {"": 1}),)):ValueError:('empty keys are not allowed',) +! d.update((("a", {u"": 1}),)):ValueError:('empty keys are not allowed',) +! d.update((("a", FailingMapping()),)):NotImplementedError:() +! d.update((("a", FailingMappingKey()),)):NotImplementedError:() + <<< Finished + >> DictionaryPopItem +! d.popitem(1, 2):TypeError:('popitem() takes no arguments (2 given)',) + >> DictionaryHasKey +! d.has_key():TypeError:('function takes exactly 1 argument (0 given)',) + > List + >> ListConstructor +! vim.List(1, 2):TypeError:('function takes at most 1 argument (2 given)',) +! vim.List(a=1):TypeError:('list constructor does not accept keyword arguments',) + >>> Testing StringToChars using vim.List([{%s : 1}]) +! vim.List([{1 : 1}]):TypeError:('object must be string',) +! vim.List([{u"\0" : 1}]):TypeError:('expected string without null bytes',) +! vim.List([{"\0" : 1}]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using vim.List([{"abc" : {%s : 1}}]) +! vim.List([{"abc" : {1 : 1}}]):TypeError:('object must be string',) +! vim.List([{"abc" : {u"\0" : 1}}]):TypeError:('expected string without null bytes',) +! vim.List([{"abc" : {"\0" : 1}}]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using vim.List([{"abc" : Mapping({%s : 1})}]) +! vim.List([{"abc" : Mapping({1 : 1})}]):TypeError:('object must be string',) +! vim.List([{"abc" : Mapping({u"\0" : 1})}]):TypeError:('expected string without null bytes',) +! vim.List([{"abc" : Mapping({"\0" : 1})}]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using vim.List([{"abc" : %s}]) +! vim.List([{"abc" : FailingIter()}]):TypeError:('unable to convert to vim structure',) +! vim.List([{"abc" : FailingIterNext()}]):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using vim.List([{"abc" : %s}]) +! vim.List([{"abc" : None}]):TypeError:('unable to convert to vim structure',) +! vim.List([{"abc" : {"": 1}}]):ValueError:('empty keys are not allowed',) +! vim.List([{"abc" : {u"": 1}}]):ValueError:('empty keys are not allowed',) +! vim.List([{"abc" : FailingMapping()}]):NotImplementedError:() +! vim.List([{"abc" : FailingMappingKey()}]):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using vim.List([Mapping({%s : 1})]) +! vim.List([Mapping({1 : 1})]):TypeError:('object must be string',) +! vim.List([Mapping({u"\0" : 1})]):TypeError:('expected string without null bytes',) +! vim.List([Mapping({"\0" : 1})]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using vim.List([Mapping({"abc" : {%s : 1}})]) +! vim.List([Mapping({"abc" : {1 : 1}})]):TypeError:('object must be string',) +! vim.List([Mapping({"abc" : {u"\0" : 1}})]):TypeError:('expected string without null bytes',) +! vim.List([Mapping({"abc" : {"\0" : 1}})]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using vim.List([Mapping({"abc" : Mapping({%s : 1})})]) +! vim.List([Mapping({"abc" : Mapping({1 : 1})})]):TypeError:('object must be string',) +! vim.List([Mapping({"abc" : Mapping({u"\0" : 1})})]):TypeError:('expected string without null bytes',) +! vim.List([Mapping({"abc" : Mapping({"\0" : 1})})]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using vim.List([Mapping({"abc" : %s})]) +! vim.List([Mapping({"abc" : FailingIter()})]):TypeError:('unable to convert to vim structure',) +! vim.List([Mapping({"abc" : FailingIterNext()})]):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using vim.List([Mapping({"abc" : %s})]) +! vim.List([Mapping({"abc" : None})]):TypeError:('unable to convert to vim structure',) +! vim.List([Mapping({"abc" : {"": 1}})]):ValueError:('empty keys are not allowed',) +! vim.List([Mapping({"abc" : {u"": 1}})]):ValueError:('empty keys are not allowed',) +! vim.List([Mapping({"abc" : FailingMapping()})]):NotImplementedError:() +! vim.List([Mapping({"abc" : FailingMappingKey()})]):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using vim.List([%s]) +! vim.List([FailingIter()]):TypeError:('unable to convert to vim structure',) +! vim.List([FailingIterNext()]):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using vim.List([%s]) +! vim.List([None]):TypeError:('unable to convert to vim structure',) +! vim.List([{"": 1}]):ValueError:('empty keys are not allowed',) +! vim.List([{u"": 1}]):ValueError:('empty keys are not allowed',) +! vim.List([FailingMapping()]):NotImplementedError:() +! vim.List([FailingMappingKey()]):NotImplementedError:() + <<< Finished + >> ListItem +! l[1000]:IndexError:('list index out of range',) + >> ListAssItem +! ll[1] = 2:error:('list is locked',) +! l[1000] = 3:IndexError:('list index out of range',) + >> ListAssSlice +! ll[1:100] = "abc":error:('list is locked',) + >>> Testing StringToChars using l[:] = [{%s : 1}] +! l[:] = [{1 : 1}]:TypeError:('object must be string',) +! l[:] = [{u"\0" : 1}]:TypeError:('expected string without null bytes',) +! l[:] = [{"\0" : 1}]:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l[:] = [{"abc" : {%s : 1}}] +! l[:] = [{"abc" : {1 : 1}}]:TypeError:('object must be string',) +! l[:] = [{"abc" : {u"\0" : 1}}]:TypeError:('expected string without null bytes',) +! l[:] = [{"abc" : {"\0" : 1}}]:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l[:] = [{"abc" : Mapping({%s : 1})}] +! l[:] = [{"abc" : Mapping({1 : 1})}]:TypeError:('object must be string',) +! l[:] = [{"abc" : Mapping({u"\0" : 1})}]:TypeError:('expected string without null bytes',) +! l[:] = [{"abc" : Mapping({"\0" : 1})}]:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using l[:] = [{"abc" : %s}] +! l[:] = [{"abc" : FailingIter()}]:TypeError:('unable to convert to vim structure',) +! l[:] = [{"abc" : FailingIterNext()}]:NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using l[:] = [{"abc" : %s}] +! l[:] = [{"abc" : None}]:TypeError:('unable to convert to vim structure',) +! l[:] = [{"abc" : {"": 1}}]:ValueError:('empty keys are not allowed',) +! l[:] = [{"abc" : {u"": 1}}]:ValueError:('empty keys are not allowed',) +! l[:] = [{"abc" : FailingMapping()}]:NotImplementedError:() +! l[:] = [{"abc" : FailingMappingKey()}]:NotImplementedError:() + <<< Finished + >>> Testing StringToChars using l[:] = [Mapping({%s : 1})] +! l[:] = [Mapping({1 : 1})]:TypeError:('object must be string',) +! l[:] = [Mapping({u"\0" : 1})]:TypeError:('expected string without null bytes',) +! l[:] = [Mapping({"\0" : 1})]:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l[:] = [Mapping({"abc" : {%s : 1}})] +! l[:] = [Mapping({"abc" : {1 : 1}})]:TypeError:('object must be string',) +! l[:] = [Mapping({"abc" : {u"\0" : 1}})]:TypeError:('expected string without null bytes',) +! l[:] = [Mapping({"abc" : {"\0" : 1}})]:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l[:] = [Mapping({"abc" : Mapping({%s : 1})})] +! l[:] = [Mapping({"abc" : Mapping({1 : 1})})]:TypeError:('object must be string',) +! l[:] = [Mapping({"abc" : Mapping({u"\0" : 1})})]:TypeError:('expected string without null bytes',) +! l[:] = [Mapping({"abc" : Mapping({"\0" : 1})})]:TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using l[:] = [Mapping({"abc" : %s})] +! l[:] = [Mapping({"abc" : FailingIter()})]:TypeError:('unable to convert to vim structure',) +! l[:] = [Mapping({"abc" : FailingIterNext()})]:NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using l[:] = [Mapping({"abc" : %s})] +! l[:] = [Mapping({"abc" : None})]:TypeError:('unable to convert to vim structure',) +! l[:] = [Mapping({"abc" : {"": 1}})]:ValueError:('empty keys are not allowed',) +! l[:] = [Mapping({"abc" : {u"": 1}})]:ValueError:('empty keys are not allowed',) +! l[:] = [Mapping({"abc" : FailingMapping()})]:NotImplementedError:() +! l[:] = [Mapping({"abc" : FailingMappingKey()})]:NotImplementedError:() + <<< Finished + >>> Testing *Iter* using l[:] = [%s] +! l[:] = [FailingIter()]:TypeError:('unable to convert to vim structure',) +! l[:] = [FailingIterNext()]:NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using l[:] = [%s] +! l[:] = [None]:TypeError:('unable to convert to vim structure',) +! l[:] = [{"": 1}]:ValueError:('empty keys are not allowed',) +! l[:] = [{u"": 1}]:ValueError:('empty keys are not allowed',) +! l[:] = [FailingMapping()]:NotImplementedError:() +! l[:] = [FailingMappingKey()]:NotImplementedError:() + <<< Finished + >> ListConcatInPlace + >>> Testing StringToChars using l.extend([{%s : 1}]) +! l.extend([{1 : 1}]):TypeError:('object must be string',) +! l.extend([{u"\0" : 1}]):TypeError:('expected string without null bytes',) +! l.extend([{"\0" : 1}]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l.extend([{"abc" : {%s : 1}}]) +! l.extend([{"abc" : {1 : 1}}]):TypeError:('object must be string',) +! l.extend([{"abc" : {u"\0" : 1}}]):TypeError:('expected string without null bytes',) +! l.extend([{"abc" : {"\0" : 1}}]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l.extend([{"abc" : Mapping({%s : 1})}]) +! l.extend([{"abc" : Mapping({1 : 1})}]):TypeError:('object must be string',) +! l.extend([{"abc" : Mapping({u"\0" : 1})}]):TypeError:('expected string without null bytes',) +! l.extend([{"abc" : Mapping({"\0" : 1})}]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using l.extend([{"abc" : %s}]) +! l.extend([{"abc" : FailingIter()}]):TypeError:('unable to convert to vim structure',) +! l.extend([{"abc" : FailingIterNext()}]):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using l.extend([{"abc" : %s}]) +! l.extend([{"abc" : None}]):TypeError:('unable to convert to vim structure',) +! l.extend([{"abc" : {"": 1}}]):ValueError:('empty keys are not allowed',) +! l.extend([{"abc" : {u"": 1}}]):ValueError:('empty keys are not allowed',) +! l.extend([{"abc" : FailingMapping()}]):NotImplementedError:() +! l.extend([{"abc" : FailingMappingKey()}]):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using l.extend([Mapping({%s : 1})]) +! l.extend([Mapping({1 : 1})]):TypeError:('object must be string',) +! l.extend([Mapping({u"\0" : 1})]):TypeError:('expected string without null bytes',) +! l.extend([Mapping({"\0" : 1})]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l.extend([Mapping({"abc" : {%s : 1}})]) +! l.extend([Mapping({"abc" : {1 : 1}})]):TypeError:('object must be string',) +! l.extend([Mapping({"abc" : {u"\0" : 1}})]):TypeError:('expected string without null bytes',) +! l.extend([Mapping({"abc" : {"\0" : 1}})]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using l.extend([Mapping({"abc" : Mapping({%s : 1})})]) +! l.extend([Mapping({"abc" : Mapping({1 : 1})})]):TypeError:('object must be string',) +! l.extend([Mapping({"abc" : Mapping({u"\0" : 1})})]):TypeError:('expected string without null bytes',) +! l.extend([Mapping({"abc" : Mapping({"\0" : 1})})]):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using l.extend([Mapping({"abc" : %s})]) +! l.extend([Mapping({"abc" : FailingIter()})]):TypeError:('unable to convert to vim structure',) +! l.extend([Mapping({"abc" : FailingIterNext()})]):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using l.extend([Mapping({"abc" : %s})]) +! l.extend([Mapping({"abc" : None})]):TypeError:('unable to convert to vim structure',) +! l.extend([Mapping({"abc" : {"": 1}})]):ValueError:('empty keys are not allowed',) +! l.extend([Mapping({"abc" : {u"": 1}})]):ValueError:('empty keys are not allowed',) +! l.extend([Mapping({"abc" : FailingMapping()})]):NotImplementedError:() +! l.extend([Mapping({"abc" : FailingMappingKey()})]):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using l.extend([%s]) +! l.extend([FailingIter()]):TypeError:('unable to convert to vim structure',) +! l.extend([FailingIterNext()]):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using l.extend([%s]) +! l.extend([None]):TypeError:('unable to convert to vim structure',) +! l.extend([{"": 1}]):ValueError:('empty keys are not allowed',) +! l.extend([{u"": 1}]):ValueError:('empty keys are not allowed',) +! l.extend([FailingMapping()]):NotImplementedError:() +! l.extend([FailingMappingKey()]):NotImplementedError:() + <<< Finished + >> ListSetattr +! del l.locked:AttributeError:('cannot delete vim.List attributes',) +! l.locked = FailingTrue():NotImplementedError:() +! l.xxx = True:AttributeError:('cannot set this attribute',) + > Function + >> FunctionConstructor +! vim.Function("123"):ValueError:('unnamed function does not exist',) +! vim.Function("xxx_non_existent_function_xxx"):ValueError:('function does not exist',) + vim.Function("xxx#non#existent#function#xxx"):NOT FAILED + >> FunctionCall + >>> Testing StringToChars using f({%s : 1}) +! f({1 : 1}):TypeError:('object must be string',) +! f({u"\0" : 1}):TypeError:('expected string without null bytes',) +! f({"\0" : 1}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using f({"abc" : {%s : 1}}) +! f({"abc" : {1 : 1}}):TypeError:('object must be string',) +! f({"abc" : {u"\0" : 1}}):TypeError:('expected string without null bytes',) +! f({"abc" : {"\0" : 1}}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using f({"abc" : Mapping({%s : 1})}) +! f({"abc" : Mapping({1 : 1})}):TypeError:('object must be string',) +! f({"abc" : Mapping({u"\0" : 1})}):TypeError:('expected string without null bytes',) +! f({"abc" : Mapping({"\0" : 1})}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using f({"abc" : %s}) +! f({"abc" : FailingIter()}):TypeError:('unable to convert to vim structure',) +! f({"abc" : FailingIterNext()}):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using f({"abc" : %s}) +! f({"abc" : None}):TypeError:('unable to convert to vim structure',) +! f({"abc" : {"": 1}}):ValueError:('empty keys are not allowed',) +! f({"abc" : {u"": 1}}):ValueError:('empty keys are not allowed',) +! f({"abc" : FailingMapping()}):NotImplementedError:() +! f({"abc" : FailingMappingKey()}):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using f(Mapping({%s : 1})) +! f(Mapping({1 : 1})):TypeError:('object must be string',) +! f(Mapping({u"\0" : 1})):TypeError:('expected string without null bytes',) +! f(Mapping({"\0" : 1})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using f(Mapping({"abc" : {%s : 1}})) +! f(Mapping({"abc" : {1 : 1}})):TypeError:('object must be string',) +! f(Mapping({"abc" : {u"\0" : 1}})):TypeError:('expected string without null bytes',) +! f(Mapping({"abc" : {"\0" : 1}})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using f(Mapping({"abc" : Mapping({%s : 1})})) +! f(Mapping({"abc" : Mapping({1 : 1})})):TypeError:('object must be string',) +! f(Mapping({"abc" : Mapping({u"\0" : 1})})):TypeError:('expected string without null bytes',) +! f(Mapping({"abc" : Mapping({"\0" : 1})})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using f(Mapping({"abc" : %s})) +! f(Mapping({"abc" : FailingIter()})):TypeError:('unable to convert to vim structure',) +! f(Mapping({"abc" : FailingIterNext()})):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using f(Mapping({"abc" : %s})) +! f(Mapping({"abc" : None})):TypeError:('unable to convert to vim structure',) +! f(Mapping({"abc" : {"": 1}})):ValueError:('empty keys are not allowed',) +! f(Mapping({"abc" : {u"": 1}})):ValueError:('empty keys are not allowed',) +! f(Mapping({"abc" : FailingMapping()})):NotImplementedError:() +! f(Mapping({"abc" : FailingMappingKey()})):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using f(%s) +! f(FailingIter()):TypeError:('unable to convert to vim structure',) +! f(FailingIterNext()):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using f(%s) +! f(None):TypeError:('unable to convert to vim structure',) +! f({"": 1}):ValueError:('empty keys are not allowed',) +! f({u"": 1}):ValueError:('empty keys are not allowed',) +! f(FailingMapping()):NotImplementedError:() +! f(FailingMappingKey()):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using fd(self={%s : 1}) +! fd(self={1 : 1}):TypeError:('object must be string',) +! fd(self={u"\0" : 1}):TypeError:('expected string without null bytes',) +! fd(self={"\0" : 1}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using fd(self={"abc" : {%s : 1}}) +! fd(self={"abc" : {1 : 1}}):TypeError:('object must be string',) +! fd(self={"abc" : {u"\0" : 1}}):TypeError:('expected string without null bytes',) +! fd(self={"abc" : {"\0" : 1}}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using fd(self={"abc" : Mapping({%s : 1})}) +! fd(self={"abc" : Mapping({1 : 1})}):TypeError:('object must be string',) +! fd(self={"abc" : Mapping({u"\0" : 1})}):TypeError:('expected string without null bytes',) +! fd(self={"abc" : Mapping({"\0" : 1})}):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using fd(self={"abc" : %s}) +! fd(self={"abc" : FailingIter()}):TypeError:('unable to convert to vim structure',) +! fd(self={"abc" : FailingIterNext()}):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using fd(self={"abc" : %s}) +! fd(self={"abc" : None}):TypeError:('unable to convert to vim structure',) +! fd(self={"abc" : {"": 1}}):ValueError:('empty keys are not allowed',) +! fd(self={"abc" : {u"": 1}}):ValueError:('empty keys are not allowed',) +! fd(self={"abc" : FailingMapping()}):NotImplementedError:() +! fd(self={"abc" : FailingMappingKey()}):NotImplementedError:() + <<< Finished + >>> Testing StringToChars using fd(self=Mapping({%s : 1})) +! fd(self=Mapping({1 : 1})):TypeError:('object must be string',) +! fd(self=Mapping({u"\0" : 1})):TypeError:('expected string without null bytes',) +! fd(self=Mapping({"\0" : 1})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using fd(self=Mapping({"abc" : {%s : 1}})) +! fd(self=Mapping({"abc" : {1 : 1}})):TypeError:('object must be string',) +! fd(self=Mapping({"abc" : {u"\0" : 1}})):TypeError:('expected string without null bytes',) +! fd(self=Mapping({"abc" : {"\0" : 1}})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing StringToChars using fd(self=Mapping({"abc" : Mapping({%s : 1})})) +! fd(self=Mapping({"abc" : Mapping({1 : 1})})):TypeError:('object must be string',) +! fd(self=Mapping({"abc" : Mapping({u"\0" : 1})})):TypeError:('expected string without null bytes',) +! fd(self=Mapping({"abc" : Mapping({"\0" : 1})})):TypeError:('expected string without null bytes',) + <<< Finished + >>> Testing *Iter* using fd(self=Mapping({"abc" : %s})) +! fd(self=Mapping({"abc" : FailingIter()})):TypeError:('unable to convert to vim structure',) +! fd(self=Mapping({"abc" : FailingIterNext()})):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyObject using fd(self=Mapping({"abc" : %s})) +! fd(self=Mapping({"abc" : None})):TypeError:('unable to convert to vim structure',) +! fd(self=Mapping({"abc" : {"": 1}})):ValueError:('empty keys are not allowed',) +! fd(self=Mapping({"abc" : {u"": 1}})):ValueError:('empty keys are not allowed',) +! fd(self=Mapping({"abc" : FailingMapping()})):NotImplementedError:() +! fd(self=Mapping({"abc" : FailingMappingKey()})):NotImplementedError:() + <<< Finished + >>> Testing *Iter* using fd(self=%s) +! fd(self=FailingIter()):TypeError:('unable to convert object to vim dictionary',) +! fd(self=FailingIterNext()):TypeError:('unable to convert object to vim dictionary',) + <<< Finished + >>> Testing ConvertFromPyObject using fd(self=%s) +! fd(self=None):TypeError:('unable to convert object to vim dictionary',) +! fd(self={"": 1}):ValueError:('empty keys are not allowed',) +! fd(self={u"": 1}):ValueError:('empty keys are not allowed',) +! fd(self=FailingMapping()):NotImplementedError:() +! fd(self=FailingMappingKey()):NotImplementedError:() + <<< Finished + >>> Testing ConvertFromPyMapping using fd(self=%s) +! fd(self=[]):TypeError:('unable to convert object to vim dictionary',) + <<< Finished + > TabPage + >> TabPageAttr +! vim.current.tabpage.xxx:AttributeError:('xxx',) + > TabList + >> TabListItem +! vim.tabpages[1000]:IndexError:('no such tab page',) + > Window + >> WindowAttr +! vim.current.window.xxx:AttributeError:('xxx',) + >> WindowSetattr +! vim.current.window.buffer = 0:TypeError:('readonly attribute',) +! vim.current.window.cursor = (100000000, 100000000):error:('cursor position outside buffer',) +! vim.current.window.cursor = True:TypeError:('argument must be 2-item sequence, not bool',) +! vim.current.window.height = "abc":TypeError:('an integer is required',) +! vim.current.window.width = "abc":TypeError:('an integer is required',) +! vim.current.window.xxxxxx = True:AttributeError:('xxxxxx',) + > WinList + >> WinListItem +! vim.windows[1000]:IndexError:('no such window',) + > Buffer + >> StringToLine (indirect) +! vim.current.buffer[0] = "\na":error:('string cannot contain newlines',) + >> SetBufferLine (indirect) +! vim.current.buffer[0] = True:TypeError:('bad argument type for built-in operation',) + >> SetBufferLines (indirect) +! vim.current.buffer[:] = True:TypeError:('bad argument type for built-in operation',) +! vim.current.buffer[:] = ["\na", "bc"]:error:('string cannot contain newlines',) + >> InsertBufferLines (indirect) +! vim.current.buffer.append(None):TypeError:('bad argument type for built-in operation',) +! vim.current.buffer.append(["\na", "bc"]):error:('string cannot contain newlines',) +! vim.current.buffer.append("\nbc"):error:('string cannot contain newlines',) + >> RBItem +! vim.current.buffer[100000000]:IndexError:('line number out of range',) + >> RBAsItem +! vim.current.buffer[100000000] = "":IndexError:('line number out of range',) + >> BufferAttr +! vim.current.buffer.xxx:AttributeError:('xxx',) + >> BufferSetattr +! vim.current.buffer.name = True:TypeError:('object must be string',) +! vim.current.buffer.xxx = True:AttributeError:('xxx',) + >> BufferMark +! vim.current.buffer.mark(0):TypeError:('must be string, not int',) +! vim.current.buffer.mark("abc"):ValueError:('mark name must be a single character',) +! vim.current.buffer.mark("!"):error:('invalid mark name',) + >> BufferRange +! vim.current.buffer.range(1, 2, 3):TypeError:('function takes exactly 2 arguments (3 given)',) + > BufMap + >> BufMapItem +! vim.buffers[None]:TypeError:('key must be integer',) +! vim.buffers[100000000]:KeyError:(100000000,) + > Current + >> CurrentGetattr +! vim.current.xxx:AttributeError:('xxx',) + >> CurrentSetattr +! vim.current.line = True:TypeError:('bad argument type for built-in operation',) +! vim.current.buffer = True:TypeError:('expected vim.Buffer object',) +! vim.current.window = True:TypeError:('expected vim.Window object',) +! vim.current.tabpage = True:TypeError:('expected vim.TabPage object',) +! vim.current.xxx = True:AttributeError:('xxx',) + 2,xx + before + after +! vim.command("throw 'abc'"):error:('abc',) +! Exe("throw 'def'"):error:('def',) +! vim.eval("Exe('throw ''ghi''')"):error:('ghi',) +! vim.eval("Exe('echoerr ''jkl''')"):error:('Vim(echoerr):jkl',) +! vim.eval("Exe('xxx_non_existent_command_xxx')"):error:('Vim:E492: Not an editor command: xxx_non_existent_command_xxx',) +! vim.bindeval("Exe('xxx_non_existent_command_xxx')"):error:('Vim:E492: Not an editor command: xxx_non_existent_command_xxx',) +*** ../vim-7.3.1172/src/version.c 2013-06-12 14:20:15.000000000 +0200 +--- src/version.c 2013-06-12 14:22:25.000000000 +0200 +*************** +*** 730,731 **** +--- 730,733 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 1173, + /**/ + +-- +hundred-and-one symptoms of being an internet addict: +168. You have your own domain name. + + /// 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 ///