Mercurial > hg > isophonics-drupal-site
comparison vendor/sebastian/comparator/src/DoubleComparator.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 /** | |
14 * Compares doubles for equality. | |
15 */ | |
16 class DoubleComparator extends NumericComparator | |
17 { | |
18 /** | |
19 * Smallest value available in PHP. | |
20 * | |
21 * @var float | |
22 */ | |
23 const EPSILON = 0.0000000001; | |
24 | |
25 /** | |
26 * Returns whether the comparator can compare two values. | |
27 * | |
28 * @param mixed $expected The first value to compare | |
29 * @param mixed $actual The second value to compare | |
30 * @return bool | |
31 */ | |
32 public function accepts($expected, $actual) | |
33 { | |
34 return (is_double($expected) || is_double($actual)) && is_numeric($expected) && is_numeric($actual); | |
35 } | |
36 | |
37 /** | |
38 * Asserts that two values are equal. | |
39 * | |
40 * @param mixed $expected First value to compare | |
41 * @param mixed $actual Second value to compare | |
42 * @param float $delta Allowed numerical distance between two values to consider them equal | |
43 * @param bool $canonicalize Arrays are sorted before comparison when set to true | |
44 * @param bool $ignoreCase Case is ignored when set to true | |
45 * | |
46 * @throws ComparisonFailure | |
47 */ | |
48 public function assertEquals($expected, $actual, $delta = 0.0, $canonicalize = false, $ignoreCase = false) | |
49 { | |
50 if ($delta == 0) { | |
51 $delta = self::EPSILON; | |
52 } | |
53 | |
54 parent::assertEquals($expected, $actual, $delta, $canonicalize, $ignoreCase); | |
55 } | |
56 } |