2017 © Pedro PelĂĄez
 

library phpunit-good-practices

Highly opinionated PHPUnit good practices enforcer.

image

phpunitgoodpractices/phpunit-good-practices

Highly opinionated PHPUnit good practices enforcer.

  • Sunday, November 19, 2017
  • by keradus
  • Repository
  • 1 Watchers
  • 2 Stars
  • 8 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 3 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

❗ THIS PACKAGE IS DEPRECATED ❗

With great shape of PHPUnit itself and Static Code Analysers supporting it, this package is no longer needed., (*1)

PHPUnit Good Practices

Highly opinionated PHPUnit good practices enforcer., (*2)

Available traits

ExpectationViaCodeOverAnnotationTrait

Expected exception shall be set up via code, not annotations., (*3)

ExpectOverSetExceptionTrait

Expectation shall be set directly over via setter., (*4)

IdentityOverEqualityTrait

Identity assertion (===) shall be used over equality ones (==)., (*5)

ProphecyOverMockObjectTrait

Prophecy shall be used over Mock Objects., (*6)

ProphesizeOnlyInterfaceTrait

Prophecy shall be created only for (existing) interfaces., (*7)

Example usage

<?php

namespace FooProject\Tests;

use PHPUnit\Framework\TestCase;
use PHPUnitGoodPractices\Traits\ExpectationViaCodeOverAnnotationTrait;
use PHPUnitGoodPractices\Traits\ExpectOverSetExceptionTrait;
use PHPUnitGoodPractices\Traits\IdentityOverEqualityTrait;
use PHPUnitGoodPractices\Traits\ProphecyOverMockObjectTrait;
use PHPUnitGoodPractices\Traits\ProphesizeOnlyInterfaceTrait;

final class FooTest extends TestCase
{
    use ExpectationViaCodeOverAnnotationTrait;
    use ExpectOverSetExceptionTrait;
    use IdentityOverEqualityTrait;
    use ProphecyOverMockObjectTrait;
    use ProphesizeOnlyInterfaceTrait;

    public function testBar()
    {
        $this->assertEquals(123, 213); // will report non-strict assertion usage
    }
}

The Versions