Skip to content
This repository was archived by the owner on Jan 29, 2020. It is now read-only.

Commit b7d7994

Browse files
committed
Added ConfigProvider tests
- Ensure expected dependencies are provided.
1 parent 2ed55d3 commit b7d7994

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

test/ConfigProviderTest.php

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
<?php
2+
3+
namespace ProblemDetailsTest;
4+
5+
use PHPUnit\Framework\TestCase;
6+
use ProblemDetails\ConfigProvider;
7+
use ProblemDetails\ProblemDetailsMiddleware;
8+
use ProblemDetails\ProblemDetailsMiddlewareFactory;
9+
use ProblemDetails\ProblemDetailsResponseFactory;
10+
use ProblemDetails\ProblemDetailsResponseFactoryFactory;
11+
12+
class ConfigProviderTest extends TestCase
13+
{
14+
public function testReturnsExpectedDependencies()
15+
{
16+
$provider = new ConfigProvider();
17+
$config = $provider();
18+
19+
$this->assertArrayHasKey('dependencies', $config);
20+
21+
$dependencies = $config['dependencies'];
22+
$this->assertArrayHasKey('factories', $dependencies);
23+
24+
$factories = $dependencies['factories'];
25+
$this->assertCount(2, $factories);
26+
$this->assertArrayHasKey(ProblemDetailsMiddleware::class, $factories);
27+
$this->assertArrayHasKey(ProblemDetailsResponseFactory::class, $factories);
28+
29+
$this->assertSame(
30+
ProblemDetailsMiddlewareFactory::class,
31+
$factories[ProblemDetailsMiddleware::class]
32+
);
33+
$this->assertSame(
34+
ProblemDetailsResponseFactoryFactory::class,
35+
$factories[ProblemDetailsResponseFactory::class]
36+
);
37+
}
38+
}

0 commit comments

Comments
 (0)