Beispiel #1
0
<?php

use Testes\Coverage\Coverage;
use Testes\Finder\Finder;
use Testes\Autoloader;
$base = __DIR__ . '/..';
require $base . '/vendor/autoload.php';
Autoloader::register();
Autoloader::addPath($base . '/tests');
Autoloader::addPath($base . '/src');
$coverage = new Coverage();
$finder = new Finder($base . '/tests', 'Test');
$coverage->start();
echo PHP_EOL;
$suite = $finder->run(function ($test) {
    echo $test->getAssertions()->isPassed() && !$test->getExceptions()->count() ? '.' : 'F';
});
echo PHP_EOL . PHP_EOL . sprintf('Ran %d test%s.', count($suite), count($suite) === 1 ? '' : 's');
$analyzer = $coverage->stop()->addDirectory($base . '/src')->is('\\.php$');
echo PHP_EOL . PHP_EOL . 'Coverage: ' . $analyzer->getPercentTested() . '%' . PHP_EOL . PHP_EOL;
if (count($assertions = $suite->getAssertions()->getFailed())) {
    echo 'Assertions' . PHP_EOL;
    echo '----------' . PHP_EOL;
    foreach ($assertions as $ass) {
        echo '  ' . $ass->getTestClass() . ':' . $ass->getTestLine() . ' ' . $ass->getMessage() . PHP_EOL;
    }
    echo PHP_EOL;
}
if (count($exceptions = $suite->getExceptions())) {
    echo 'Exceptions' . PHP_EOL;
    echo '----------' . PHP_EOL;
Beispiel #2
0
<?php

use Testes\Coverage\Coverage;
use Testes\Finder\Finder;
use Testes\Autoloader;
use Testes\Event;
$base = __DIR__ . '/..';
require $base . '/src/Testes/Autoloader.php';
Autoloader::register();
Autoloader::addPath($base . '/tests');
Autoloader::addPath($base . '/src');
Autoloader::addPath($base . '/vendor/devco');
Autoloader::addPath($base . '/vendor/devco/event-emitter/src');
$coverage = new Coverage();
$finder = new Finder($base . '/tests', 'Test');
$coverage->start();
echo PHP_EOL;
$event = new Event\Test();
$event->on('postRun', function ($test) {
    echo $test->getAssertions()->isPassed() && !$test->getExceptions()->count() ? '.' : 'F';
});
$suite = $finder->run($event);
echo PHP_EOL . PHP_EOL . sprintf('Ran %d test%s.', count($suite), count($suite) === 1 ? '' : 's');
$analyzer = $coverage->stop()->addDirectory($base . '/src')->is('\\.php$');
echo PHP_EOL . PHP_EOL . 'Coverage: ' . $analyzer->getPercentTested() . '%' . PHP_EOL . PHP_EOL;
if (count($assertions = $suite->getAssertions()->getFailed())) {
    echo 'Assertions' . PHP_EOL;
    echo '----------' . PHP_EOL;
    foreach ($assertions as $ass) {
        echo '  ' . $ass->getTestClass() . ':' . $ass->getTestLine() . ' ' . $ass->getMessage() . PHP_EOL;
    }
Beispiel #3
0
<?php

use Testes\Coverage\Coverage;
use Testes\Finder\Finder;
use Testes\Autoloader;
$base = __DIR__ . '/..';
require $base . '/vendor/treshugart/testes/src/Testes/Autoloader.php';
Autoloader::register();
Autoloader::addPath($base . '/tests');
$coverage = (new Coverage())->start();
$suite = (new Finder($base . '/tests', 'Test'))->run();
$analyzer = $coverage->stop()->addDirectory($base . '/src')->is('\\.php$');
?>

Coverage: <?php 
echo $analyzer->getPercentTested();
?>
%

<?php 
if ($suite->getAssertions()->isPassed()) {
    ?>
All tests passed!
<?php 
} else {
    ?>
Tests failed:
<?php 
    foreach ($suite->getAssertions()->getFailed() as $ass) {
        ?>
  <?php