FileMimeEquals   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 12
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 7
c 1
b 0
f 0
dl 0
loc 12
ccs 6
cts 6
cp 1
rs 10
wmc 3

1 Method

Rating   Name   Duplication   Size   Complexity  
A validate() 0 8 3
1
<?php
2
3
namespace kalanis\kw_rules\Rules\File;
4
5
6
use finfo;
7
use kalanis\kw_rules\Interfaces\IValidateFile;
8
use kalanis\kw_rules\Exceptions\RuleException;
9
use kalanis\kw_rules\Rules\TCheckString;
10
11
12
/**
13
 * Class FileMimeEquals
14
 * @package kalanis\kw_rules\Rules\File
15
 * Check if input file has correct mime type
16
 */
17
class FileMimeEquals extends AFileRule
18
{
19
    use TCheckString;
20
21 2
    public function validate(IValidateFile $entry): void
22
    {
23 2
        $filename = $entry->getTempName();
24 2
        $finfo =  new finfo(FILEINFO_MIME_TYPE);
25 2
        if (!empty($filename) && ($finfo->file($filename) == $this->againstValue)) {
26 1
            return;
27
        }
28 1
        throw new RuleException($this->errorText);
29
    }
30
}
31