30 lines
629 B
Lua
30 lines
629 B
Lua
local CodeWriter = require 'tt.codewriter'
|
|
|
|
describe('CodeWriter', function()
|
|
it('should write with indentation', function()
|
|
local cw = CodeWriter.new()
|
|
cw:write '{'
|
|
cw:indent(function(cw2) cw2:write 'x: 123' end)
|
|
cw:write '}'
|
|
|
|
assert.are.same(cw.lines, { '{', ' x: 123', '}' })
|
|
end)
|
|
|
|
it('should keep relative indentation', function()
|
|
local cw = CodeWriter.new()
|
|
cw:write '{'
|
|
cw:indent(function(cw2)
|
|
cw2:write 'x: 123'
|
|
cw2:write ' y: 123'
|
|
end)
|
|
cw:write '}'
|
|
|
|
assert.are.same(cw.lines, {
|
|
'{',
|
|
' x: 123',
|
|
' y: 123',
|
|
'}',
|
|
})
|
|
end)
|
|
end)
|