From fab5e911757dae0fc8ca8dace02774e4aecf7d99 Mon Sep 17 00:00:00 2001 From: Vostretsov Nikita Date: Thu, 7 Oct 2021 09:46:31 +0000 Subject: [PATCH 1/5] allow use_given_order for languages --- dateparser/date.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dateparser/date.py b/dateparser/date.py index b49096e18..401c7f530 100644 --- a/dateparser/date.py +++ b/dateparser/date.py @@ -358,8 +358,8 @@ def __init__(self, languages=None, locales=None, region=None, try_previous_local raise TypeError("use_given_order argument must be a boolean (%r given)" % type(use_given_order)) - if not locales and use_given_order: - raise ValueError("locales must be given if use_given_order is True") + if not locales and not languages and use_given_order: + raise ValueError("locales or locales must be given if use_given_order is True") check_settings(settings) From c8f520fed71dc3203a643e8792eee67081d4b489 Mon Sep 17 00:00:00 2001 From: Vostretsov Nikita Date: Fri, 8 Oct 2021 11:11:44 +0000 Subject: [PATCH 2/5] fix typo --- dateparser/date.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dateparser/date.py b/dateparser/date.py index 401c7f530..bb7f181da 100644 --- a/dateparser/date.py +++ b/dateparser/date.py @@ -359,7 +359,7 @@ def __init__(self, languages=None, locales=None, region=None, try_previous_local % type(use_given_order)) if not locales and not languages and use_given_order: - raise ValueError("locales or locales must be given if use_given_order is True") + raise ValueError("locales or languages must be given if use_given_order is True") check_settings(settings) From 4fb060168cceaf17f44f1ec11298b678be012e89 Mon Sep 17 00:00:00 2001 From: Vostretsov Nikita Date: Fri, 8 Oct 2021 11:57:28 +0000 Subject: [PATCH 3/5] remove obsolete test --- tests/test_date.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/tests/test_date.py b/tests/test_date.py index 70dff744a..9a8b133f9 100644 --- a/tests/test_date.py +++ b/tests/test_date.py @@ -652,11 +652,6 @@ def test_error_raised_for_invalid_use_given_order_argument(self, use_given_order TypeError, ["use_given_order argument must be a boolean (%r given)" % type(use_given_order)]) - def test_error_is_raised_when_use_given_order_is_True_and_locales_is_None(self): - self.when_parser_is_initialized(use_given_order=True) - self.then_error_was_raised( - ValueError, ["locales must be given if use_given_order is True"]) - def when_parser_is_initialized(self, languages=None, locales=None, region=None, try_previous_locales=True, use_given_order=False): try: From b104a72ac3a3809edacb20f0928c86fd929158fc Mon Sep 17 00:00:00 2001 From: Vostretsov Nikita Date: Fri, 8 Oct 2021 14:15:47 +0000 Subject: [PATCH 4/5] bring test back --- tests/test_date.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/test_date.py b/tests/test_date.py index 9a8b133f9..e613152ba 100644 --- a/tests/test_date.py +++ b/tests/test_date.py @@ -652,6 +652,11 @@ def test_error_raised_for_invalid_use_given_order_argument(self, use_given_order TypeError, ["use_given_order argument must be a boolean (%r given)" % type(use_given_order)]) + def test_error_is_raised_when_use_given_order_is_True_and_locales_is_None(self): + self.when_parser_is_initialized(use_given_order=True) + self.then_error_was_raised( + ValueError, ["locales or languages must be given if use_given_order is True"]) + def when_parser_is_initialized(self, languages=None, locales=None, region=None, try_previous_locales=True, use_given_order=False): try: From 585a8dbacb0d29cb3523e7e4cd8f42853abe20e8 Mon Sep 17 00:00:00 2001 From: Vostretsov Nikita Date: Mon, 11 Oct 2021 07:36:33 +0000 Subject: [PATCH 5/5] test for loading languages only --- tests/test_date.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/test_date.py b/tests/test_date.py index e613152ba..7ea636663 100644 --- a/tests/test_date.py +++ b/tests/test_date.py @@ -652,11 +652,14 @@ def test_error_raised_for_invalid_use_given_order_argument(self, use_given_order TypeError, ["use_given_order argument must be a boolean (%r given)" % type(use_given_order)]) - def test_error_is_raised_when_use_given_order_is_True_and_locales_is_None(self): + def test_error_is_raised_when_use_given_order_is_True_and_locales_and_languages_is_None(self): self.when_parser_is_initialized(use_given_order=True) self.then_error_was_raised( ValueError, ["locales or languages must be given if use_given_order is True"]) + def test_no_error_for_order_with_languages_without_locales(self): + self.when_parser_is_initialized(languages=['en', 'fr'], use_given_order=True) + def when_parser_is_initialized(self, languages=None, locales=None, region=None, try_previous_locales=True, use_given_order=False): try: