mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-08 22:40:12 -04:00
Initial sketch of automated indent tests
This commit is contained in:
parent
eefa5662e6
commit
67f2c7149c
14 changed files with 257 additions and 0 deletions
25
lua/nvim-treesitter/test_utils.lua
Normal file
25
lua/nvim-treesitter/test_utils.lua
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
local M = {}
|
||||
|
||||
function M.indent_whole_file(file)
|
||||
assert.are.same(1, vim.fn.filereadable(file))
|
||||
|
||||
-- load reference file
|
||||
vim.cmd(string.format('edit %s', file))
|
||||
local reference = vim.api.nvim_buf_get_lines(0, 0, -1, true)
|
||||
|
||||
-- FIXME: why this is not set automatically?
|
||||
vim.bo.indentexpr = 'nvim_treesitter#indent()'
|
||||
assert.are.same('nvim_treesitter#indent()', vim.bo.indentexpr)
|
||||
|
||||
-- indent the whole file
|
||||
vim.cmd 'normal gg=G'
|
||||
local indented = vim.api.nvim_buf_get_lines(0, 0, -1, true)
|
||||
|
||||
-- clear any changes to avoid 'No write since last change (add ! to override)'
|
||||
vim.cmd 'edit!'
|
||||
|
||||
-- compare before and after
|
||||
assert.are.same(reference, indented)
|
||||
end
|
||||
|
||||
return M
|
||||
Loading…
Add table
Add a link
Reference in a new issue