Emacs mode to phpunit and test command line tool
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.gitignore Add vendor to .gitignore Dec 5, 2017
CONTRIBUTING.md
Cask Update copyright Aug 8, 2016
ChangeLog.md Bump version 0.17.1 Aug 12, 2018
LICENSE
Makefile
README.md Revert "make phpunit-args to custom variable" Aug 29, 2018
circle.yml FIX CircleCI build May 12, 2016
phpunit-mode.el
phpunit.el

README.md

phpunit.el

License GPL 3

  • Master MELPA Stable Circle CI Coverage Status
  • Develop : Melpa Status Circle CI Coverage Status

Manage the PHPUnit tests from Emacs (>= 24.3)

Installation

The recommended way to install phpunit.el is via MELPA:

M-x package-install phpunit.el

or Cask:

(depends-on "phpunit.el")

Usage

Available commands

These functions are available :

  • phpunit-current-test: launch unit tests for the current test in a class
  • phpunit-current-class: launch unit tests for the current class
  • phpunit-current-project: launch all unit tests
  • phpunit-group: launch PHPUnit for group

You can create some key bindings with these commands:

(define-key web-mode-map (kbd "C-t t") 'phpunit-current-test)
(define-key web-mode-map (kbd "C-t c") 'phpunit-current-class)
(define-key web-mode-map (kbd "C-t p") 'phpunit-current-project)

or use the minor mode :

(add-to-list 'auto-mode-alist '("\\.php$'" . phpunit-mode))

Configuration

The following configuration variables are available:

(setq phpunit-configuration-file "phpunit.xml")
(setq phpunit-root-directory "./")

Development

Cask

phpunit.el use Cask for dependencies management. Install it and retrieve dependencies :

$ curl -fsSL https://raw.githubusercontent.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 nicolas.lamirault@gmail.com