component-tests
Common Composer and PHP component lint and validation tests., (*1)
Tests
- Check that all
.json
files are valid JSON (using json_decode
)
- Check that all
.php
files are valid PHP (using php -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
Using
First include component-tests
as a requirement in your project composer.json
,
and run composer update
to install it into your project:, (*2)
{
"require": {
"soundasleep/component-tests": "~0.2"
}
}
Now create an instance of \ComponentTests\ComponentTest
to define which paths
to search (and optionally exclude):, (*3)
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
., (*4)
Tests
This component is tested itself; install the composer requirements with composer install
and run vendor/bin/phpunit
., (*5)