tests
This commit is contained in:
parent
d3d51c1ef8
commit
395441bac3
8 changed files with 108 additions and 15 deletions
|
|
@ -1,22 +1,27 @@
|
|||
local M = {}
|
||||
local alt = {}
|
||||
|
||||
function M.is_test_file()
|
||||
function alt.is_test_file()
|
||||
local file = vim.fn.expand "%"
|
||||
|
||||
if #file <= 1 then
|
||||
vim.notify("no buffer name", vim.log.levels.ERROR)
|
||||
return nil, false, false
|
||||
end
|
||||
|
||||
local is_test = string.find(file, "_test%.go$")
|
||||
local is_source = string.find(file, "%.go$")
|
||||
|
||||
return file, (not is_test and is_source), is_test
|
||||
end
|
||||
|
||||
function M.alternate()
|
||||
local file, is_source, is_test = M.is_test_file()
|
||||
function alt.alternate()
|
||||
local file, is_source, is_test = alt.is_test_file()
|
||||
if not file then
|
||||
return nil
|
||||
end
|
||||
|
||||
local alt_file = file
|
||||
|
||||
if is_test then
|
||||
alt_file = string.gsub(file, "_test.go", ".go")
|
||||
elseif is_source then
|
||||
|
|
@ -24,15 +29,16 @@ function M.alternate()
|
|||
else
|
||||
vim.notify("not a go file", vim.log.levels.ERROR)
|
||||
end
|
||||
|
||||
return alt_file
|
||||
end
|
||||
|
||||
function M.switch(bang, cmd)
|
||||
local alt_file = M.alternate()
|
||||
if not vim.fn.filereadable(alt_file) and not vim.fn.bufexists(alt_file) and not bang then
|
||||
vim.notify("couldn't find " .. alt_file, vim.log.levels.ERROR)
|
||||
return
|
||||
elseif #cmd <= 1 then
|
||||
function alt.switch(cmd)
|
||||
cmd = cmd or ""
|
||||
|
||||
local alt_file = alt.alternate()
|
||||
|
||||
if #cmd <= 1 then
|
||||
local ocmd = "e " .. alt_file
|
||||
vim.cmd(ocmd)
|
||||
else
|
||||
|
|
@ -41,4 +47,4 @@ function M.switch(bang, cmd)
|
|||
end
|
||||
end
|
||||
|
||||
return M
|
||||
return alt
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue