Common Composer and PHP component lint and validation tests.
- Check that all
.json
files are valid JSON (usingjson_decode
) - Check that all
.php
files are valid PHP (usingphp -l
) - Check that all
composer.json
files are valid according to the Composer JSON-schema - Check that all PHP files that use
require()
etc. use__DIR__
in the path - Check that all PHP files that use
require()
etc. refer to files that actually exist
First include component-tests
as a requirement in your project composer.json
,
and run composer update
to install it into your project:
{
"require": {
"soundasleep/component-tests": "~0.2"
}
}
Now create an instance of \ComponentTests\ComponentTest
to define which paths
to search (and optionally exclude):
class MyComponentTest extends \ComponentTests\ComponentTest {
function getRoots() {
return array(__DIR__ . "/..");
}
/**
* Optional: exclude certain paths
*/
function getExcludes() {
return array("/resources/", "/vendor/");
}
}
You can now run this test through your normal phpunit
.
This component is tested itself; install the composer requirements with composer install
and run vendor/bin/phpunit
.