]> git.immae.eu Git - github/shaarli/Shaarli.git/blob - tests/container/ContainerBuilderTest.php
656472494cace2e2f3b01f35981b37c0d08a866e
[github/shaarli/Shaarli.git] / tests / container / ContainerBuilderTest.php
1 <?php
2
3 declare(strict_types=1);
4
5 namespace Shaarli\Container;
6
7 use PHPUnit\Framework\TestCase;
8 use Shaarli\Bookmark\BookmarkServiceInterface;
9 use Shaarli\Config\ConfigManager;
10 use Shaarli\Formatter\FormatterFactory;
11 use Shaarli\History;
12 use Shaarli\Render\PageBuilder;
13 use Shaarli\Render\PageCacheManager;
14 use Shaarli\Security\LoginManager;
15 use Shaarli\Security\SessionManager;
16
17 class ContainerBuilderTest extends TestCase
18 {
19 /** @var ConfigManager */
20 protected $conf;
21
22 /** @var SessionManager */
23 protected $sessionManager;
24
25 /** @var LoginManager */
26 protected $loginManager;
27
28 /** @var ContainerBuilder */
29 protected $containerBuilder;
30
31 public function setUp(): void
32 {
33 $this->conf = new ConfigManager('tests/utils/config/configJson');
34 $this->sessionManager = $this->createMock(SessionManager::class);
35
36 $this->loginManager = $this->createMock(LoginManager::class);
37 $this->loginManager->method('isLoggedIn')->willReturn(true);
38
39 $this->containerBuilder = new ContainerBuilder(
40 $this->conf,
41 $this->sessionManager,
42 $this->loginManager,
43 'UT web path'
44 );
45 }
46
47 public function testBuildContainer(): void
48 {
49 $container = $this->containerBuilder->build();
50
51 static::assertInstanceOf(ConfigManager::class, $container->conf);
52 static::assertInstanceOf(SessionManager::class, $container->sessionManager);
53 static::assertInstanceOf(LoginManager::class, $container->loginManager);
54 static::assertSame('UT web path', $container->webPath);
55 static::assertInstanceOf(History::class, $container->history);
56 static::assertInstanceOf(BookmarkServiceInterface::class, $container->bookmarkService);
57 static::assertInstanceOf(PageBuilder::class, $container->pageBuilder);
58 static::assertInstanceOf(FormatterFactory::class, $container->formatterFactory);
59 static::assertInstanceOf(PageCacheManager::class, $container->pageCacheManager);
60 }
61 }