Passed
Push — master ( fde232...1ea99c )
by Petr
04:13 queued 01:48
created

VolumeFilesTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
eloc 7
dl 0
loc 19
rs 10
c 1
b 0
f 0
1
<?php
2
3
namespace TraitsTests;
4
5
6
use kalanis\kw_tree\Traits\TVolumeFiles;
7
use SplFileInfo;
8
9
10
class VolumeFilesTest extends \CommonTestClass
11
{
12
    /**
13
     * @param SplFileInfo $node
14
     * @param bool $is
15
     * @dataProvider callbackProvider
16
     */
17
    public function testBasic(SplFileInfo $node, bool $is): void
18
    {
19
        $lib = new XVolumeFiles();
20
        $this->assertEquals($is, $lib->filesExtCallback($node));
21
    }
22
23
    public function callbackProvider(): array
24
    {
25
        return [
26
            [new SplFileInfo(__DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'tree' . DIRECTORY_SEPARATOR . 'sub'), true],
27
            [new SplFileInfo(__DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'tree' . DIRECTORY_SEPARATOR . 'last_one' . DIRECTORY_SEPARATOR . '.gitkeep'), false],
28
            [new SplFileInfo(__DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'tree' . DIRECTORY_SEPARATOR . 'dummy2.txt'), true],
29
        ];
30
    }
31
}
32
33
34
class XVolumeFiles
35
{
36
    use TVolumeFiles;
37
38
    public function whichExtsIWant(): array
39
    {
40
        return ['txt', 'doc'];
41
    }
42
}
43