diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2017-04-21 14:58:52 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2017-04-23 23:24:16 +0200 |
commit | 45240538742d6276ab25abe0d8b02550e1c68179 (patch) | |
tree | dfac49feb3e299357598a7c4697e2cd145fd311e | |
parent | 1fe8945748620713402cab77a46501ec5311778b (diff) | |
download | rneovim-45240538742d6276ab25abe0d8b02550e1c68179.tar.gz rneovim-45240538742d6276ab25abe0d8b02550e1c68179.tar.bz2 rneovim-45240538742d6276ab25abe0d8b02550e1c68179.zip |
test: api: Do not truncate errors <1 MB.
-rw-r--r-- | test/functional/api/vim_spec.lua | 9 | ||||
-rw-r--r-- | test/functional/ui/screen.lua | 5 |
2 files changed, 11 insertions, 3 deletions
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua index 8f9f155110..60f30dcfe6 100644 --- a/test/functional/api/vim_spec.lua +++ b/test/functional/api/vim_spec.lua @@ -412,7 +412,7 @@ describe('api', function() eq(5, meths.get_var('avar')) end) - it('throws error on malformated arguments', function() + it('throws error on malformed arguments', function() local req = { {'nvim_set_var', {'avar', 1}}, {'nvim_set_var'}, @@ -452,6 +452,13 @@ describe('api', function() ok(err:match('Invalid option name') ~= nil) end) + it('does not truncate error message <1 MB #5984', function() + local very_long_name = 'A'..('x'):rep(10000)..'Z' + local status, err = pcall(nvim, 'get_option', very_long_name) + eq(false, status) + eq(very_long_name, err:match('Ax+Z?')) + end) + it("doesn't leak memory on incorrect argument types", function() local status, err = pcall(nvim, 'set_current_dir',{'not', 'a', 'dir'}) eq(false, status) diff --git a/test/functional/ui/screen.lua b/test/functional/ui/screen.lua index bcf2a2e3d6..7d9cd6c026 100644 --- a/test/functional/ui/screen.lua +++ b/test/functional/ui/screen.lua @@ -312,12 +312,13 @@ function Screen:_redraw(updates) -- print(require('inspect')(update)) local method = update[1] for i = 2, #update do - local handler = self['_handle_'..method] + local handler_name = '_handle_'..method + local handler = self[handler_name] if handler ~= nil then handler(self, unpack(update[i])) else assert(self._on_event, - "Add Screen:_handle_XXX method or call Screen:set_on_event_handler") + "Add Screen:"..handler_name.." or call Screen:set_on_event_handler") self._on_event(method, update[i]) end end |