summaryrefslogtreecommitdiff
path: root/tests/Unit/Http/Psr7ServiceProviderTest.php
diff options
context:
space:
mode:
authormsquare <msquare@notrademark.de>2018-09-04 18:24:11 +0200
committermsquare <msquare@notrademark.de>2018-09-04 18:24:11 +0200
commitb320fc779063ee80b8f0ba505cb323287ccccbf5 (patch)
tree1e420597ae72c979361bf29b66ae7e27c73cf431 /tests/Unit/Http/Psr7ServiceProviderTest.php
parent9f1ee0c6c6497d43fb275491ec53fda420f64b81 (diff)
parent36dafdb68acbde2fe42ce36ef50f497c8c06411f (diff)
Merge branch 'MyIgel-rebuild-psr7'
Diffstat (limited to 'tests/Unit/Http/Psr7ServiceProviderTest.php')
-rw-r--r--tests/Unit/Http/Psr7ServiceProviderTest.php56
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/Unit/Http/Psr7ServiceProviderTest.php b/tests/Unit/Http/Psr7ServiceProviderTest.php
new file mode 100644
index 00000000..e14daf2a
--- /dev/null
+++ b/tests/Unit/Http/Psr7ServiceProviderTest.php
@@ -0,0 +1,56 @@
+<?php
+
+namespace Engelsystem\Test\Unit\Http;
+
+use Engelsystem\Http\Psr7ServiceProvider;
+use Engelsystem\Http\Request;
+use Engelsystem\Http\Response;
+use Engelsystem\Test\Unit\ServiceProviderTest;
+use PHPUnit_Framework_MockObject_MockObject as MockObject;
+use Psr\Http\Message\ResponseInterface;
+use Psr\Http\Message\ServerRequestInterface as RequestInterface;
+use Symfony\Bridge\PsrHttpMessage\Factory\DiactorosFactory;
+
+class Psr7ServiceProviderTest extends ServiceProviderTest
+{
+ /**
+ * @covers \Engelsystem\Http\Psr7ServiceProvider::register()
+ */
+ public function testRegister()
+ {
+ /** @var MockObject|DiactorosFactory $psr7Factory */
+ $psr7Factory = $this->createMock(DiactorosFactory::class);
+ /** @var MockObject|Request $request */
+ $request = $this->createMock(Request::class);
+ /** @var MockObject|Response $response */
+ $response = $this->createMock(Response::class);
+ /** @var MockObject|RequestInterface $psr7request */
+ $psr7request = $this->createMock(Request::class);
+ /** @var MockObject|ResponseInterface $psr7response */
+ $psr7response = $this->createMock(Response::class);
+
+ $app = $this->getApp(['make', 'instance', 'get', 'bind']);
+ $this->setExpects($app, 'make', [DiactorosFactory::class], $psr7Factory);
+
+ $app->expects($this->atLeastOnce())
+ ->method('get')
+ ->withConsecutive(['request'], ['response'])
+ ->willReturnOnConsecutiveCalls($request, $response);
+ $app->expects($this->atLeastOnce())
+ ->method('instance')
+ ->withConsecutive(
+ ['psr7.factory', $psr7Factory],
+ ['psr7.request', $psr7request],
+ ['psr7.response', $psr7response]
+ );
+ $app->expects($this->atLeastOnce())
+ ->method('bind')
+ ->withConsecutive(
+ [RequestInterface::class, 'psr7.request'],
+ [ResponseInterface::class, 'psr7.response']
+ );
+
+ $serviceProvider = new Psr7ServiceProvider($app);
+ $serviceProvider->register();
+ }
+}