Describe lsp#utils#buffer Before each % delete _ 0put ='foo' 1put ='bar' 3delete _ End After all % delete _ End Describe lsp#utils#buffer#_get_lines It adds a blank line when nobinary and fixendofline are set if !exists('+fixendofline') Skip This test requires 'fixendofline' endif setl nobinary setl fixendofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar', '']) End It adds a blank line when nobinary, nofixendofline, and endofline are set if !exists('+fixendofline') Skip This test requires 'fixendofline' endif setl nobinary setl nofixendofline setl endofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar', '']) End It adds a blank line when binary and endofline are set if !exists('+fixendofline') Skip This test requires 'fixendofline' endif setl binary setl endofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar', '']) End It does not add a blank line when nobinary, nofixendofline, and noendofline are set if !exists('+fixendofline') Skip This test requires 'fixendofline' endif setl nobinary setl nofixendofline setl noendofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar']) End It does not add a blank line when binary and noendofline are set if !exists('+fixendofline') Skip This test requires 'fixendofline' endif setl binary setl noendofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar']) End It adds a blank line when nobinary is set if exists('+fixendofline') Skip This test is not for 'fixendofline' endif setl nobinary Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar', '']) End It adds a blank line when binary and endofline are set if exists('+fixendofline') Skip This test is not for 'fixendofline' endif setl binary setl endofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar', '']) End It does not add a blank line when binary and noendofline are set if exists('+fixendofline') Skip This test is not for 'fixendofline' endif setl binary setl noendofline Assert Equals(lsp#utils#buffer#_get_lines(bufnr('$')), ['foo', 'bar']) End End Describe lsp#utils#buffer#get_indent_size It gets shiftwidth if set setl shiftwidth=4 setl tabstop=8 Assert Equals(lsp#utils#buffer#get_indent_size(bufnr('$')), 4) End It gets tabstop if shiftwidth not set setl shiftwidth=0 setl tabstop=12 Assert Equals(lsp#utils#buffer#get_indent_size(bufnr('$')), 12) End End End