diff options
Diffstat (limited to 'test/functional/legacy/assert_spec.lua')
| -rw-r--r-- | test/functional/legacy/assert_spec.lua | 44 | 
1 files changed, 43 insertions, 1 deletions
| diff --git a/test/functional/legacy/assert_spec.lua b/test/functional/legacy/assert_spec.lua index 63699387c1..8da6ee45d7 100644 --- a/test/functional/legacy/assert_spec.lua +++ b/test/functional/legacy/assert_spec.lua @@ -1,4 +1,4 @@ -local helpers = require('test.functional.helpers') +local helpers = require('test.functional.helpers')(after_each)  local nvim, call = helpers.meths, helpers.call  local clear, eq = helpers.clear, helpers.eq  local source, execute = helpers.source, helpers.execute @@ -141,6 +141,18 @@ describe('assert function:', function()          tmpname_two .. " line 1: 'file two'",        })      end) + +    it('is reset to a list by assert functions', function() +      source([[ +        let save_verrors = v:errors +        let v:['errors'] = {'foo': 3} +        call assert_equal('yes', 'no') +        let verrors = v:errors +        let v:errors = save_verrors +        call assert_equal(type([]), type(verrors)) +      ]]) +      expected_empty() +    end)    end)    -- assert_fails({cmd}, [, {error}]) @@ -160,4 +172,34 @@ describe('assert function:', function()        expected_errors({'command did not fail: call empty("")'})      end)    end) + +  -- assert_exception({cmd}, [, {error}]) +  describe('assert_exception()', function() +    it('should assert thrown exceptions properly', function() +      source([[ +        try +          nocommand +        catch +          call assert_exception('E492') +        endtry +      ]]) +      expected_empty() +    end) + +    it('should work properly when nested', function() +      source([[ +        try +          nocommand +        catch +          try +            " illegal argument, get NULL for error +            call assert_exception([]) +          catch +            call assert_exception('E730') +          endtry +        endtry +      ]]) +      expected_empty() +    end) +  end)  end) | 
