From 6d252c6ff65610c58908d519bba1de74dfd00360 Mon Sep 17 00:00:00 2001 From: Lucas Polo Date: Fri, 11 Dec 2020 15:16:22 -0300 Subject: [PATCH] Hide number if it is a asterisk --- correios/models/address.py | 20 +++++++++++++++----- tests/test_address_models.py | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/correios/models/address.py b/correios/models/address.py index 2f9f411..97ad63d 100644 --- a/correios/models/address.py +++ b/correios/models/address.py @@ -284,13 +284,21 @@ def zip_code_display(self) -> str: @property def basic_address(self) -> str: - number = self.number + number = "" + + if self.number: + number = ", {}".format(self.number) + if self.complement: - number = "{} - {}".format(self.number, self.complement) + number = "{} - {}".format(number, self.complement) if self.neighborhood: - return capitalize_phrase("{}, {}, {}".format(self.street, number, self.neighborhood)) - return capitalize_phrase("{}, {}".format(self.street, number)) + return capitalize_phrase("{}{}, {}".format(self.street, number, self.neighborhood)) + + if number: + return capitalize_phrase("{}{}".format(self.street, number)) + + return capitalize_phrase("{}".format(self.street)) @property def label_address(self) -> str: @@ -321,7 +329,9 @@ def filtered_number(self) -> str: @property def number(self) -> str: - return self.filtered_number or "S/N" + number = self.filtered_number or "S/N" + + return number.replace('*', '') @property def zip_complement(self) -> str: diff --git a/tests/test_address_models.py b/tests/test_address_models.py index 5adb50b..ad95498 100644 --- a/tests/test_address_models.py +++ b/tests/test_address_models.py @@ -388,7 +388,7 @@ def test_basic_address_with_neighborhood_without_complement(): ('km 5', '5', '5', '5'), ('s/n', '', 'S/N', '0'), ('S/N', '', 'S/N', '0'), - ('*', '*', '*', '*'), + ('*', '*', '', '*'), )) def test_address_number_handling(raw, filtered, number, zip_complement): address = Address(