From 2b2ccabfd19066dd76bb38c68603e66a75c22845 Mon Sep 17 00:00:00 2001 From: camfairchild Date: Mon, 5 Sep 2022 12:49:34 -0400 Subject: [PATCH 1/2] add equality to None to the balance class --- bittensor/utils/balance.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bittensor/utils/balance.py b/bittensor/utils/balance.py index 0bba07622d..a52913c37d 100644 --- a/bittensor/utils/balance.py +++ b/bittensor/utils/balance.py @@ -68,6 +68,9 @@ def __repr__(self): return self.__str__() def __eq__(self, other: Union[int, float, "Balance"]): + if other is None: + return False + if hasattr(other, "rao"): return self.rao == other.rao else: From 2b6719d0c1b41ffd82f87e10f3b3695af04d9dd7 Mon Sep 17 00:00:00 2001 From: Cameron Fairchild Date: Tue, 6 Sep 2022 11:00:38 -0400 Subject: [PATCH 2/2] add tests for the None case --- tests/unit_tests/bittensor_tests/test_balance.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/unit_tests/bittensor_tests/test_balance.py b/tests/unit_tests/bittensor_tests/test_balance.py index 60f61fac67..8a52d117ab 100644 --- a/tests/unit_tests/bittensor_tests/test_balance.py +++ b/tests/unit_tests/bittensor_tests/test_balance.py @@ -327,3 +327,12 @@ def test_balance_rfloordiv_other_not_balance(self, balance: Union[int, float], b assert isinstance(quot_, Balance) assert CLOSE_IN_VALUE(quot_.rao, 5) == rao2_ // rao_ + @given(balance=valid_tao_numbers_strategy) + def test_balance_not_eq_none(self, balance: Union[int, float]): + balance_ = Balance(balance) + assert not balance_ == None + + @given(balance=valid_tao_numbers_strategy) + def test_balance_neq_none(self, balance: Union[int, float]): + balance_ = Balance(balance) + assert balance_ != None