Create implementations for PSR-17 Response- and StreamFactoryInterface
This commit is contained in:
parent
9243dd7663
commit
95c3be85c9
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "wellrested/wellrested",
|
||||
"description": "Simple PHP Library for RESTful APIs",
|
||||
"keywords": ["rest", "restful", "api", "http", "psr7", "psr-7", "psr15", "psr-15"],
|
||||
"keywords": ["rest", "restful", "api", "http", "psr7", "psr-7", "psr15", "psr-15", "psr17", "psr-17"],
|
||||
"homepage": "https://www.wellrested.org",
|
||||
"license": "MIT",
|
||||
"type": "library",
|
||||
|
|
@ -13,6 +13,7 @@
|
|||
],
|
||||
"require": {
|
||||
"php": ">=7.2",
|
||||
"psr/http-factory": "~1.0",
|
||||
"psr/http-message": "~1.0",
|
||||
"psr/http-server-handler": "~1.0",
|
||||
"psr/http-server-middleware": "~1.0"
|
||||
|
|
|
|||
|
|
@ -4,8 +4,60 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "4d35c0aa434d9f710cd5a8a7246367d4",
|
||||
"content-hash": "041c27e394aba3e5c3bf6cbe8751f845",
|
||||
"packages": [
|
||||
{
|
||||
"name": "psr/http-factory",
|
||||
"version": "1.0.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/http-factory.git",
|
||||
"reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
|
||||
"reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.0.0",
|
||||
"psr/http-message": "^1.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.0.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Psr\\Http\\Message\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP-FIG",
|
||||
"homepage": "http://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Common interfaces for PSR-7 HTTP message factories",
|
||||
"keywords": [
|
||||
"factory",
|
||||
"http",
|
||||
"message",
|
||||
"psr",
|
||||
"psr-17",
|
||||
"psr-7",
|
||||
"request",
|
||||
"response"
|
||||
],
|
||||
"time": "2019-04-30T12:38:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/http-message",
|
||||
"version": "1.0.1",
|
||||
|
|
@ -314,6 +366,75 @@
|
|||
],
|
||||
"time": "2020-06-29T18:35:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/package-versions-deprecated",
|
||||
"version": "1.10.99.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/package-versions-deprecated.git",
|
||||
"reference": "68c9b502036e820c33445ff4d174327f6bb87486"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/68c9b502036e820c33445ff4d174327f6bb87486",
|
||||
"reference": "68c9b502036e820c33445ff4d174327f6bb87486",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-plugin-api": "^1.1.0 || ^2.0",
|
||||
"php": "^7 || ^8"
|
||||
},
|
||||
"replace": {
|
||||
"ocramius/package-versions": "1.10.99"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/composer": "^1.9.3 || ^2.0@dev",
|
||||
"ext-zip": "^1.13",
|
||||
"phpunit/phpunit": "^6.5 || ^7"
|
||||
},
|
||||
"type": "composer-plugin",
|
||||
"extra": {
|
||||
"class": "PackageVersions\\Installer",
|
||||
"branch-alias": {
|
||||
"dev-master": "1.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"PackageVersions\\": "src/PackageVersions"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Marco Pivetta",
|
||||
"email": "ocramius@gmail.com"
|
||||
},
|
||||
{
|
||||
"name": "Jordi Boggiano",
|
||||
"email": "j.boggiano@seld.be"
|
||||
}
|
||||
],
|
||||
"description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)",
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://packagist.com",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/composer",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/composer/composer",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-08-13T12:55:41+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/semver",
|
||||
"version": "1.5.1",
|
||||
|
|
@ -435,16 +556,16 @@
|
|||
},
|
||||
{
|
||||
"name": "doctrine/annotations",
|
||||
"version": "1.10.3",
|
||||
"version": "1.10.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/annotations.git",
|
||||
"reference": "5db60a4969eba0e0c197a19c077780aadbc43c5d"
|
||||
"reference": "bfe91e31984e2ba76df1c1339681770401ec262f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/annotations/zipball/5db60a4969eba0e0c197a19c077780aadbc43c5d",
|
||||
"reference": "5db60a4969eba0e0c197a19c077780aadbc43c5d",
|
||||
"url": "https://api.github.com/repos/doctrine/annotations/zipball/bfe91e31984e2ba76df1c1339681770401ec262f",
|
||||
"reference": "bfe91e31984e2ba76df1c1339681770401ec262f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -454,7 +575,8 @@
|
|||
},
|
||||
"require-dev": {
|
||||
"doctrine/cache": "1.*",
|
||||
"phpunit/phpunit": "^7.5"
|
||||
"phpstan/phpstan": "^0.12.20",
|
||||
"phpunit/phpunit": "^7.5 || ^9.1.5"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
|
|
@ -500,7 +622,7 @@
|
|||
"docblock",
|
||||
"parser"
|
||||
],
|
||||
"time": "2020-05-25T17:24:27+00:00"
|
||||
"time": "2020-08-10T19:35:50+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/instantiator",
|
||||
|
|
@ -935,16 +1057,16 @@
|
|||
},
|
||||
{
|
||||
"name": "nikic/php-parser",
|
||||
"version": "v4.8.0",
|
||||
"version": "v4.6.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nikic/PHP-Parser.git",
|
||||
"reference": "8c58eb4cd4f3883f82611abeac2efbc3dbed787e"
|
||||
"reference": "c346bbfafe2ff60680258b631afb730d186ed864"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8c58eb4cd4f3883f82611abeac2efbc3dbed787e",
|
||||
"reference": "8c58eb4cd4f3883f82611abeac2efbc3dbed787e",
|
||||
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c346bbfafe2ff60680258b631afb730d186ed864",
|
||||
"reference": "c346bbfafe2ff60680258b631afb730d186ed864",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -952,8 +1074,8 @@
|
|||
"php": ">=7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"ircmaxell/php-yacc": "^0.0.6",
|
||||
"phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
|
||||
"ircmaxell/php-yacc": "0.0.5",
|
||||
"phpunit/phpunit": "^6.5 || ^7.0 || ^8.0"
|
||||
},
|
||||
"bin": [
|
||||
"bin/php-parse"
|
||||
|
|
@ -961,7 +1083,7 @@
|
|||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "4.8-dev"
|
||||
"dev-master": "4.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
|
@ -983,68 +1105,7 @@
|
|||
"parser",
|
||||
"php"
|
||||
],
|
||||
"time": "2020-08-09T10:23:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ocramius/package-versions",
|
||||
"version": "1.9.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Ocramius/PackageVersions.git",
|
||||
"reference": "94c9d42a466c57f91390cdd49c81313264f49d85"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/94c9d42a466c57f91390cdd49c81313264f49d85",
|
||||
"reference": "94c9d42a466c57f91390cdd49c81313264f49d85",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-plugin-api": "^1.1.0 || ^2.0",
|
||||
"php": "^7.4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/composer": "^1.9.3 || ^2.0@dev",
|
||||
"doctrine/coding-standard": "^7.0.2",
|
||||
"ext-zip": "^1.15.0",
|
||||
"infection/infection": "^0.15.3",
|
||||
"phpunit/phpunit": "^9.1.1",
|
||||
"vimeo/psalm": "^3.9.3"
|
||||
},
|
||||
"type": "composer-plugin",
|
||||
"extra": {
|
||||
"class": "PackageVersions\\Installer",
|
||||
"branch-alias": {
|
||||
"dev-master": "1.99.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"PackageVersions\\": "src/PackageVersions"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Marco Pivetta",
|
||||
"email": "ocramius@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)",
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/Ocramius",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/ocramius/package-versions",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-06-22T14:15:44+00:00"
|
||||
"time": "2020-07-02T17:12:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "openlss/lib-array2xml",
|
||||
|
|
@ -1142,29 +1203,28 @@
|
|||
},
|
||||
{
|
||||
"name": "phar-io/manifest",
|
||||
"version": "2.0.1",
|
||||
"version": "1.0.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phar-io/manifest.git",
|
||||
"reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133"
|
||||
"reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
|
||||
"reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
|
||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
|
||||
"reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-dom": "*",
|
||||
"ext-phar": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"phar-io/version": "^3.0.1",
|
||||
"php": "^7.2 || ^8.0"
|
||||
"phar-io/version": "^2.0",
|
||||
"php": "^5.6 || ^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.0.x-dev"
|
||||
"dev-master": "1.0.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
|
@ -1194,24 +1254,24 @@
|
|||
}
|
||||
],
|
||||
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
|
||||
"time": "2020-06-27T14:33:11+00:00"
|
||||
"time": "2018-07-08T19:23:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phar-io/version",
|
||||
"version": "3.0.2",
|
||||
"version": "2.0.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phar-io/version.git",
|
||||
"reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0"
|
||||
"reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phar-io/version/zipball/c6bb6825def89e0a32220f88337f8ceaf1975fa0",
|
||||
"reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0",
|
||||
"url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
|
||||
"reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.2 || ^8.0"
|
||||
"php": "^5.6 || ^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
|
|
@ -1241,7 +1301,7 @@
|
|||
}
|
||||
],
|
||||
"description": "Library for handling version information and constraints",
|
||||
"time": "2020-06-27T14:39:04+00:00"
|
||||
"time": "2018-07-08T19:19:57+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-cs-fixer/diff",
|
||||
|
|
@ -1345,16 +1405,16 @@
|
|||
},
|
||||
{
|
||||
"name": "phpdocumentor/reflection-docblock",
|
||||
"version": "5.2.0",
|
||||
"version": "5.2.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
|
||||
"reference": "3170448f5769fe19f456173d833734e0ff1b84df"
|
||||
"reference": "d870572532cd70bc3fab58f2e23ad423c8404c44"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/3170448f5769fe19f456173d833734e0ff1b84df",
|
||||
"reference": "3170448f5769fe19f456173d833734e0ff1b84df",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d870572532cd70bc3fab58f2e23ad423c8404c44",
|
||||
"reference": "d870572532cd70bc3fab58f2e23ad423c8404c44",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -1393,7 +1453,7 @@
|
|||
}
|
||||
],
|
||||
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
|
||||
"time": "2020-07-20T20:05:34+00:00"
|
||||
"time": "2020-08-15T11:14:08+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/type-resolver",
|
||||
|
|
@ -1553,35 +1613,32 @@
|
|||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "9.1.2",
|
||||
"version": "8.0.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||
"reference": "5210f9269e44e6d34419cb92242ef11aee9351ac"
|
||||
"reference": "ca6647ffddd2add025ab3f21644a441d7c146cdc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/5210f9269e44e6d34419cb92242ef11aee9351ac",
|
||||
"reference": "5210f9269e44e6d34419cb92242ef11aee9351ac",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ca6647ffddd2add025ab3f21644a441d7c146cdc",
|
||||
"reference": "ca6647ffddd2add025ab3f21644a441d7c146cdc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-dom": "*",
|
||||
"ext-libxml": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"nikic/php-parser": "^4.7",
|
||||
"php": "^7.3 || ^8.0",
|
||||
"phpunit/php-file-iterator": "^3.0.3",
|
||||
"phpunit/php-text-template": "^2.0.2",
|
||||
"sebastian/code-unit-reverse-lookup": "^2.0.2",
|
||||
"sebastian/complexity": "^2.0",
|
||||
"sebastian/environment": "^5.1.2",
|
||||
"sebastian/lines-of-code": "^1.0",
|
||||
"sebastian/version": "^3.0.1",
|
||||
"theseer/tokenizer": "^1.2.0"
|
||||
"php": "^7.3",
|
||||
"phpunit/php-file-iterator": "^3.0",
|
||||
"phpunit/php-text-template": "^2.0",
|
||||
"phpunit/php-token-stream": "^4.0",
|
||||
"sebastian/code-unit-reverse-lookup": "^2.0",
|
||||
"sebastian/environment": "^5.0",
|
||||
"sebastian/version": "^3.0",
|
||||
"theseer/tokenizer": "^1.1.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.3"
|
||||
"phpunit/phpunit": "^9.0"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-pcov": "*",
|
||||
|
|
@ -1590,7 +1647,7 @@
|
|||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "9.1-dev"
|
||||
"dev-master": "8.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
|
@ -1622,7 +1679,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-08-10T07:24:51+00:00"
|
||||
"time": "2020-05-23T08:02:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-file-iterator",
|
||||
|
|
@ -1850,17 +1907,73 @@
|
|||
"time": "2020-06-26T11:58:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "9.3.5",
|
||||
"name": "phpunit/php-token-stream",
|
||||
"version": "4.0.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "7115b00b23bcd4f62a73855c9615694d2f206e71"
|
||||
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
|
||||
"reference": "a853a0e183b9db7eed023d7933a858fa1c8d25a3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/7115b00b23bcd4f62a73855c9615694d2f206e71",
|
||||
"reference": "7115b00b23bcd4f62a73855c9615694d2f206e71",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/a853a0e183b9db7eed023d7933a858fa1c8d25a3",
|
||||
"reference": "a853a0e183b9db7eed023d7933a858fa1c8d25a3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-tokenizer": "*",
|
||||
"php": "^7.3 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "4.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"src/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Sebastian Bergmann",
|
||||
"email": "sebastian@phpunit.de"
|
||||
}
|
||||
],
|
||||
"description": "Wrapper around PHP's tokenizer extension.",
|
||||
"homepage": "https://github.com/sebastianbergmann/php-token-stream/",
|
||||
"keywords": [
|
||||
"tokenizer"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/sebastianbergmann",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"abandoned": true,
|
||||
"time": "2020-08-04T08:28:15+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "9.2.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "1c6a9e4312e209e659f1fce3ce88dd197c2448f6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1c6a9e4312e209e659f1fce3ce88dd197c2448f6",
|
||||
"reference": "1c6a9e4312e209e659f1fce3ce88dd197c2448f6",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -1871,30 +1984,30 @@
|
|||
"ext-mbstring": "*",
|
||||
"ext-xml": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"myclabs/deep-copy": "^1.10.1",
|
||||
"phar-io/manifest": "^2.0.1",
|
||||
"phar-io/version": "^3.0.2",
|
||||
"php": "^7.3 || ^8.0",
|
||||
"phpspec/prophecy": "^1.11.1",
|
||||
"phpunit/php-code-coverage": "^9.1.1",
|
||||
"phpunit/php-file-iterator": "^3.0.4",
|
||||
"phpunit/php-invoker": "^3.1",
|
||||
"myclabs/deep-copy": "^1.9.5",
|
||||
"phar-io/manifest": "^1.0.3",
|
||||
"phar-io/version": "^2.0.1",
|
||||
"php": "^7.3",
|
||||
"phpspec/prophecy": "^1.10.3",
|
||||
"phpunit/php-code-coverage": "^8.0.2",
|
||||
"phpunit/php-file-iterator": "^3.0.3",
|
||||
"phpunit/php-invoker": "^3.0.2",
|
||||
"phpunit/php-text-template": "^2.0.2",
|
||||
"phpunit/php-timer": "^5.0.1",
|
||||
"sebastian/code-unit": "^1.0.5",
|
||||
"sebastian/comparator": "^4.0.3",
|
||||
"sebastian/diff": "^4.0.2",
|
||||
"sebastian/diff": "^4.0.1",
|
||||
"sebastian/environment": "^5.1.2",
|
||||
"sebastian/exporter": "^4.0.2",
|
||||
"sebastian/global-state": "^5.0",
|
||||
"sebastian/global-state": "^4.0",
|
||||
"sebastian/object-enumerator": "^4.0.2",
|
||||
"sebastian/resource-operations": "^3.0.2",
|
||||
"sebastian/type": "^2.2.1",
|
||||
"sebastian/type": "^2.1.1",
|
||||
"sebastian/version": "^3.0.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-pdo": "*",
|
||||
"phpspec/prophecy-phpunit": "^2.0.1"
|
||||
"phpspec/prophecy-phpunit": "^2.0"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-soap": "*",
|
||||
|
|
@ -1906,7 +2019,7 @@
|
|||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "9.3-dev"
|
||||
"dev-master": "9.2-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
|
@ -1945,7 +2058,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-08-10T06:50:08+00:00"
|
||||
"time": "2020-07-13T17:55:55+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/container",
|
||||
|
|
@ -2262,59 +2375,6 @@
|
|||
],
|
||||
"time": "2020-06-26T12:05:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/complexity",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/complexity.git",
|
||||
"reference": "33fcd6a26656c6546f70871244ecba4b4dced097"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/33fcd6a26656c6546f70871244ecba4b4dced097",
|
||||
"reference": "33fcd6a26656c6546f70871244ecba4b4dced097",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"nikic/php-parser": "^4.7",
|
||||
"php": "^7.3 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.2"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"src/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Sebastian Bergmann",
|
||||
"email": "sebastian@phpunit.de",
|
||||
"role": "lead"
|
||||
}
|
||||
],
|
||||
"description": "Library for calculating the complexity of PHP code units",
|
||||
"homepage": "https://github.com/sebastianbergmann/complexity",
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/sebastianbergmann",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-07-25T14:01:34+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/diff",
|
||||
"version": "4.0.2",
|
||||
|
|
@ -2511,26 +2571,26 @@
|
|||
},
|
||||
{
|
||||
"name": "sebastian/global-state",
|
||||
"version": "5.0.0",
|
||||
"version": "4.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/global-state.git",
|
||||
"reference": "22ae663c951bdc39da96603edc3239ed3a299097"
|
||||
"reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/22ae663c951bdc39da96603edc3239ed3a299097",
|
||||
"reference": "22ae663c951bdc39da96603edc3239ed3a299097",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bdb1e7c79e592b8c82cb1699be3c8743119b8a72",
|
||||
"reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.3 || ^8.0",
|
||||
"php": "^7.3",
|
||||
"sebastian/object-reflector": "^2.0",
|
||||
"sebastian/recursion-context": "^4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-dom": "*",
|
||||
"phpunit/phpunit": "^9.3"
|
||||
"phpunit/phpunit": "^9.0"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-uopz": "*"
|
||||
|
|
@ -2538,7 +2598,7 @@
|
|||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "5.0-dev"
|
||||
"dev-master": "4.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
|
@ -2561,66 +2621,7 @@
|
|||
"keywords": [
|
||||
"global state"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/sebastianbergmann",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-08-07T04:09:03+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/lines-of-code",
|
||||
"version": "1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/lines-of-code.git",
|
||||
"reference": "e02bf626f404b5daec382a7b8a6a4456e49017e5"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e02bf626f404b5daec382a7b8a6a4456e49017e5",
|
||||
"reference": "e02bf626f404b5daec382a7b8a6a4456e49017e5",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"nikic/php-parser": "^4.6",
|
||||
"php": "^7.3 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.2"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"src/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Sebastian Bergmann",
|
||||
"email": "sebastian@phpunit.de",
|
||||
"role": "lead"
|
||||
}
|
||||
],
|
||||
"description": "Library for counting the lines of code in PHP source code",
|
||||
"homepage": "https://github.com/sebastianbergmann/lines-of-code",
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/sebastianbergmann",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2020-07-22T18:33:42+00:00"
|
||||
"time": "2020-02-07T06:11:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/object-enumerator",
|
||||
|
|
@ -4408,21 +4409,22 @@
|
|||
},
|
||||
{
|
||||
"name": "vimeo/psalm",
|
||||
"version": "3.12.2",
|
||||
"version": "3.13.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/vimeo/psalm.git",
|
||||
"reference": "7c7ebd068f8acaba211d4a2c707c4ba90874fa26"
|
||||
"reference": "afd8874a9e4562eac42a02de90e42e430c3a1db1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/vimeo/psalm/zipball/7c7ebd068f8acaba211d4a2c707c4ba90874fa26",
|
||||
"reference": "7c7ebd068f8acaba211d4a2c707c4ba90874fa26",
|
||||
"url": "https://api.github.com/repos/vimeo/psalm/zipball/afd8874a9e4562eac42a02de90e42e430c3a1db1",
|
||||
"reference": "afd8874a9e4562eac42a02de90e42e430c3a1db1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"amphp/amp": "^2.1",
|
||||
"amphp/byte-stream": "^1.5",
|
||||
"composer/package-versions-deprecated": "^1.8.0",
|
||||
"composer/semver": "^1.4 || ^2.0 || ^3.0",
|
||||
"composer/xdebug-handler": "^1.1",
|
||||
"ext-dom": "*",
|
||||
|
|
@ -4432,9 +4434,8 @@
|
|||
"ext-tokenizer": "*",
|
||||
"felixfbecker/advanced-json-rpc": "^3.0.3",
|
||||
"felixfbecker/language-server-protocol": "^1.4",
|
||||
"netresearch/jsonmapper": "^1.0 || ^2.0",
|
||||
"nikic/php-parser": "^4.3",
|
||||
"ocramius/package-versions": "^1.2",
|
||||
"netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0",
|
||||
"nikic/php-parser": "4.3.* || 4.4.* || 4.5.* || 4.6.*",
|
||||
"openlss/lib-array2xml": "^1.0",
|
||||
"php": "^7.1.3|^8",
|
||||
"sebastian/diff": "^3.0 || ^4.0",
|
||||
|
|
@ -4450,7 +4451,6 @@
|
|||
"bamarni/composer-bin-plugin": "^1.2",
|
||||
"brianium/paratest": "^4.0.0",
|
||||
"ext-curl": "*",
|
||||
"php-coveralls/php-coveralls": "^2.2",
|
||||
"phpmyadmin/sql-parser": "5.1.0",
|
||||
"phpspec/prophecy": ">=1.9.0",
|
||||
"phpunit/phpunit": "^7.5.16 || ^8.5 || ^9.0",
|
||||
|
|
@ -4501,7 +4501,7 @@
|
|||
"inspection",
|
||||
"php"
|
||||
],
|
||||
"time": "2020-07-03T16:59:07+00:00"
|
||||
"time": "2020-07-30T19:42:34+00:00"
|
||||
},
|
||||
{
|
||||
"name": "webmozart/assert",
|
||||
|
|
|
|||
|
|
@ -9,18 +9,17 @@
|
|||
stopOnFailure="false"
|
||||
verbose="true"
|
||||
>
|
||||
<coverage>
|
||||
<include>
|
||||
<directory suffix=".php">./src</directory>
|
||||
</include>
|
||||
<report>
|
||||
<html outputDirectory="./coverage"/>
|
||||
</report>
|
||||
</coverage>
|
||||
<testsuites>
|
||||
<testsuite name="unit">
|
||||
<directory>./tests</directory>
|
||||
</testsuite>
|
||||
</testsuites>
|
||||
<logging/>
|
||||
<filter>
|
||||
<whitelist>
|
||||
<directory suffix=".php">./src</directory>
|
||||
</whitelist>
|
||||
</filter>
|
||||
<logging>
|
||||
<log type="coverage-html" target="./coverage" />
|
||||
</logging>
|
||||
</phpunit>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,27 @@
|
|||
<?php
|
||||
|
||||
namespace WellRESTed\Message;
|
||||
|
||||
use Psr\Http\Message\ResponseFactoryInterface;
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
|
||||
class ResponseFactory implements ResponseFactoryInterface
|
||||
{
|
||||
/**
|
||||
* Create a new response.
|
||||
*
|
||||
* @param int $code HTTP status code; defaults to 200
|
||||
* @param string $reasonPhrase Reason phrase to associate with status code
|
||||
* in generated response; if none is provided implementations MAY use
|
||||
* the defaults as suggested in the HTTP specification.
|
||||
*
|
||||
* @return ResponseInterface
|
||||
*/
|
||||
public function createResponse(
|
||||
int $code = 200,
|
||||
string $reasonPhrase = ''
|
||||
): ResponseInterface {
|
||||
return (new Response())
|
||||
->withStatus($code, $reasonPhrase);
|
||||
}
|
||||
}
|
||||
|
|
@ -76,7 +76,7 @@ class ServerRequest extends Request implements ServerRequestInterface
|
|||
array $headers = [],
|
||||
?StreamInterface $body = null,
|
||||
array $serverParams = []
|
||||
){
|
||||
) {
|
||||
parent::__construct($method, $uri, $headers, $body);
|
||||
$this->serverParams = $serverParams;
|
||||
$this->cookieParams = [];
|
||||
|
|
|
|||
|
|
@ -0,0 +1,53 @@
|
|||
<?php
|
||||
|
||||
namespace WellRESTed\Message;
|
||||
|
||||
use Psr\Http\Message\StreamFactoryInterface;
|
||||
use Psr\Http\Message\StreamInterface;
|
||||
use RuntimeException;
|
||||
|
||||
class StreamFactory implements StreamFactoryInterface
|
||||
{
|
||||
/**
|
||||
* Create a new stream from a string.
|
||||
*
|
||||
* @param string $content String content with which to populate the stream.
|
||||
* @return StreamInterface
|
||||
*/
|
||||
public function createStream(string $content = ''): StreamInterface
|
||||
{
|
||||
return new Stream($content);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a stream from an existing file.
|
||||
*
|
||||
* @param string $filename Filename or stream URI to use as basis of stream.
|
||||
* @param string $mode Mode with which to open the underlying file/stream.
|
||||
*
|
||||
* @return StreamInterface
|
||||
* @throws RuntimeException If the file cannot be opened.
|
||||
*/
|
||||
public function createStreamFromFile(
|
||||
string $filename,
|
||||
string $mode = 'r'
|
||||
): StreamInterface {
|
||||
$f = fopen($filename, $mode);
|
||||
if ($f === false) {
|
||||
throw new RuntimeException();
|
||||
}
|
||||
return new Stream($f);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new stream from an existing resource.
|
||||
*
|
||||
* @param resource $resource PHP resource to use as basis of stream.
|
||||
*
|
||||
* @return StreamInterface
|
||||
*/
|
||||
public function createStreamFromResource($resource): StreamInterface
|
||||
{
|
||||
return new Stream($resource);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
<?php
|
||||
|
||||
namespace WellRESTed\Message;
|
||||
|
||||
use WellRESTed\Test\TestCase;
|
||||
|
||||
class ResponseFactoryTest extends TestCase
|
||||
{
|
||||
public function testCreatesResponseWithStatusCode200ByDefault(): void
|
||||
{
|
||||
$statusCode = 200;
|
||||
$reasonPhrase = 'OK';
|
||||
|
||||
$factory = new ResponseFactory();
|
||||
$response = $factory->createResponse();
|
||||
|
||||
$this->assertEquals($statusCode, $response->getStatusCode());
|
||||
$this->assertEquals($reasonPhrase, $response->getReasonPhrase());
|
||||
}
|
||||
|
||||
public function testCreateResponseWithStatusCode(): void
|
||||
{
|
||||
$statusCode = 201;
|
||||
$reasonPhrase = 'Created';
|
||||
|
||||
$factory = new ResponseFactory();
|
||||
$response = $factory->createResponse($statusCode);
|
||||
|
||||
$this->assertEquals($statusCode, $response->getStatusCode());
|
||||
$this->assertEquals($reasonPhrase, $response->getReasonPhrase());
|
||||
}
|
||||
|
||||
public function testCreateResponseWithStatusCodeAndCustomReasonPhrase(): void
|
||||
{
|
||||
$statusCode = 512;
|
||||
$reasonPhrase = 'Shortage of Chairs';
|
||||
|
||||
$factory = new ResponseFactory();
|
||||
$response = $factory->createResponse($statusCode, $reasonPhrase);
|
||||
|
||||
$this->assertEquals($statusCode, $response->getStatusCode());
|
||||
$this->assertEquals($reasonPhrase, $response->getReasonPhrase());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
<?php
|
||||
|
||||
namespace WellRESTed\Message;
|
||||
|
||||
use RuntimeException;
|
||||
use WellRESTed\Test\TestCase;
|
||||
|
||||
class StreamFactoryTest extends TestCase
|
||||
{
|
||||
private const CONTENT = 'Stream content';
|
||||
|
||||
/** @var string $tempPath */
|
||||
private $tempPath;
|
||||
|
||||
protected function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
$this->tempPath = tempnam(sys_get_temp_dir(), 'test');
|
||||
file_put_contents($this->tempPath, self::CONTENT);
|
||||
}
|
||||
|
||||
protected function tearDown(): void
|
||||
{
|
||||
parent::tearDown();
|
||||
unlink($this->tempPath);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
public function testCreatesStreamFromString(): void
|
||||
{
|
||||
$factory = new StreamFactory();
|
||||
$stream = $factory->createStream(self::CONTENT);
|
||||
|
||||
$this->assertEquals(self::CONTENT, (string) $stream);
|
||||
}
|
||||
|
||||
public function testCreatesStreamFromFile(): void
|
||||
{
|
||||
$factory = new StreamFactory();
|
||||
$stream = $factory->createStreamFromFile($this->tempPath);
|
||||
|
||||
$this->assertEquals(self::CONTENT, (string) $stream);
|
||||
}
|
||||
|
||||
public function testCreatesStreamFromFileWithModeRByDefault(): void
|
||||
{
|
||||
$factory = new StreamFactory();
|
||||
$stream = $factory->createStreamFromFile($this->tempPath);
|
||||
|
||||
$mode = $stream->getMetadata('mode');
|
||||
$this->assertEquals('r', $mode);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider modeProvider
|
||||
* @param string $mode
|
||||
*/
|
||||
public function testCreatesStreamFromFileWithPassedMode(string $mode): void
|
||||
{
|
||||
$factory = new StreamFactory();
|
||||
$stream = $factory->createStreamFromFile($this->tempPath, $mode);
|
||||
|
||||
$actual = $stream->getMetadata('mode');
|
||||
$this->assertEquals($mode, $actual);
|
||||
}
|
||||
|
||||
public function modeProvider(): array
|
||||
{
|
||||
return [
|
||||
['r'],
|
||||
['r+'],
|
||||
['w'],
|
||||
['w+']
|
||||
];
|
||||
}
|
||||
|
||||
public function testCreateStreamFromFileThrowsRuntimeExceptionWhenUnableToOpenFile(): void
|
||||
{
|
||||
$this->expectException(RuntimeException::class);
|
||||
|
||||
$factory = new StreamFactory();
|
||||
@$factory->createStreamFromFile('/dev/null/not-a-file', 'w');
|
||||
}
|
||||
|
||||
public function testCreatesStreamFromResource(): void
|
||||
{
|
||||
$f = fopen($this->tempPath, 'r');
|
||||
|
||||
$factory = new StreamFactory();
|
||||
$stream = $factory->createStreamFromResource($f);
|
||||
|
||||
$this->assertEquals(self::CONTENT, (string) $stream);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue