Download the PHP package sitphp/doubles without Composer
On this page you can find all versions of the php package sitphp/doubles. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download sitphp/doubles
More information about sitphp/doubles
Files in sitphp/doubles
Package doubles
Short Description A simple yet powerful library to make class doubles for testing
License MIT
Homepage https://github.com/sitphp/doubles
Informations about the package doubles
SitPHP/Doubles
The "sitphp/doubles" library can help you to test your PHP classes by generating doubles that look like the original classes but can be manipulated and tested (sort of a copy of a class). These doubles then can then be used instead of the original classes for your test. This library can create doubles of any kind of class, interface or trait.
See full documentation : here
Requirements
The "sitphp/doubles" library requires at least PhpUnit 6.5 and at least PHP 7.0. It should be installed from composer which will make sure your configuration matches requirements.
{.note .info} Note : You can get composer here : https://getcomposer.org.
Installation
Add the line "sitphp/doubles": "2.4.*"
in the "require-dev"
section of your composer.json file :
And run the following command :
This will install the latest version of the "sitphp/doubles" library with the required PhpUnit package.
Creating a double
A double is called a "dummy" when all the methods of the original class are overwritten to return null
. To get a "
dummy" double instance, use the dummy
method :
A double is called a "mock" when all the methods of the original class are overwritten to behave the same as in the
original class. To get a "mock" double instance, use the mock
method :
For more details : Read the doc on creating doubles
Testing a double
To test how many times a double method is called, use the count
method :
To test the values of the arguments passed to a double method, use the args
method :
To change the return value of a method, use the stub
method. :
For more details : Read the doc on testing doubles
Configuration
You define the configuration for a specific double using the 2nd argument of the dummy
and mock
methods :
Here is a list of all available config parameters :
allow_final_doubles
: Set this parameter tofalse
to stop trying to make doubles of final classes/methods.allow_protected_methods
: Set this parameter tofalse
to disallow testing protected methods.allow_non_existent_classes
: Set this parameter tofalse
to disallow alias doubles of non existent classes.test_unexpected_methods
: Set this parameter totrue
to automatically receive an assertion error whenever an unexpected method is called.
For more details : Read the doc on configuration
About
License
This library is licensed under the MIT license.
Author
Alexandre Geiswiller - [email protected].