This extension will allow you to configure atoum using a YAML file and/or environnement variables.
When using this extension, you can put a .atoum.yml on the root of your repository to configure atoum. Here is an exemple on how to tell atoum to look for unit tests in the tests/units/classes folder.
# .atoum.yml
atoum:
directories:
- ./tests/units/classesInstall extension using composer:
composer require --dev atoum/config-extension
Enable the extension using atoum configuration file:
<?php
// .atoum.php
require_once __DIR__ . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php';
use mageekguy\atoum\config;
$runner->addExtension(new config\extension($script));
// Or
new config\extension($script);# .atoum.yml
atoum:
directories:
- ./tests/units/classes
fields:
report.default:
- field.logo
- field.logo.result
- field.coverage
reports:
- report.default
- report.coverage.cloverboolean : enable/disable atoum's loop mode. Defaults on ATOUM_LOOP environnement variable.
Exemple:
atoum:
loop: true
boolean : enable/disable atoum's debug mode. Defaults on ATOUM_DEBUG environnement variable.
Exemple:
atoum:
debug: true
integer : value between 1 and 3 determining atoum's verbosity level'. Defaults on ATOUM_VERBOSITY environnement variable.
Exemple:
atoum:
verbosity: 2
array : List of directories where atoum will look for unit tests. Defaults on ATOUM_DIRECTORIES environnement variable (a coma separated list of directories).
atoum:
directories:
- ./tests/units/classesarray : List of reports. Defaults on ATOUM_REPORTS environnement variable (a coma separated list of reports).
Example:
atoum:
reports:
- report.default
- report.coverage.cloverPossible values :
adds atoum's default reporter (when the reports key is defined, atoum's default reporter is no longer used).
Adds a clover coverage reporter.
Path to were the report will be written could be configured using the coverage.clover.filename parameter.
Adds an xUnit reporter.
Path to were the report will be written could be configured using the xunit.filename parameter.
Adds a TAP reporter.
Adds a vim reporter.
Adds a reporter that displays a nyancat.
Adds a santa reporter.
Fields allows you to customize reports. You can add fields for each report.
You need to add the report name as key, then add an array of fields.
This example adds the logo field to the default report :
atoum:
reports:
- report.default
fields:
report.default:
- field.logoDisplays atoum's logo at the begining of the report. Only works on cli reports.
Displays atoum's logo at the end of the report. Only works on cli reports.
Generate an HTML coverage reports.
Needs the php extension xdebug to be installed.
The project name in generated report and folder where the report will be generated could by configured with the project.name and coverage.html.directory and parameters.
You can customize the way reports or fields are generated using the parameters section on the .atoum.yml file.
Here is an example that changes the path where the xunit report is generated:
atoum:
reports:
- report.xml
parameters:
xunit.filename: "mylogs/file.xml"Default value : xunit.xml.
Path were the xUnit report will be written in the report.xunit report.
The directory where the file is generated must exists, it will not be created by atoum.
Default value : ./coverage.
Path to the folder where the HTML coverage files will be written. See field.coverage.html field.
Default value : atoum.
Will be used when generating the field.coverage.html field.
Default value : clover.xml.
Path where the clover report will be written in the report.clover report.
config-extension is released under the BSD-3-Clause License. See the bundled LICENSE file for details.
