Passed
Push — master ( 51a94b...0f3d7a )
by Jesús
01:31 queued 13s
created

FileProfilerFeatureTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace GacelaTest\Feature\Framework\GacelaProfiler;
6
7
use Gacela\Framework\Bootstrap\GacelaConfig;
8
use Gacela\Framework\ClassResolver\Profiler\ClassNameJsonProfiler;
9
use Gacela\Framework\ClassResolver\Profiler\CustomServicesJsonProfiler;
10
use Gacela\Framework\Gacela;
11
use GacelaTest\Feature\Util\DirectoryUtil;
12
use PHPUnit\Framework\TestCase;
13
14
final class FileProfilerFeatureTest extends TestCase
15
{
16
    public static function tearDownAfterClass(): void
17
    {
18
        DirectoryUtil::removeDir(__DIR__ . '/custom/profiler-dir');
19
    }
20
21
    protected function setUp(): void
22
    {
23
        DirectoryUtil::removeDir(__DIR__ . '/custom/profiler-dir');
24
    }
25
26
    public function test_custom_profiler_dir(): void
27
    {
28
        Gacela::bootstrap(__DIR__, static function (GacelaConfig $config): void {
29
            $config->resetInMemoryCache();
30
            $config->setProfilerEnabled(true);
31
            $config->setProfilerDirectory('/custom/profiler-dir');
32
        });
33
34
        $facade = new Module\Facade();
35
        self::assertSame('name', $facade->getName());
36
37
        self::assertFileExists(__DIR__ . '/custom/profiler-dir/' . ClassNameJsonProfiler::FILENAME);
38
        self::assertFileExists(__DIR__ . '/custom/profiler-dir/' . CustomServicesJsonProfiler::FILENAME);
39
    }
40
41
    public function test_custom_profiler_dir_but_profiler_disable(): void
42
    {
43
        Gacela::bootstrap(__DIR__, static function (GacelaConfig $config): void {
44
            $config->resetInMemoryCache();
45
            $config->setProfilerEnabled(false);
46
            $config->setProfilerDirectory('/custom/profiler-dir');
47
        });
48
49
        $facade = new Module\Facade();
50
        self::assertSame('name', $facade->getName());
51
52
        self::assertFileDoesNotExist(__DIR__ . '/custom/profiler-dir/' . ClassNameJsonProfiler::FILENAME);
53
        self::assertFileDoesNotExist(__DIR__ . '/custom/profiler-dir/' . CustomServicesJsonProfiler::FILENAME);
54
    }
55
}
56