diff --git a/kwant/builder.py b/kwant/builder.py index 4092a00689fdacc86b3f0641b4b79daff4d9843a..c789c732c3d5471afe8d0c87d3fa453b5ebc2547 100644 --- a/kwant/builder.py +++ b/kwant/builder.py @@ -134,7 +134,7 @@ class SiteFamily(metaclass=abc.ABCMeta): try: return self.canonical_repr != other.canonical_repr except AttributeError: - return False + return True @abc.abstractmethod def normalize_tag(self, tag): diff --git a/kwant/tests/test_builder.py b/kwant/tests/test_builder.py index b705e9a8d8446b3309e89d7e4d3cba3f86ba5bab..0bce96fe97d4c4cf8269b0a9449b700adc54b042 100644 --- a/kwant/tests/test_builder.py +++ b/kwant/tests/test_builder.py @@ -8,7 +8,7 @@ import warnings from random import Random -from nose.tools import assert_raises, assert_true +from nose.tools import assert_raises, assert_true, assert_not_equal from numpy.testing import assert_equal, assert_almost_equal import tinyarray as ta import kwant @@ -102,6 +102,12 @@ def test_site_families(): assert_equal(syst[ofam(1)], 123) assert_raises(KeyError, syst.__getitem__, yafam(1)) + # test site families compare equal/not-equal + assert_equal(fam, ofam) + assert_not_equal(fam, yafam) + assert_not_equal(fam, None) + assert_not_equal(fam, 'a') + class VerySimpleSymmetry(builder.Symmetry): def __init__(self, period):