Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
Size
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
6
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 perform
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3/**
4 * Karla ImageMagick wrapper library
5 *
6 * PHP Version 8.0<
7 *
8 * @category Utility
9 * @author   Johannes Skov Frandsen <jsf@greenoak.dk>
10 * @license  http://www.opensource.org/licenses/mit-license.php MIT
11 * @link     https://github.com/localgod/karla Karla
12 * @since    2013-05-26
13 */
14
15declare(strict_types=1);
16
17namespace Karla\Action;
18
19use Karla\Query;
20use Karla\Action;
21
22/**
23 * Class for handeling size action
24 *
25 * @category Utility
26 * @author   Johannes Skov Frandsen <jsf@greenoak.dk>
27 * @license  http://www.opensource.org/licenses/mit-license.php MIT
28 * @link     https://github.com/localgod/karla Karla
29 */
30class Size implements Action
31{
32    /**
33     * Width
34     *
35     * @var integer
36     */
37    private int $width;
38
39    /**
40     * Height
41     *
42     * @var integer
43     */
44    private int $height;
45
46    /**
47     * Construct a new size action
48     *
49     * @param integer $width
50     *            New width
51     * @param integer $height
52     *            New height
53     */
54    public function __construct(int $width, int $height)
55    {
56        $this->width = $width;
57        $this->height = $height;
58    }
59
60    /**
61     * (non-PHPdoc)
62     *
63     * @param Query $query
64     *            The query to add the action to
65     * @return Query
66     * @see Action::perform()
67     */
68    public function perform(Query $query): Query
69    {
70        $query->notWith('size', Query::ARGUMENT_TYPE_INPUT);
71
72        $query->setInputOption(" -size " . $this->width . "x" . $this->height . " ");
73
74        return $query;
75    }
76}