Skip to content
  • Eloy Lafuente's avatar
    MDL-71036 phpunit: Mock->setMethods() silently deprecated · 81407f18
    Eloy Lafuente authored
    The current ->setMethods() has been silently (won't emit any
    warning) in PHPUnit 9. And will stop working (current plans)
    in PHPUnit 10.
    
    Basically the now deprecated method has been split into:
    
    - onlyMethods(): To point to existing methods in the mocked artifact.
    - addMethods(): To point to non existing (yet) methods in the mocked
      artifact.
    
    In practice that means that all our current setMethods() calls can be
    converted to onlyMethods() (existing) and done. The addMethods() is
    mostly useful on development phases, not final testing.
    
    Finally note that <null> isn't accepted anymore as parameter to
    double all the methods. Instead empty array [] must be used.
    
    Link: https://github.com/sebastianbergmann/phpunit/issues/3770
    81407f18