def test_should_use_current_date_for_dates_without_day(self): twelfth = datetime(2014, 8, 12) datetime_mock = Mock(wraps=datetime) datetime_mock.utcnow = Mock(return_value=twelfth) with patch('dateparser.date_parser.datetime', new=datetime_mock): dt_data = date.parse_with_formats('August 2014', ['%B %Y'], final_call=True) self.assertIsNotNone(dt_data) self.assertEquals('month', dt_data['period']) self.assertEquals( datetime(2014, 8, 31).date(), dt_data['date_obj'].date()) twelfth = datetime(2014, 2, 12) datetime_mock = Mock(wraps=datetime) datetime_mock.utcnow = Mock(return_value=twelfth) with patch('dateparser.date_parser.datetime', new=datetime_mock): dt_data = date.parse_with_formats('February 2014', ['%B %Y'], final_call=True) self.assertIsNotNone(dt_data) self.assertEquals('month', dt_data['period']) self.assertEquals( datetime(2014, 2, 28).date(), dt_data['date_obj'].date())
def test_should_use_current_date_for_dates_without_day(self): twelfth = datetime(2014, 8, 12) datetime_mock = Mock(wraps=datetime) datetime_mock.utcnow = Mock(return_value=twelfth) with patch('dateparser.date_parser.datetime', new=datetime_mock): dt_data = date.parse_with_formats('August 2014', ['%B %Y'], final_call=True) self.assertIsNotNone(dt_data) self.assertEquals('month', dt_data['period']) self.assertEquals(datetime(2014, 8, 31).date(), dt_data['date_obj'].date()) twelfth = datetime(2014, 2, 12) datetime_mock = Mock(wraps=datetime) datetime_mock.utcnow = Mock(return_value=twelfth) with patch('dateparser.date_parser.datetime', new=datetime_mock): dt_data = date.parse_with_formats('February 2014', ['%B %Y'], final_call=True) self.assertIsNotNone(dt_data) self.assertEquals('month', dt_data['period']) self.assertEquals(datetime(2014, 2, 28).date(), dt_data['date_obj'].date())
def test_should_use_current_year_for_dates_without_year(self): today = datetime.today() result = date.parse_with_formats('09.16', ["%m.%d"]) self.assertEquals( datetime(today.year, 9, 16).date(), result['date_obj'].date())
def test_should_parse_date(self): result = date.parse_with_formats('25-03-14', ['%d-%m-%y']) self.assertEquals( datetime(2014, 3, 25).date(), result['date_obj'].date())
def test_shouldnt_parse_invalid_date(self): self.assertIsNone( date.parse_with_formats('yesterday', ['%Y-%m-%d'])['date_obj'])
def when_date_is_parsed_with_formats(self, date_string, date_formats): self.result = date.parse_with_formats(date_string, date_formats)
def when_date_is_parsed_with_formats(self, date_string, date_formats, custom_settings=None): self.result = date.parse_with_formats(date_string, date_formats, custom_settings or settings)
def when_date_is_parsed_with_formats(self, date_string, date_formats): self.result = date.parse_with_formats(date_string, date_formats, settings)
def test_should_use_current_year_for_dates_without_year(self): today = datetime.today() result = date.parse_with_formats('09.16', ["%m.%d"]) self.assertEquals(datetime(today.year, 9, 16).date(), result.date())
def test_should_parse_date(self): result = date.parse_with_formats('25-03-14', ['%d-%m-%y']) self.assertEquals(datetime(2014, 3, 25).date(), result.date())
def test_shouldnt_parse_invalid_date(self): self.assertIsNone(date.parse_with_formats('yesterday', ['%Y-%m-%d']))