Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
Error
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
1 / 1
3
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
1 / 1
3
1<?php
2
3namespace Verja;
4
5class Error
6{
7    /** @var string */
8    public $key;
9
10    /** @var  string */
11    public $message;
12
13    /** @var array */
14    public $parameters;
15
16    /**
17     * Error constructor.
18     *
19     * @param string $key
20     * @param mixed  $value
21     * @param string $message
22     * @param array  $parameters
23     */
24    public function __construct(string $key, $value, string $message = null, array $parameters = null)
25    {
26        $this->key   = $key;
27
28        if ($message !== null) {
29            $this->message = $message;
30        } else {
31            $this->message = sprintf('%s %s', json_encode($value), $key);
32        }
33
34        if ($parameters !== null) {
35            $this->parameters = $parameters;
36        }
37        $this->parameters['value'] = $value;
38    }
39}