Merge pull request #15316 from mepps/order-campaign-dashboard
[civicrm-core.git] / tests / phpunit / CRM / Utils / TimeTest.php
1 <?php
2
3 /**
4 * Class CRM_Utils_TimeTest
5 * @group headless
6 */
7 class CRM_Utils_TimeTest extends CiviUnitTestCase {
8
9 /**
10 * Equal cases.
11 *
12 * @return array
13 */
14 public function equalCases() {
15 // array(0 => $timeA, 1 => $timeB, 2 => $threshold, 3 => $expectedResult)
16 $cases = [];
17 $cases[] = ['2012-04-01 12:00:00', '2012-04-01 12:00:00', 0, 1];
18 $cases[] = ['2012-04-01 12:00:00', '2012-04-01 12:00:01', 0, 0];
19 $cases[] = ['2012-04-01 12:00:00', '2012-04-01 12:00:50', 60, 1];
20 $cases[] = ['2012-04-01 12:00:00', '2012-04-01 12:01:02', 60, 0];
21 $cases[] = ['2012-04-01 12:00', '2012-04-01 12:01', 0, 0];
22 $cases[] = ['2012-04-01 12:00', '2012-04-01 12:01', 60, 1];
23 $cases[] = ['2012-04-01 12:00', '2012-04-01 12:01', 120, 1];
24 return $cases;
25 }
26
27 /**
28 * Test equals.
29 *
30 * @param string $timeA
31 * @param string $timeB
32 * @param int $threshold
33 * @param bool $expectedResult
34 *
35 * @dataProvider equalCases
36 */
37 public function testEquals($timeA, $timeB, $threshold, $expectedResult) {
38 $actual = CRM_Utils_Time::isEqual($timeA, $timeB, $threshold);
39 $this->assertEquals($expectedResult, $actual);
40
41 $actual = CRM_Utils_Time::isEqual($timeB, $timeA, $threshold);
42 $this->assertEquals($expectedResult, $actual);
43 }
44
45 }