@ -1,6 +1,24 @@
local M = { }
local utils = require ( " go.utils " )
local function get_build_tags ( args )
local tags = { }
if args ~= nil then
table.insert ( tags , args )
end
if _GO_NVIM_CFG.build_tags ~= " " then
table.insert ( tags , _GO_NVIM_CFG.build_tags )
end
if # tags == 0 then
return " "
end
return [[-tags\ ]] .. table.concat ( tags , " , " ) .. [[\ ]]
end
M.test_fun = function ( args )
local fpath = vim.fn . expand ( ' %:p:h ' )
@ -11,14 +29,8 @@ M.test_fun = function(args)
return
end
local tag = ' '
utils.log ( args )
if args ~= nil then
tag = [[-tags\ ]] .. args .. [[\ ]]
end
utils.log ( " parnode " .. vim.inspect ( ns ) )
local cmd = [[setl makeprg=go\ test\ ]] .. tag .. [[-v\ -run\ ^]] .. ns.name .. [[\ ]] .. fpath
local cmd = [[setl makeprg=go\ test\ ]] .. get_build_tags ( args ) .. [[-v\ -run\ ^]] .. ns.name .. [[\ ]] .. fpath
.. [[ | lua require"go.asyncmake".make()]]
utils.log ( " test cmd " , cmd )
vim.cmd ( cmd )
@ -28,13 +40,10 @@ M.test_file = function(args)
local workfolder = vim.lsp . buf.list_workspace_folders ( ) [ 1 ]
local tag = ' '
utils.log ( args )
if args ~= nil then
tag = [[-tags\ ]] .. args .. [[\ ]]
end
local fpath = vim.fn . expand ( " %:p:h " ) .. ' /.. '
-- local fpath = './' .. vim.fn.expand('%:h') .. '/...'
utils.log ( " fpath " .. fpath )
local cmd = [[setl makeprg=go\ test\ ]] .. tag .. [[-v\ -run\ ]] .. fpath
local cmd = [[setl makeprg=go\ test\ ]] .. get_build_ tags( args ) .. [[-v\ -run\ ]] .. fpath
.. [[| lua require"go.asyncmake".make()]]
utils.log ( " test cmd " , cmd )
vim.cmd ( cmd )