weirdan / prophecy-shim
兼容性适配器,允许使用 ProphecyTrait 与旧版本的 PHPUnit
2.0.2
2020-08-24 21:34 UTC
Requires
- phpspec/prophecy-phpunit: ^2.0
README
兼容性适配器,允许使用 ProphecyTrait 与旧版本的 PHPUnit。
动机
从 PHPUnit 9.1 开始,原本由 PHPUnit 本身提供的 Prophecy 集成已被弃用,并计划在 PHPUnit 10 中移除。现在有 phpspec/prophecy-phpunit
包提供集成,但如果你需要使用旧版本的 PHPUnit(如 7.x)运行测试,该怎么办呢?
此包通过为旧版本提供空的 ProphecyTrait 解决了这个问题,你可以将其导入到测试中。对于 PHPUnit 9.1+,它只需要 phpspec/prophecy-phpunit
提供的相同特性。因此,你可以将特性导入到测试中,无论 PHPUnit 版本如何,它都将正常工作。
安装
composer require --dev weirdan/prophecy-shim:'^1.0 || ^2.0'
用法
<?php namespace Your\Tests; use PHPUnit\Framework\TestCase; // The following trait is provided either by the shim or by phpspec/prophecy-phpunit use Prophecy\PhpUnit\ProphecyTrait; class YourTest extends TestCase { use ProphecyTrait; public function testSomething(): void { // this won't throw warnings anymore in PHPUnit 9.1+ $objectProphecy = $this->prophesize(SomeClass::class); } }