public function testCreateNextLeavePeriodNotAlreadyCreated() { $paramLeavePeriodStartDate = ParameterService::getParameter('leavePeriodStartDate'); ParameterService::setParameter('leavePeriodStartDate', '02-01'); ParameterService::setParameter('isLeavePeriodStartOnFeb29th', "No"); ParameterService::setParameter('nonLeapYearLeavePeriodStartDate', ""); $leavePeriods = TestDataService::loadObjectList('LeavePeriod', $this->fixture, 'LeavePeriod'); $leavePeriodDao = $this->getMock('LeavePeriodDao', array('findLastLeavePeriod', 'filterByTimestamp', 'saveLeavePeriod')); $leavePeriodDao->expects($this->once())->method('findLastLeavePeriod')->with('2010-01-30')->will($this->returnValue($leavePeriods[1])); $timestamp = strtotime('+2 day', strtotime('2010-01-31')); $leavePeriodDao->expects($this->once())->method('filterByTimestamp')->with($timestamp)->will($this->returnValue(null)); $leavePeriodDao->expects($this->once())->method('saveLeavePeriod')->will($this->returnValue(true)); $this->leavePeriodService->setLeavePeriodDao($leavePeriodDao); $leavePeriod = $this->leavePeriodService->createNextLeavePeriod("2010-01-30"); $this->assertTrue($leavePeriod instanceof LeavePeriod); $this->assertEquals($leavePeriods[2]->getStartDate(), $leavePeriod->getStartDate()); $this->assertEquals($leavePeriods[2]->getEndDate(), $leavePeriod->getEndDate()); ParameterService::setParameter('leavePeriodStartDate', $paramLeavePeriodStartDate); }
private function _setLeapYearLeavePeriodDetails(sfForm $form) { $post = $form->getValues(); if ($post['cmbStartMonth'] == 2 && $post['cmbStartDate'] == 29) { $nonLeapYearLeavePeriodStartDate = $post['cmbStartMonthForNonLeapYears']; $nonLeapYearLeavePeriodStartDate .= '-'; $nonLeapYearLeavePeriodStartDate .= $post['cmbStartDateForNonLeapYears']; ParameterService::setParameter('nonLeapYearLeavePeriodStartDate', $nonLeapYearLeavePeriodStartDate); ParameterService::setParameter('isLeavePeriodStartOnFeb29th', 'Yes'); ParameterService::setParameter('leavePeriodStartDate', ''); } else { $leavePeriodStartDate = $post['cmbStartMonth']; $leavePeriodStartDate .= '-'; $leavePeriodStartDate .= $post['cmbStartDate']; ParameterService::setParameter('leavePeriodStartDate', $leavePeriodStartDate); ParameterService::setParameter('nonLeapYearLeavePeriodStartDate', ''); ParameterService::setParameter('isLeavePeriodStartOnFeb29th', 'No'); } }