aboutsummaryrefslogtreecommitdiff
path: root/test/functional/provider/provider_spec.lua
blob: caed30ab0b876eba296122b3dc6385a30e993fbf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
local t = require('test.testutil')
local n = require('test.functional.testnvim')()

local clear, eval = n.clear, n.eval
local command = n.command
local eq = t.eq
local pcall_err = t.pcall_err

describe('providers', function()
  before_each(function()
    clear('--cmd', 'set rtp^=test/functional/fixtures')
  end)

  it('with #Call(), missing g:loaded_xx_provider', function()
    command('set loadplugins')
    -- Using test-fixture with broken impl:
    -- test/functional/fixtures/autoload/provider/python.vim
    eq(
      'Vim:provider: python3: missing required variable g:loaded_python3_provider',
      pcall_err(eval, "has('python3')")
    )
  end)

  it('with g:loaded_xx_provider, missing #Call()', function()
    -- Using test-fixture with broken impl:
    -- test/functional/fixtures/autoload/provider/ruby.vim
    eq(
      'Vim:provider: ruby: g:loaded_ruby_provider=2 but provider#ruby#Call is not defined',
      pcall_err(eval, "has('ruby')")
    )
  end)
end)