Initial sketch of automated indent tests

This commit is contained in:
Jędrzej Boczar 2021-03-13 22:46:45 +01:00 committed by Kiyan
parent eefa5662e6
commit 67f2c7149c
14 changed files with 257 additions and 0 deletions

View 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