From 6ce10d217238e24a1b35e7c6c34c9e56107a9dcb Mon Sep 17 00:00:00 2001 From: GroovyDan Date: Fri, 4 Dec 2020 16:16:44 -0600 Subject: [PATCH 1/3] Added __eq__ function to DictWrapper for better eqaulity checks --- aws_lambda_powertools/utilities/data_classes/common.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/aws_lambda_powertools/utilities/data_classes/common.py b/aws_lambda_powertools/utilities/data_classes/common.py index 7c092a2b526..4c74397a72d 100644 --- a/aws_lambda_powertools/utilities/data_classes/common.py +++ b/aws_lambda_powertools/utilities/data_classes/common.py @@ -10,6 +10,12 @@ def __init__(self, data: Dict[str, Any]): def __getitem__(self, key: str) -> Any: return self._data[key] + def __eq__(self, other): + if not isinstance(other, DictWrapper): + return NotImplemented + + return self._data == other._data + def get(self, key: str) -> Optional[Any]: return self._data.get(key) From b09164cbb940fb5212f4f9eb37234e3a4e565f1b Mon Sep 17 00:00:00 2001 From: GroovyDan Date: Fri, 4 Dec 2020 16:41:35 -0600 Subject: [PATCH 2/3] Add type hints --- aws_lambda_powertools/utilities/data_classes/common.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aws_lambda_powertools/utilities/data_classes/common.py b/aws_lambda_powertools/utilities/data_classes/common.py index 4c74397a72d..7c5c5989801 100644 --- a/aws_lambda_powertools/utilities/data_classes/common.py +++ b/aws_lambda_powertools/utilities/data_classes/common.py @@ -10,7 +10,7 @@ def __init__(self, data: Dict[str, Any]): def __getitem__(self, key: str) -> Any: return self._data[key] - def __eq__(self, other): + def __eq__(self, other: Any) -> bool: if not isinstance(other, DictWrapper): return NotImplemented From 98781e19d33c319d7f2da93832f43acedcb3117c Mon Sep 17 00:00:00 2001 From: Daniel Davidson <44237509+GroovyDan@users.noreply.github.com> Date: Mon, 7 Dec 2020 07:46:19 -0600 Subject: [PATCH 3/3] Update aws_lambda_powertools/utilities/data_classes/common.py Co-authored-by: Joris Conijn --- aws_lambda_powertools/utilities/data_classes/common.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aws_lambda_powertools/utilities/data_classes/common.py b/aws_lambda_powertools/utilities/data_classes/common.py index 7c5c5989801..94a357b3180 100644 --- a/aws_lambda_powertools/utilities/data_classes/common.py +++ b/aws_lambda_powertools/utilities/data_classes/common.py @@ -12,7 +12,7 @@ def __getitem__(self, key: str) -> Any: def __eq__(self, other: Any) -> bool: if not isinstance(other, DictWrapper): - return NotImplemented + return False return self._data == other._data