diff --git a/tests/toml/test.toml b/tests/toml/test.toml new file mode 100644 index 0000000..3fe43f0 --- /dev/null +++ b/tests/toml/test.toml @@ -0,0 +1,23 @@ +# This is a TOML document + +title = "TOML Example" + +[owner] +name = "Tom Preston-Werner" +dob = 1979-05-27T07:32:00-08:00 + +[database] +enabled = true +ports = [ 8000, 8001, 8002 ] +data = [ ["delta", "phi"], [3.14] ] +temp_targets = { cpu = 79.5, case = 72.0 } + +[servers] + +[servers.alpha] +ip = "10.0.0.1" +role = "frontend" + +[servers.beta] +ip = "10.0.0.2" +role = "backend" diff --git a/tests/toml_spec.lua b/tests/toml_spec.lua new file mode 100644 index 0000000..6206b23 --- /dev/null +++ b/tests/toml_spec.lua @@ -0,0 +1,33 @@ +describe("toml", function() + local core = require("agrolens.core") + local buffers = nil + local eq = assert.equals + + it("load", function() + vim.cmd.edit("tests/toml/test.toml") + buffers = vim.api.nvim_list_bufs() + eq(#buffers, 1) + + local content = vim.api.nvim_buf_get_lines(buffers[1], 0, -1, false) + + -- make sure buffer has content + eq(string.match(content[1], "document"), "document") + + core.get_captures({ queries = { "functions" }, bufids = buffers }) + end) + + it("labels", function() + local entries = core.get_captures({ queries = { "labels" }, bufids = buffers }) + + eq(#entries, 5) + eq(entries[1].filename, "tests/toml/test.toml") + eq(entries[1].lnum, 5) + eq(entries[1].col, 0) + + eq(entries[1].line, "[owner]") + eq(entries[2].line, "[database]") + eq(entries[3].line, "[servers]") + eq(entries[4].line, "[servers.alpha]") + eq(entries[5].line, "[servers.beta]") + end) +end)