-
-
Notifications
You must be signed in to change notification settings - Fork 5
/
ApiDocuExtension.phpt
43 lines (37 loc) · 1.32 KB
/
ApiDocuExtension.phpt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php declare(strict_types = 1);
use Contributte\ApiDocu\DI\ApiDocuExtension;
use Contributte\ApiDocu\Generator;
use Contributte\ApiRouter\DI\ApiRouterExtension;
use Contributte\Tester\Environment;
use Contributte\Tester\Toolkit;
use Nette\Bridges\ApplicationDI\LatteExtension;
use Nette\Bridges\HttpDI\HttpExtension;
use Nette\DI\Compiler;
use Nette\DI\Container;
use Nette\DI\ContainerLoader;
use Tester\Assert;
require_once __DIR__ . '/../../bootstrap.php';
Toolkit::test(function (): void {
$loader = new ContainerLoader(Environment::getTestDir(), true);
$class = $loader->load(function (Compiler $compiler): void {
$compiler->addExtension('apiRouter', new ApiRouterExtension());
$compiler->addExtension('apiDocu', new ApiDocuExtension());
$compiler->addExtension('http', new HttpExtension());
$compiler->addExtension('latte', new LatteExtension(Environment::getTestDir()));
$compiler->addConfig([
'parameters' => [
'wwwDir' => Environment::getTestDir(),
'tempDir' => Environment::getTestDir(),
'debugMode' => false,
],
]);
$compiler->addConfig(\Contributte\Tester\Utils\Neonkit::load(<<<'NEON'
services:
router: Nette\Routing\SimpleRouter
NEON
));
});
/** @var Container $container */
$container = new $class();
Assert::type(Generator::class, $container->getByType(Generator::class));
});