local Buffer = require 'tt.buffer' local withbuf = loadfile './spec/withbuf.lua'() describe('Buffer', function() it('should replace all lines', function() withbuf({}, function() local buf = Buffer.from_nr() buf:all():replace 'bleh' local actual_lines = vim.api.nvim_buf_get_lines(buf.buf, 0, -1, false) assert.are.same({ 'bleh' }, actual_lines) end) end) it('should replace all but first and last lines', function() withbuf({ 'one', 'two', 'three', }, function() local buf = Buffer.from_nr() buf:lines(1, -2):replace 'too' local actual_lines = vim.api.nvim_buf_get_lines(buf.buf, 0, -1, false) assert.are.same({ 'one', 'too', 'three', }, actual_lines) end) end) end)