[Nostromo] Improve tests and coverage

This commit is contained in:
Andrés Montañez 2017-01-07 16:46:59 -03:00
parent 9622f061ef
commit a7e8f300b9
2 changed files with 47 additions and 1 deletions

View file

@ -54,7 +54,7 @@ We use [PSR2](http://www.php-fig.org/psr/psr-2/) as PHP coding standard.
2. [PHP Mess Detector](https://phpmd.org/)
3. PHP Copy/Paste Detector
4. PHP Dead Code Detector
5. [PHP Coding Standards Fixer](http://cs.sensiolabs.org)
5. [PHP Coding Standards Fixer](http://cs.sensiolabs.org) with --level=psr2
## Testing and quality
We use PHPUnit to test our code. Most of the project is covered with tests, so if you want your code to be merged push it with proper testing and coverage (at least 95%). To execute the tests with code coverage report:

View file

@ -0,0 +1,46 @@
<?php
/*
* This file is part of the Magallanes package.
*
* (c) Andrés Montañez <andres@andresmontanez.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Mage\Tests\Task;
use Mage\Task\TaskFactory;
use Mage\Runtime\Runtime;
use Mage\Runtime\Exception\RuntimeException;
use Exception;
use PHPUnit_Framework_TestCase as TestCase;
class TaskFactoryTest extends TestCase
{
public function testNonInstantiable()
{
$runtime = new Runtime();
$factory = new TaskFactory($runtime);
try {
$factory->get('Traversable');
} catch (Exception $exception) {
$this->assertTrue($exception instanceof RuntimeException);
$this->assertEquals('Invalid task name "Traversable"', $exception->getMessage());
}
}
public function testNotExtendingAbstractTask()
{
$runtime = new Runtime();
$factory = new TaskFactory($runtime);
try {
$factory->get('stdClass');
} catch (Exception $exception) {
$this->assertTrue($exception instanceof RuntimeException);
$this->assertEquals('Invalid task name "stdClass"', $exception->getMessage());
}
}
}