TestCase.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. declare(strict_types=1);
  3. /*
  4. * This file is part of PHP CS Fixer.
  5. *
  6. * (c) Fabien Potencier <fabien@symfony.com>
  7. * Dariusz Rumiński <dariusz.ruminski@gmail.com>
  8. *
  9. * This source file is subject to the MIT license that is bundled
  10. * with this source code in the file LICENSE.
  11. */
  12. namespace PhpCsFixer\Tests;
  13. use PHPUnit\Framework\TestCase as BaseTestCase;
  14. use PHPUnitGoodPractices\Polyfill\PolyfillTrait;
  15. use PHPUnitGoodPractices\Traits\ExpectationViaCodeOverAnnotationTrait;
  16. use PHPUnitGoodPractices\Traits\ExpectOverSetExceptionTrait;
  17. use PHPUnitGoodPractices\Traits\IdentityOverEqualityTrait;
  18. use PHPUnitGoodPractices\Traits\ProphecyOverMockObjectTrait;
  19. use PHPUnitGoodPractices\Traits\ProphesizeOnlyInterfaceTrait;
  20. use Prophecy\PhpUnit\ProphecyTrait;
  21. use Symfony\Bridge\PhpUnit\ExpectDeprecationTrait;
  22. // To ensure compatibility for different PHPUnit versions, we may need to inject the ProphecyTrait, if it's present.
  23. if (trait_exists(ProphecyTrait::class)) {
  24. /**
  25. * @author Dariusz Rumiński <dariusz.ruminski@gmail.com>
  26. *
  27. * @internal
  28. */
  29. abstract class InterimTestCase extends BaseTestCase
  30. {
  31. use ProphecyTrait;
  32. }
  33. } else {
  34. /**
  35. * @author Dariusz Rumiński <dariusz.ruminski@gmail.com>
  36. *
  37. * @internal
  38. */
  39. abstract class InterimTestCase extends BaseTestCase
  40. {
  41. }
  42. }
  43. /**
  44. * @author Dariusz Rumiński <dariusz.ruminski@gmail.com>
  45. *
  46. * @internal
  47. */
  48. abstract class TestCase extends InterimTestCase
  49. {
  50. use ExpectationViaCodeOverAnnotationTrait;
  51. use ExpectDeprecationTrait;
  52. use ExpectOverSetExceptionTrait;
  53. use IdentityOverEqualityTrait;
  54. use PolyfillTrait;
  55. use ProphecyOverMockObjectTrait;
  56. use ProphesizeOnlyInterfaceTrait;
  57. }