php-http/psr7-integration-tests
A PHPUnit-based integration test suite for PSR-7 HTTP message implementations. It verifies requests, responses, streams, URIs, and headers against the PSR-7 specification, helping libraries like Guzzle, Laminas, Slim, and Nyholm ensure compliance.
Test PSR7 implementations against the specification.
| PSR7 Implementation | Status | Legacy |
|---|---|---|
| Guzzle | ||
| Laminas | Legacy (failures expected) | |
| Slim | ||
| Nyholm | ||
| RingCentral | ||
| HttpSoft | ||
| Fatfree |
To use the integration tests with a PSR-7 implementation, add this package to the dev dependencies:
$ composer require --dev php-http/psr7-integration-tests
Then set up phpunit to run the tests for your implementation.
Please see the official documentation.
This repository also is set up to test a couple of implementations directly. You need to install dependencies from source for the tests to work:
$ composer update --prefer-source
Note: If you already have the sources installed, you need to delete the vendor folder before running the above command.
Run the test suite for one implementation with:
$ composer test -- --testsuite <name>
The names are Guzzle, Laminas, Slim, Nyholm, RingCentral, HttpSoft, Fatfree.
It is also possible to exclude tests that require a live internet connection:
$ composer test -- --testsuite <name> --exclude-group internet
Please see our contributing guide.
If you discover any security related issues, please contact us at [email protected].
The MIT License (MIT). Please see License File for more information.
How can I help you explore Laravel packages today?