php_unit_strict.rst 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. ========================
  2. Rule ``php_unit_strict``
  3. ========================
  4. PHPUnit methods like ``assertSame`` should be used instead of ``assertEquals``.
  5. .. warning:: Using this rule is risky.
  6. Risky when any of the functions are overridden or when testing object
  7. equality.
  8. Configuration
  9. -------------
  10. ``assertions``
  11. ~~~~~~~~~~~~~~
  12. List of assertion methods to fix.
  13. Allowed values: a subset of ``['assertAttributeEquals', 'assertAttributeNotEquals', 'assertEquals', 'assertNotEquals']``
  14. Default value: ``['assertAttributeEquals', 'assertAttributeNotEquals', 'assertEquals', 'assertNotEquals']``
  15. Examples
  16. --------
  17. Example #1
  18. ~~~~~~~~~~
  19. *Default* configuration.
  20. .. code-block:: diff
  21. --- Original
  22. +++ New
  23. @@ -3,9 +3,9 @@
  24. {
  25. public function testSomeTest()
  26. {
  27. - $this->assertAttributeEquals(a(), b());
  28. - $this->assertAttributeNotEquals(a(), b());
  29. - $this->assertEquals(a(), b());
  30. - $this->assertNotEquals(a(), b());
  31. + $this->assertAttributeSame(a(), b());
  32. + $this->assertAttributeNotSame(a(), b());
  33. + $this->assertSame(a(), b());
  34. + $this->assertNotSame(a(), b());
  35. }
  36. }
  37. Example #2
  38. ~~~~~~~~~~
  39. With configuration: ``['assertions' => ['assertEquals']]``.
  40. .. code-block:: diff
  41. --- Original
  42. +++ New
  43. @@ -5,7 +5,7 @@
  44. {
  45. $this->assertAttributeEquals(a(), b());
  46. $this->assertAttributeNotEquals(a(), b());
  47. - $this->assertEquals(a(), b());
  48. + $this->assertSame(a(), b());
  49. $this->assertNotEquals(a(), b());
  50. }
  51. }
  52. Rule sets
  53. ---------
  54. The rule is part of the following rule set:
  55. @PhpCsFixer:risky
  56. Using the ``@PhpCsFixer:risky`` rule set will enable the ``php_unit_strict`` rule with the default config.