diff --git a/beets/dbcore/query.py b/beets/dbcore/query.py index 470ca2ac6..f1d28a7a8 100644 --- a/beets/dbcore/query.py +++ b/beets/dbcore/query.py @@ -561,7 +561,7 @@ class Period(object): date = datetime.strptime(string, date_format) except ValueError: # Parsing failed. - return None + raise InvalidQueryArgumentTypeError(string, datetime) precision = cls.precisions[ordinal] return cls(date, precision) diff --git a/test/test_datequery.py b/test/test_datequery.py index 1e1625db2..0bb1378a3 100644 --- a/test/test_datequery.py +++ b/test/test_datequery.py @@ -21,7 +21,7 @@ from test import _common from datetime import datetime import unittest import time -from beets.dbcore.query import _parse_periods, DateInterval, DateQuery +from beets.dbcore.query import _parse_periods, DateInterval, DateQuery, InvalidQueryArgumentTypeError def _date(string): @@ -117,7 +117,8 @@ class DateQueryTest(_common.LibTestCase): class DateQueryConstructTest(unittest.TestCase): def test_long_numbers(self): - DateQuery('added', '1409830085..1412422089') + with self.assertRaises(InvalidQueryArgumentTypeError): + DateQuery('added', '1409830085..1412422089') def test_too_many_components(self): DateQuery('added', '12-34-56-78')