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)