gopher.nvim/spec/unit/struct_tag_test.lua(view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
local t = require "spec.testutils"
local _, T, st = t.setup "struct_tags"
st["should parse tags"] = function()
local out = require("gopher.struct_tags").parse_args { "json", "yaml", "etc" }
t.eq(out.tags, "json,yaml,etc")
t.eq(out.options, "")
end
st["should parse tags separated by commas"] = function()
local out = require("gopher.struct_tags").parse_args { "json,yaml,etc" }
t.eq(out.tags, "json,yaml,etc")
t.eq(out.options, "")
end
st["should parse tags separated by command and spaces"] = function()
local out = require("gopher.struct_tags").parse_args {
"json,yaml",
"json=omitempty",
"xml=something",
}
t.eq(out.tags, "json,yaml,xml")
t.eq(out.options, "json=omitempty,xml=something")
end
st["should parse tag with an option"] = function()
local out = require("gopher.struct_tags").parse_args {
"json=omitempty",
"xml",
"xml=theoption",
}
t.eq(out.tags, "json,xml")
t.eq(out.options, "json=omitempty,xml=theoption")
end
st["should parse tags with an option"] = function()
local out = require("gopher.struct_tags").parse_args { "json=omitempty", "yaml" }
t.eq(out.tags, "json,yaml")
t.eq(out.options, "json=omitempty")
end
st["should parse tags with an option separated with comma"] = function()
local out = require("gopher.struct_tags").parse_args { "json=omitempty,yaml" }
t.eq(out.tags, "json,yaml")
t.eq(out.options, "json=omitempty")
end
st["should parse tags with options specified separately"] = function()
local out = require("gopher.struct_tags").parse_args { "json", "yaml", "json=omitempty" }
t.eq(out.tags, "json,yaml")
t.eq(out.options, "json=omitempty")
end
st["should parse tags with options specified separately and separated by comma"] = function()
local out = require("gopher.struct_tags").parse_args { "json,yaml,json=omitempty" }
t.eq(out.tags, "json,yaml")
t.eq(out.options, "json=omitempty")
end
return T
|