/**
  * @dataProvider dataForTestByDate
  */
 function testByDate($inYear, $inMonth, $inDay, $days, $expand, $startYear, $startMonth, $startDate, $endYear, $endMonth, $endDate, $outYear, $outMonth)
 {
     \TimeSource::mock($inYear, $inMonth, $inDay, 1, 2, 3);
     $cal = new RenderCalendar();
     $inDate = new \DateTime();
     $inDate->setDate($inYear, $inMonth, $inDay);
     $cal->byDate($inDate, $days, $expand);
     $start = $cal->getStart();
     $this->assertEquals($startYear, intval($start->format("Y")));
     $this->assertEquals($startMonth, intval($start->format("n")));
     $this->assertEquals($startDate, intval($start->format("j")));
     $end = $cal->getEnd();
     $this->assertEquals($endYear, intval($end->format("Y")));
     $this->assertEquals($endMonth, intval($end->format("n")));
     $this->assertEquals($endDate, intval($end->format("j")));
     $this->assertEquals($outYear, $cal->getYear());
     $this->assertEquals($outMonth, $cal->getMonth());
 }