From 766034f2f135298b88f123a9236995348c4b4b1e Mon Sep 17 00:00:00 2001 From: Nyholm Date: Mon, 24 Jun 2019 18:51:20 +0200 Subject: [PATCH 1/3] Moved Symfony before Buzz --- src/Strategy/CommonClassesStrategy.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Strategy/CommonClassesStrategy.php b/src/Strategy/CommonClassesStrategy.php index b201eff..50d9789 100644 --- a/src/Strategy/CommonClassesStrategy.php +++ b/src/Strategy/CommonClassesStrategy.php @@ -80,24 +80,24 @@ final class CommonClassesStrategy implements DiscoveryStrategy ['class' => Cake::class, 'condition' => Cake::class], ['class' => Zend::class, 'condition' => Zend::class], ['class' => Artax::class, 'condition' => Artax::class], - [ - 'class' => [self::class, 'buzzInstantiate'], - 'condition' => [\Buzz\Client\FileGetContents::class, \Buzz\Message\ResponseBuilder::class], - ], [ 'class' => [self::class, 'symfonyHttplugInstantiate'], 'condition' => SymfonyHttplug::class, ], - ], - Psr18Client::class => [ [ 'class' => [self::class, 'buzzInstantiate'], 'condition' => [\Buzz\Client\FileGetContents::class, \Buzz\Message\ResponseBuilder::class], ], + ], + Psr18Client::class => [ [ 'class' => [self::class, 'symfonyPsr18Instantiate'], 'condition' => SymfonyPsr18::class, ], + [ + 'class' => [self::class, 'buzzInstantiate'], + 'condition' => [\Buzz\Client\FileGetContents::class, \Buzz\Message\ResponseBuilder::class], + ], ], ]; From 9e9720d79d4d4bb208501c3d3b6217b28a6c3443 Mon Sep 17 00:00:00 2001 From: Nyholm Date: Wed, 26 Jun 2019 21:06:01 +0200 Subject: [PATCH 2/3] Moved Symfony and added test --- .travis.yml | 2 +- src/Strategy/CommonClassesStrategy.php | 10 +++++----- tests/HttpClientDiscoveryTest.php | 16 ++++++++++++++++ 3 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 tests/HttpClientDiscoveryTest.php diff --git a/.travis.yml b/.travis.yml index bbca139..92acfab 100644 --- a/.travis.yml +++ b/.travis.yml @@ -30,7 +30,7 @@ matrix: env: COMPOSER_FLAGS="--prefer-stable --prefer-lowest" COVERAGE=true TEST_COMMAND="composer test" PULI_VERSION=1.0.0-beta9 - name: PHPUnit tests php: 7.3 - env: TEST_COMMAND="./vendor/bin/phpunit" DEPENDENCIES="phpunit/phpunit:^7.5 nyholm/psr7:^1.0 kriswallsmith/buzz:^1.0@beta php-http/curl-client:^1.0 php-http/message" + env: TEST_COMMAND="./vendor/bin/phpunit" DEPENDENCIES="phpunit/phpunit:^7.5 nyholm/psr7:^1.0 kriswallsmith/buzz:^1.0 php-http/curl-client:^1.0 php-http/message" - name: PHPUnit test with nothing installed php: 7.3 env: TEST_COMMAND="./vendor/bin/phpunit --group=NothingInstalled" DEPENDENCIES="phpunit/phpunit:^7.5" diff --git a/src/Strategy/CommonClassesStrategy.php b/src/Strategy/CommonClassesStrategy.php index 50d9789..6859591 100644 --- a/src/Strategy/CommonClassesStrategy.php +++ b/src/Strategy/CommonClassesStrategy.php @@ -71,6 +71,10 @@ final class CommonClassesStrategy implements DiscoveryStrategy ['class' => React::class, 'condition' => React::class], ], HttpClient::class => [ + [ + 'class' => [self::class, 'symfonyHttplugInstantiate'], + 'condition' => SymfonyHttplug::class, + ], ['class' => Guzzle6::class, 'condition' => Guzzle6::class], ['class' => Guzzle5::class, 'condition' => Guzzle5::class], ['class' => Curl::class, 'condition' => Curl::class], @@ -80,10 +84,6 @@ final class CommonClassesStrategy implements DiscoveryStrategy ['class' => Cake::class, 'condition' => Cake::class], ['class' => Zend::class, 'condition' => Zend::class], ['class' => Artax::class, 'condition' => Artax::class], - [ - 'class' => [self::class, 'symfonyHttplugInstantiate'], - 'condition' => SymfonyHttplug::class, - ], [ 'class' => [self::class, 'buzzInstantiate'], 'condition' => [\Buzz\Client\FileGetContents::class, \Buzz\Message\ResponseBuilder::class], @@ -133,7 +133,7 @@ public static function buzzInstantiate() public static function symfonyHttplugInstantiate() { - return new SymfonyHttplug(null, ClassDiscovery::findOneByType(MessageFactory::class), ClassDiscovery::findOneByType(StreamFactory::class)); + return new SymfonyHttplug(null, Psr17FactoryDiscovery::findResponseFactory(), Psr17FactoryDiscovery::findStreamFactory()); } public static function symfonyPsr18Instantiate() diff --git a/tests/HttpClientDiscoveryTest.php b/tests/HttpClientDiscoveryTest.php new file mode 100644 index 0000000..03e22c5 --- /dev/null +++ b/tests/HttpClientDiscoveryTest.php @@ -0,0 +1,16 @@ +assertInstanceOf(HttpClient::class, $client); + } +} From 6b4a99b42419f13e28c4cde9b869be8377affed4 Mon Sep 17 00:00:00 2001 From: Nyholm Date: Wed, 26 Jun 2019 21:06:55 +0200 Subject: [PATCH 3/3] cs --- src/Strategy/CommonClassesStrategy.php | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Strategy/CommonClassesStrategy.php b/src/Strategy/CommonClassesStrategy.php index 6859591..f258787 100644 --- a/src/Strategy/CommonClassesStrategy.php +++ b/src/Strategy/CommonClassesStrategy.php @@ -5,7 +5,6 @@ use GuzzleHttp\Psr7\Request as GuzzleRequest; use Http\Client\HttpAsyncClient; use Http\Client\HttpClient; -use Http\Discovery\ClassDiscovery; use Http\Discovery\MessageFactoryDiscovery; use Http\Discovery\Psr17FactoryDiscovery; use Http\Message\MessageFactory;