Download the PHP package nopolabs/mock-with-expectations without Composer

On this page you can find all versions of the php package nopolabs/mock-with-expectations. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package mock-with-expectations

MockWithExpectations

Build Status Code Climate Scrutinizer Code Quality License Latest Stable Version

This package provides a more concise notation for building mock objects in a sub-class of PHPUnit\Framework\TestCase.

I like testing with mocks and expectations. It lets me test my code without having to test the components with which it interacts. Those components need to be tested too, but I want my tests focused on one thing at a time.

Consider this refundOrder() function:

Here is a PHPUnit test for refundOrder():

And using MockWithExpectationsTrait:

Refactoring refundOrder():

And using MockWithExpectationsTrait:

Using MockWithExpectationsTrait reduces the amount of boilerplate code needed to write the tests. In addition it uses the at() invocation matcher to ensure that the methods are called in the expected order. The original test does not check the order in which the methods are called.

The way I look at it is this: testRefundOrder() is testing an external API exposed by OrderManager. In turn OrderManager composes functions method calls to several objects to implement the refundOrder() function. The refactoring organizes these calls as a single internal API. In this example the internal API is implemented as three protected methods on OrderManager. These methods are tools that help OrderManager to do its job of order management. As the internal order management API grows it might get moved to its own OrderManagement class, e.g.:

Expectations Syntax

method

params

result

throws

invoked

Using MockWithExpectationsTrait

composer require

composer require nopolabs/mock-with-expectations

methods

createMockWithExpectations

Creates a partial mock object and adds the provided expectations.

addExpectation

Adds an expectation on a mock object.

addExpectations

Adds expectations on a mock object.


All versions of mock-with-expectations with dependencies

PHP Build Version
Package Version
Requires php Version >=7.1
phpunit/phpunit Version ^6.0
roave/security-advisories Version dev-master
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package nopolabs/mock-with-expectations contains the following files

Loading the files please wait ....