spell_spec.lua 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. local t = require('test.testutil')
  2. local n = require('test.functional.testnvim')()
  3. local clear = n.clear
  4. local exec_lua = n.exec_lua
  5. local eq = t.eq
  6. local pcall_err = t.pcall_err
  7. describe('vim.spell', function()
  8. before_each(function()
  9. clear()
  10. end)
  11. describe('.check', function()
  12. local check = function(x, exp)
  13. return eq(exp, exec_lua('return vim.spell.check(...)', x))
  14. end
  15. it('can handle nil', function()
  16. eq(
  17. [[bad argument #1 to 'check' (expected string)]],
  18. pcall_err(exec_lua, [[vim.spell.check(nil)]])
  19. )
  20. end)
  21. it('can check spellings', function()
  22. check('hello', {})
  23. check('helloi', { { 'helloi', 'bad', 1 } })
  24. check('hello therei', { { 'therei', 'bad', 7 } })
  25. check('hello. there', { { 'there', 'caps', 8 } })
  26. check('neovim cna chkc spellins. okay?', {
  27. { 'neovim', 'bad', 1 },
  28. { 'cna', 'bad', 8 },
  29. { 'chkc', 'bad', 12 },
  30. { 'spellins', 'bad', 17 },
  31. { 'okay', 'caps', 27 },
  32. })
  33. end)
  34. end)
  35. end)