* Added support for tests running against redis cluster
* Test coverage
* Added comment about master nodes
* Codestyle fix
* Revert changes
* Revert DBNUM
* Added cluster endpoints to relay tests env configuration
* Exclude cluster tests from relay tests environment
* Removed TODO comment
* Changed cluster image version to unstable
* Updated configuration to match unstable cluster
* Fixed path
* Updated cluster CI configuration
* Removed redundant flag
* Removed backslash
* Updated file path
* Updated file path variable
* Added docker cluster initialization as additional step
* Run cluster tests as separate workflow
* Codestyle fixes
* Updated exported files
* Added additional timeout so cluster image could be settled
* Added support for different cluster image, use docker compose for cluster tests CI
* Remove unused flag
* Removed variable from volume path
* Added sleep timeout to allow docker setup after running
* Added timeout before tests run
* Updated linter settings
* Include indent changes for.sh files
* Added missing coverage
* Revert expected files and mark docker folder as exclusion
* Specify folder itself as excluded
* Moved cluster tests as separate job in tests.yml
* Updated name to contain cluster word
---------
Co-authored-by: Chayim <chayim@users.noreply.github.com>
- Make use of more typehints for function parameters
- Make use of typehints for function return values
- Use @var where needed to give proper hints to IDEs and avoid warnings
- Replace MockObject::setMethods() with addMethods() and onlyMethods()
- Rewording of some phpdocs
We have renamed most methods to drop the "command" suffix as it is quite
redundant. Due to this change and thanks to variadic methods introduced
with PHP 5.6 we took the opportunity to replace both "supportsCommand()"
and "supportsCommands()" with a single new method "supports()".
Added more stringent typehints for method arguments and typehints for
return values now that we do not need to support anything below PHP 7.2.
Also moved from using array() to [] in source code of class involved.
This change reduces some unnecessary complexity in the library, Redis
commands do not change much after all. Developers can still implement
their own commands factory, inject new commands or override existing
ones. The "profile" client options has been renamed to "commands" and
it accepts instances of Predis\Command\FactoryInterface.
The test suite checks at runtime the version of the running instance
of Redis for integration tests to adapt itself automatically.