local Util = require("lazy.util") local Cache = require("lazy.core.cache") local Helpers = require("tests.helpers") describe("util", function() before_each(function() Helpers.fs_rm("") end) it("lsmod lists all mods in dir", function() local tests = { { files = { "lua/foo/one.lua", "lua/foo/two.lua", "lua/foo/init.lua" }, mods = { "foo", "foo.one", "foo.two" }, }, { files = { "lua/foo/one.lua", "lua/foo/two.lua", "lua/foo.lua" }, mods = { "foo", "foo.one", "foo.two" }, }, { files = { "lua/foo/one.lua", "lua/foo/two.lua" }, mods = { "foo.one", "foo.two" }, }, } vim.opt.rtp:append(Helpers.path("")) for _, test in ipairs(tests) do Cache.cache = {} table.sort(test.mods) Helpers.fs_rm("") Helpers.fs_create(test.files) local mods = {} Util.lsmod("foo", function(modname, modpath) mods[#mods + 1] = modname end) table.sort(mods) assert.same(test.mods, mods) end end) end)