gounit-vim alternatives and similar packages
Based on the "Editor Plugins" category.
Alternatively, view gounit-vim alternatives based on common mentions on social networks and blogs.
-
Go for Visual Studio Code
DISCONTINUED. An extension for VS Code which provides support for the Go language. -
GoSublime
A Golang plugin collection for SublimeText 3, providing code completion and other IDE-like features. -
coc-go language server extension for Vim/Neovim
Go language server extension using gopls for coc.nvim. -
Watch
Watches for changes in a directory tree and reruns a command in an acme win or just on the terminal. -
Local Golang playground
GNU/Emacs mode that setup local Go playground for code snippets like play.golang.org or even better :)
SaaSHub - Software Alternatives and Reviews
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of gounit-vim or a related project?
README
gounit-vim
Vim plugin for gounit tool that allows you to generate Go tests easily.
Demo
Installation
gounit-vim requires gounit to be available in your $PATH
. Alternatively you can provide path to gounit using g:gounit_bin
setting.
Plugin installation:
- Pathogen
git clone https://github.com/hexdigest/gounit-vim.git ~/.vim/bundle/gounit-vim
- vim-plug
Plug 'hexdigest/gounit-vim'
- NeoBundle
NeoBundle 'hexdigest/gounit-vim'
- Vundle
Plugin 'hexdigest/gounit-vim'
- Vim packages (since Vim 7.4.1528)
git clone https://github.com/hexdigest/gounit-vim.git ~/.vim/pack/plugins/start/gounit-vim
You will also need to install all the necessary GoUnit binaries. It is easy to install by providing a command:GoUnitInstallBinaries
, which willgo get
all the required binaries.
Usage
Call :GoUnit
to generate test for the function declaration in the current line or all functions selected in visual mode.
GoUnit
also understands "range" parameters:
:5,10GoUnit " genereate tests for functions from line 5 to line 10
:.,$GoUnit " from the current line till the end of the file
:0,.GoUnit " from the first line to the current line
:%GoUnit " generate tests for the whole file
These commands generate tests using template that you set as a preferred with the :GoUnitTemplateUse <template>
command.
If you don't want to change your preferred template you can use all of the above commands followed by the name of the template, i.e. :GoUnit minimock
If you have wildmenu
option enabled you can pick desired template from the list of all registered templates with :GoUnit <TAB>
.
Managing templates
There are few commands to manage your test templates:
:GoUnitTemplateAdd " register contents of the current buffer as a new templates
:GoUnitTemplateAdd /file/name " register /file/name as new template
:GoUnitTemplateDel template " remove template
:GoUnitTemplateList " display all registered test templates
:GoUnitTemplateUse template " set template as preferred
Also you can create useful maps to use it with vim-go plugin for fast test generation.
" maps your leader key + gt to generate tests for the function under your cursor
nnoremap <leader>gt :normal vaf<cr>:GoUnit<cr>
Settings
If you want you can set path to your gounit binary if it's not in your path, for example:
let g:gounit_bin = '/home/user/go/bin/gounit'