Test Failed
Push — master ( c81326...794fe0 )
by Johannes
03:04
created

MarkdownFileIteratorFactoryTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 7
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 4
nc 1
nop 0
1
<?php
2
/**
3
 * Lichtenwallner  (https://lichtenwallner.at)
4
 *
5
 * @see https://github.com/jolicht/markdown-cms for the canonical source repository
6
 * @license https://github.com/jolicht/markdown-cms/blob/master/LICENSE MIT
7
 * @copyright Copyright (c) Johannes Lichtenwallner
8
 */
9
declare(strict_types = 1);
10
namespace JolichtTest\MarkdownCms\Iterator;
11
12
use Reddogs\Test\ServiceManagerAwareTestCase;
13
use Jolicht\MarkdownCms\ModuleConfig;
14
use Jolicht\MarkdownCms\Iterator\MarkdownFileIteratorFactory;
15
use Jolicht\MarkdownCms\Iterator\MarkdownFileIterator;
16
17
class MarkdownFileIteratorFactoryTest extends ServiceManagerAwareTestCase
18
{
19
    private $factory;
20
21
    protected function setUp()
22
    {
23
        $this->setConfigProviders([ModuleConfig::class]);
24
        parent::setUp();
25
26
        $this->factory = new MarkdownFileIteratorFactory();
27
    }
28
29
    public function testContainerHasService()
30
    {
31
        $this->assertTrue($this->getContainer()->has(MarkdownFileIterator::class));
32
    }
33
34
    public function testGetIterator()
35
    {
36
        $container = $this->getContainer();
37
        $config = $container->get('config');
38
        $config['markdown_cms']['options']['content_dir'] = __DIR__ . '/_files';
39
        $container->setAllowOverride(true);
40
        $container->setService('config', $config);
41
        $container->setAllowOverride(false);
42
43
        $iterator = $this->factory->__invoke($container, MarkdownFileIterator::class);
44
45
        $this->assertInstanceOf(MarkdownFileIterator::class, $iterator);
46
        $recursiveIteratorIterator = $iterator->getInnerIterator();
47
        $this->assertInstanceOf(\RecursiveIteratorIterator::class, $recursiveIteratorIterator);
48
        $directoryIterator = $recursiveIteratorIterator->getInnerIterator();
49
        $this->assertInstanceOf(\RecursiveDirectoryIterator::class, $directoryIterator);
50
        $this->assertSame(__DIR__ . '/_files', $directoryIterator->getPath());
51
    }
52
}