Completed
Push — master ( c5e677...4df15a )
by Sebastian
02:56
created

SizeMin   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Test Coverage

Coverage 57.14%

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 3
dl 0
loc 35
ccs 4
cts 7
cp 0.5714
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A pass() 0 8 1
A simulate() 0 4 1
1
<?php
2
namespace phpbu\App\Backup\Check;
3
4
use phpbu\App\Result;
5
use phpbu\App\Backup\Collector;
6
use phpbu\App\Backup\Target;
7
use phpbu\App\Util\Str;
8
9
/**
10
 * SizeMin
11
 *
12
 * Checks if a backup file has a least a given size.
13
 *
14
 * @package    phpbu
15
 * @subpackage Backup
16
 * @author     Sebastian Feldmann <[email protected]>
17
 * @copyright  Sebastian Feldmann <[email protected]>
18
 * @license    https://opensource.org/licenses/MIT The MIT License (MIT)
19
 * @link       http://phpbu.de/
20
 * @since      Class available since Release 1.0.0
21
 */
22
class SizeMin implements Simulator
23
{
24
    /**
25
     * Execute the check.
26
     *
27
     * @param  \phpbu\App\Backup\Target    $target
28
     * @param  string                      $value
29
     * @param  \phpbu\App\Backup\Collector $collector
30
     * @param  \phpbu\App\Result           $result
31
     * @return bool
32
     * @throws \phpbu\App\Exception
33
     */
34 1
    public function pass(Target $target, $value, Collector $collector, Result $result) : bool
35
    {
36
        // throws App\Exception if file doesn't exist
37 1
        $actualSize = $target->getSize();
38 1
        $testSize   = Str::toBytes($value);
39
40 1
        return $testSize <= $actualSize;
41
    }
42
43
    /**
44
     * Simulate check.
45
     *
46
     * @param \phpbu\App\Backup\Target    $target
47
     * @param string                      $value
48
     * @param \phpbu\App\Backup\Collector $collector
49
     * @param \phpbu\App\Result           $result
50
     * @return bool
51
     */
52
    public function simulate(Target $target, $value, Collector $collector, Result $result) : bool
53
    {
54
        $result->debug('checking size to be at least ' . $value . PHP_EOL);
55
    }
56
}
57