maks3w/phpunit-methods-trait

Provide PHPUnit method signatures as traits for IDE autocomplete

v9.5.0 2021-01-18 20:45 UTC

README

Provide a PHP Trait with methods present in PHPUnit Test Framework and expected to be implemented by TestCase.

This is useful when traits are used for test reuse, and it's necessary to access to PHPUnit\Framework\TestCase methods from the trait.

Installing via Composer

You can use Composer .

composer require maks3w/phpunit-methods-trait

Usage

Example of use in a trait

use PHPUnit\Framework\Assert;
use PHPUnit\Framework\TestCase;

trait FooTrait {
  use \Maks3w\PhpUnitMethodsTrait\Framework\TestCaseTrait;

  public function testFoo() {
    $mockFoo = $this->getMock('Foo');
    $mockFoo->expects(TestCase::any())
      ->method('getFoo')
      ->willReturn(true)
    ;

    Assert::assertTrue($mockFoo->getFoo());
  }
}

FAQ

Q: Assertion methods are not recognized. Why?
A: Assertion methods like `assertTrue` are static methods present in `PHPUnit\Framework\Assert` just access them using static method call `PHPUnit\Framework\Assert::assertTrue(...)`

License

Code licensed under BSD 2 clauses terms & conditions.

See LICENSE.txt for more information.