phug-php/dev-tool

View on GitHub
README.md

Summary

Maintainability
Test Coverage

Phug Dev Tool
=============

What is Phug Dev Tool?
----------------------

The Phug Dev Tool is a command-line utility that comes with required libraries to develop the Phug template engine.

Installation
------------

Install via Composer

```bash
composer require phug/dev-tool --dev
```

Usage
-----

### Available Commands

#### `install`

Updates composer and installs composer dependencies

#### `check`

Runs `unit-tests:run`, `code-style:check` and `coverage:check` in this order and fails as soon as one of the commands fail.

Return code is the return code of the failed command.

If `--report` is set, this command will generate code-coverage data and report it to code-climate.

#### `code-style:check`

Automatically scans code for problems regarding `PSR-2` and attempts to fix them if wanted.

This runs `phpcs` with a default config or a local config, if found.

#### `code-style:fix`

Automatically fixes code-problems regarding `PSR-2`.

This runs `phpcbf` with a default config or a local config, if found.

#### `unit-tests:run`

Runs unit tests located in `./tests`.

You can pass `--coverage-text` and `--coverage-clover=<targetXmlPath>` to generate code-coverage information.

#### `coverage:check`

Checks existing code-coverage data and fails if a specific percentage coverage (**80%** by default) is not reached.

Accepts `--input-file=<targetXmlPath>` that points to a coverage file generated by `unit-tests:run --coverage-clover=<targetXmlPath>`

#### `coverage:report`

Reports coverage data to CodeClimate.

Accepts `--input-file=<targetXmlPath>` that points to a coverage file generated by `unit-tests:run --coverage-clover=<targetXmlPath>`

Security contact information
----------------------------

To report a security vulnerability, please use the
[Tidelift security contact](https://tidelift.com/security).
Tidelift will coordinate the fix and disclosure.