Skip to content

Commit

Permalink
Merge pull request #34 from alexraputa/update-tests
Browse files Browse the repository at this point in the history
qa: Update tests and remove unused `prophecy` dependency
  • Loading branch information
Ocramius committed Oct 9, 2022
2 parents cfd6f24 + 5fcc221 commit 9669e5b
Show file tree
Hide file tree
Showing 21 changed files with 251 additions and 300 deletions.
2 changes: 0 additions & 2 deletions composer.json
Expand Up @@ -51,8 +51,6 @@
"laminas/laminas-coding-standard": "~2.4.0",
"laminas/laminas-diactoros": "^2.11",
"laminas/laminas-stratigility": "^3.4",
"phpspec/prophecy": "^1.9",
"phpspec/prophecy-phpunit": "^2.0",
"phpunit/phpunit": "^9.5.11",
"psalm/plugin-phpunit": "^0.17.0",
"vimeo/psalm": "^4.17"
Expand Down
121 changes: 1 addition & 120 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

34 changes: 13 additions & 21 deletions psalm-baseline.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="4.17.0@6f4707aa41c9174353a6434bba3fc8840f981d9c">
<files psalm-version="4.27.0@faf106e717c37b8c81721845dba9de3d8deed8ff">
<file src="src/ConfigProvider.php">
<MixedArrayOffset occurrences="1"/>
<UndefinedClass occurrences="6">
Expand Down Expand Up @@ -162,30 +162,20 @@
</RedundantConditionGivenDocblockType>
</file>
<file src="src/Test/AbstractImplicitMethodsIntegrationTest.php">
<InvalidArgument occurrences="2">
<code>testExplicitRequest</code>
<code>testWithoutImplicitMiddleware</code>
</InvalidArgument>
<MixedAssignment occurrences="1">
<code>$value</code>
</MixedAssignment>
<PossiblyInvalidArgument occurrences="2">
<code>testExplicitRequest</code>
<code>testWithoutImplicitMiddleware</code>
</PossiblyInvalidArgument>
</file>
<file src="test/ConfigProviderTest.php">
<MixedArgument occurrences="6">
<code>$factories</code>
<code>$factories</code>
<code>$factories</code>
<code>$factories</code>
<code>$factories</code>
<code>$factories</code>
</MixedArgument>
<MixedAssignment occurrences="1">
<code>$factories</code>
</MixedAssignment>
<MixedArrayOffset occurrences="1"/>
<UndefinedClass occurrences="6">
<code>\Zend\Expressive\Router\Middleware\DispatchMiddleware</code>
<code>\Zend\Expressive\Router\Middleware\ImplicitHeadMiddleware</code>
<code>\Zend\Expressive\Router\Middleware\ImplicitOptionsMiddleware</code>
<code>\Zend\Expressive\Router\Middleware\MethodNotAllowedMiddleware</code>
<code>\Zend\Expressive\Router\Middleware\RouteMiddleware</code>
<code>\Zend\Expressive\Router\RouteCollector</code>
</UndefinedClass>
</file>
<file src="test/Middleware/ImplicitHeadMiddlewareFactoryTest.php">
<UndefinedClass occurrences="1">
Expand Down Expand Up @@ -218,7 +208,9 @@
</UndefinedClass>
</file>
<file src="test/Response/CallableResponseFactoryDecoratorTest.php">
<InternalMethod occurrences="1"/>
<InternalMethod occurrences="1">
<code>new CallableResponseFactoryDecorator(fn (): ResponseInterface =&gt; $this-&gt;response)</code>
</InternalMethod>
</file>
<file src="test/RouteCollectorFactoryTest.php">
<UndefinedClass occurrences="1">
Expand Down
6 changes: 3 additions & 3 deletions src/Test/AbstractImplicitMethodsIntegrationTest.php
Expand Up @@ -176,7 +176,7 @@ static function (ServerRequestInterface $request) use ($method, $implicitRoute):

$response = $pipeline->process($request, $finalHandler);

self::assertEquals(StatusCode::STATUS_OK, $response->getStatusCode());
self::assertSame(StatusCode::STATUS_OK, $response->getStatusCode());
self::assertSame('FOO BAR BODY', (string) $response->getBody());
self::assertTrue($response->hasHeader('foo-bar'));
self::assertSame('baz', $response->getHeaderLine('foo-bar'));
Expand Down Expand Up @@ -355,7 +355,7 @@ static function (ServerRequestInterface $request) use ($route1, $expectedParams)

$response = $pipeline->process($request, $finalHandler);

self::assertEquals(StatusCode::STATUS_OK, $response->getStatusCode());
self::assertSame(StatusCode::STATUS_OK, $response->getStatusCode());
self::assertEmpty((string) $response->getBody());
self::assertTrue($response->hasHeader('foo-bar'));
self::assertSame('baz', $response->getHeaderLine('foo-bar'));
Expand Down Expand Up @@ -454,7 +454,7 @@ public function testImplicitOptionsRequestRouteNotFound(): void

$response = $pipeline->process($request, $finalHandler);

self::assertEquals(StatusCode::STATUS_IM_A_TEAPOT, $response->getStatusCode());
self::assertSame(StatusCode::STATUS_IM_A_TEAPOT, $response->getStatusCode());
self::assertSame('FOO BAR BODY', (string) $response->getBody());
self::assertTrue($response->hasHeader('foo-bar'));
self::assertSame('baz', $response->getHeaderLine('foo-bar'));
Expand Down
35 changes: 25 additions & 10 deletions test/ConfigProviderTest.php
Expand Up @@ -7,22 +7,37 @@
use Mezzio\Router\ConfigProvider;
use Mezzio\Router\Middleware;
use Mezzio\Router\RouteCollector;
use Mezzio\Router\RouteCollectorFactory;
use PHPUnit\Framework\TestCase;

class ConfigProviderTest extends TestCase
/** @covers \Mezzio\Router\ConfigProvider */
final class ConfigProviderTest extends TestCase
{
public function testProviderProvidesFactoriesForAllMiddleware(): void
{
$provider = new ConfigProvider();
$config = $provider();

$this->assertTrue(isset($config['dependencies']['factories']));
$factories = $config['dependencies']['factories'];
$this->assertArrayHasKey(Middleware\DispatchMiddleware::class, $factories);
$this->assertArrayHasKey(Middleware\ImplicitHeadMiddleware::class, $factories);
$this->assertArrayHasKey(Middleware\ImplicitOptionsMiddleware::class, $factories);
$this->assertArrayHasKey(Middleware\MethodNotAllowedMiddleware::class, $factories);
$this->assertArrayHasKey(Middleware\RouteMiddleware::class, $factories);
$this->assertArrayHasKey(RouteCollector::class, $factories);
self::assertSame([
'dependencies' => [
'aliases' => [
// @codingStandardsIgnoreStart
\Zend\Expressive\Router\Middleware\DispatchMiddleware::class => Middleware\DispatchMiddleware::class,
\Zend\Expressive\Router\Middleware\ImplicitHeadMiddleware::class => Middleware\ImplicitHeadMiddleware::class,
\Zend\Expressive\Router\Middleware\ImplicitOptionsMiddleware::class => Middleware\ImplicitOptionsMiddleware::class,
\Zend\Expressive\Router\Middleware\MethodNotAllowedMiddleware::class => Middleware\MethodNotAllowedMiddleware::class,
\Zend\Expressive\Router\Middleware\RouteMiddleware::class => Middleware\RouteMiddleware::class,
\Zend\Expressive\Router\RouteCollector::class => RouteCollector::class,
// @codingStandardsIgnoreEnd
],
'factories' => [
Middleware\DispatchMiddleware::class => Middleware\DispatchMiddlewareFactory::class,
Middleware\ImplicitHeadMiddleware::class => Middleware\ImplicitHeadMiddlewareFactory::class,
Middleware\ImplicitOptionsMiddleware::class => Middleware\ImplicitOptionsMiddlewareFactory::class,
Middleware\MethodNotAllowedMiddleware::class => Middleware\MethodNotAllowedMiddlewareFactory::class,
Middleware\RouteMiddleware::class => Middleware\RouteMiddlewareFactory::class,
RouteCollector::class => RouteCollectorFactory::class,
],
],
], $provider());
}
}
9 changes: 2 additions & 7 deletions test/InMemoryContainer.php
Expand Up @@ -15,10 +15,7 @@ final class InMemoryContainer implements ContainerInterface
/** @var array<string,mixed> */
private $services = [];

/**
* @param string $id
* @return mixed
*/
/** {@inheritDoc} */
public function get($id)
{
if (! $this->has($id)) {
Expand All @@ -29,9 +26,7 @@ public function get($id)
return $this->services[$id];
}

/**
* @param string $id
*/
/** {@inheritDoc} */
public function has($id): bool
{
return array_key_exists($id, $this->services);
Expand Down
3 changes: 2 additions & 1 deletion test/Middleware/DispatchMiddlewareFactoryTest.php
Expand Up @@ -8,7 +8,8 @@
use PHPUnit\Framework\TestCase;
use Psr\Container\ContainerInterface;

class DispatchMiddlewareFactoryTest extends TestCase
/** @covers \Mezzio\Router\Middleware\DispatchMiddlewareFactory */
final class DispatchMiddlewareFactoryTest extends TestCase
{
public function testFactoryProducesDispatchMiddleware(): void
{
Expand Down
23 changes: 13 additions & 10 deletions test/Middleware/DispatchMiddlewareTest.php
Expand Up @@ -12,25 +12,28 @@
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;

class DispatchMiddlewareTest extends TestCase
/** @covers \Mezzio\Router\Middleware\DispatchMiddleware */
final class DispatchMiddlewareTest extends TestCase
{
/** @var RequestHandlerInterface&MockObject */
private $handler;

/** @var DispatchMiddleware */
private $middleware;
private RequestHandlerInterface $handler;

/** @var ServerRequestInterface&MockObject */
private $request;
private ServerRequestInterface $request;

/** @var ResponseInterface&MockObject */
private $response;
private ResponseInterface $response;

private DispatchMiddleware $middleware;

protected function setUp(): void
{
$this->response = $this->createMock(ResponseInterface::class);
$this->request = $this->createMock(ServerRequestInterface::class);
$this->handler = $this->createMock(RequestHandlerInterface::class);
parent::setUp();

$this->response = $this->createMock(ResponseInterface::class);
$this->request = $this->createMock(ServerRequestInterface::class);
$this->handler = $this->createMock(RequestHandlerInterface::class);

$this->middleware = new DispatchMiddleware();
}

Expand Down

0 comments on commit 9669e5b

Please sign in to comment.