

GitHub - nlamirault/gotest.el: Emacs mode to go unit test command line tool
source link: https://github.com/nlamirault/gotest.el
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

gotest.el
- Master :
- Develop:
Run Go tests and programs from Emacs (>= 24.3)
Installation
The recommended way to install gotest.el
is via MELPA:
M-x package-install gotest.el
or Cask:
(depends-on "gotest.el")
Usage
The following interactive commands can be run via M-x or bound to a key of your choice.
All go-test-*
functions can optionally configure the buffer-local
go-test-args
variable to pass additional arguments. Or, by using
a prefix command, you will be prompted for arguments. For example:
C-u M-x go-test-current-test.
When using the '_
prefix arg with any of the go-test-*
or go-run
functions, the most recent arguments from history will be used without
prompting. For example: M-- M-x go-run.
go-test-current-test
Launch unit tests for the current test.
go-test-current-test-cache
Rerun the current test.
go-test-current-file
Launch unit tests and examples for the current file
go-test-current-project
Launch unit tests and examples for the current project.
go-test-current-coverage
Launch unit tests coverage for the current project.
go-test-current-benchmark
Launch go benchmark on current benchmark
go-test-current-file-benchmarks
Launch go benchmark on current file
go-test-current-project-benchmarks
Launch go benchmark on current project
go-run
Launch program via go run
. Optionally configure the buffer-local
go-test-args
variable to pass additional arguments. Or, by using
a prefix command, you will be prompted for arguments. For example:
C-u M-x go-run.
Be sure to make use of minibuffer history (C-r) to recall
recent arguments to go run
. And remember that the M--
prefix can be used in combination with your go run
key binding to
use the most recent arguments without prompting. The go file is
included in history, so you can go-run
from history regardless of
which buffer you are currently visiting.
Example key bindings
You can create some key bindings with these commands:
(define-key go-mode-map (kbd "C-x f") 'go-test-current-file)
(define-key go-mode-map (kbd "C-x t") 'go-test-current-test)
(define-key go-mode-map (kbd "C-x p") 'go-test-current-project)
(define-key go-mode-map (kbd "C-x b") 'go-test-current-benchmark)
(define-key go-mode-map (kbd "C-x x") 'go-run)
Addons
If your project use gb, gotest will use this tool to launch unit tests.
Development
gotest.el
use Cask for dependencies management. Install it and
retrieve dependencies :
$ curl -fsSkL https://raw.github.com/cask/cask/master/go | python
$ export PATH="$HOME/.cask/bin:$PATH"
$ cask
Testing
-
Launch unit tests from shell
$ make clean test
-
Using overseer :
Keybinding | Description |
---|---|
C-c , t | launch unit tests from buffer |
C-c , b | launch unit tests |
C-c , g | launch unit tests with tag (find, regexp, ...) |
- Tips:
If you want to launch a single unit test, add a specify tag :
(ert-deftest test-foobar ()
:tags '(current)
And launch it using : C-c , g and specify tag : current
Support / Contribute
See here
Changelog
A changelog is available here.
License
See LICENSE.
Contact
Nicolas Lamirault [email protected]
</article
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK