/** * @dataProvider provideTestModifyByHours * * @param string $dateStr * @param string $tzStr * @param float $byHours * @param string $expected */ public function testModifyByHours($dateStr, $tzStr, $byHours, $expected) { $date = new LocalDate($dateStr, $tzStr); $mod = $date->modifyByHours($byHours); $this->assertEquals($expected, $mod->format(), 'Modifying a date by hours must work'); $this->assertEquals((double) $byHours, $date->diffInHours($mod), 'Diff in hours must be correct'); $this->assertEquals((double) $byHours, 0 - $mod->diffInHours($date), 'Diff in hours must be correct'); }