Mercurial > hg > isophonics-drupal-site
comparison vendor/sebastian/comparator/src/ComparisonFailure.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children | 1fec387a4317 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4c8ae668cc8c |
---|---|
1 <?php | |
2 /* | |
3 * This file is part of the Comparator package. | |
4 * | |
5 * (c) Sebastian Bergmann <sebastian@phpunit.de> | |
6 * | |
7 * For the full copyright and license information, please view the LICENSE | |
8 * file that was distributed with this source code. | |
9 */ | |
10 | |
11 namespace SebastianBergmann\Comparator; | |
12 | |
13 use SebastianBergmann\Diff\Differ; | |
14 | |
15 /** | |
16 * Thrown when an assertion for string equality failed. | |
17 */ | |
18 class ComparisonFailure extends \RuntimeException | |
19 { | |
20 /** | |
21 * Expected value of the retrieval which does not match $actual. | |
22 * @var mixed | |
23 */ | |
24 protected $expected; | |
25 | |
26 /** | |
27 * Actually retrieved value which does not match $expected. | |
28 * @var mixed | |
29 */ | |
30 protected $actual; | |
31 | |
32 /** | |
33 * The string representation of the expected value | |
34 * @var string | |
35 */ | |
36 protected $expectedAsString; | |
37 | |
38 /** | |
39 * The string representation of the actual value | |
40 * @var string | |
41 */ | |
42 protected $actualAsString; | |
43 | |
44 /** | |
45 * @var bool | |
46 */ | |
47 protected $identical; | |
48 | |
49 /** | |
50 * Optional message which is placed in front of the first line | |
51 * returned by toString(). | |
52 * @var string | |
53 */ | |
54 protected $message; | |
55 | |
56 /** | |
57 * Initialises with the expected value and the actual value. | |
58 * | |
59 * @param mixed $expected Expected value retrieved. | |
60 * @param mixed $actual Actual value retrieved. | |
61 * @param string $expectedAsString | |
62 * @param string $actualAsString | |
63 * @param bool $identical | |
64 * @param string $message A string which is prefixed on all returned lines | |
65 * in the difference output. | |
66 */ | |
67 public function __construct($expected, $actual, $expectedAsString, $actualAsString, $identical = false, $message = '') | |
68 { | |
69 $this->expected = $expected; | |
70 $this->actual = $actual; | |
71 $this->expectedAsString = $expectedAsString; | |
72 $this->actualAsString = $actualAsString; | |
73 $this->message = $message; | |
74 } | |
75 | |
76 /** | |
77 * @return mixed | |
78 */ | |
79 public function getActual() | |
80 { | |
81 return $this->actual; | |
82 } | |
83 | |
84 /** | |
85 * @return mixed | |
86 */ | |
87 public function getExpected() | |
88 { | |
89 return $this->expected; | |
90 } | |
91 | |
92 /** | |
93 * @return string | |
94 */ | |
95 public function getActualAsString() | |
96 { | |
97 return $this->actualAsString; | |
98 } | |
99 | |
100 /** | |
101 * @return string | |
102 */ | |
103 public function getExpectedAsString() | |
104 { | |
105 return $this->expectedAsString; | |
106 } | |
107 | |
108 /** | |
109 * @return string | |
110 */ | |
111 public function getDiff() | |
112 { | |
113 if (!$this->actualAsString && !$this->expectedAsString) { | |
114 return ''; | |
115 } | |
116 | |
117 $differ = new Differ("\n--- Expected\n+++ Actual\n"); | |
118 | |
119 return $differ->diff($this->expectedAsString, $this->actualAsString); | |
120 } | |
121 | |
122 /** | |
123 * @return string | |
124 */ | |
125 public function toString() | |
126 { | |
127 return $this->message . $this->getDiff(); | |
128 } | |
129 } |