.format(name=repr(self.name),
version=repr(self.version),
codename=repr(self.codename))
+
+ def __eq__(self, other):
+ for slot in self.__slots__:
+ if not getattr(self, slot) == getattr(other, slot):
+ return False
+ return True
def test_codename_no_version(self):
os = OS(name='ubuntu', codename='trusty')
assert os.version == '14.04'
+
+ def test_eq_equal(self):
+ os = OS(name='ubuntu', codename='trusty', version='14.04')
+ assert OS(name='ubuntu', codename='trusty', version='14.04') == os
+
+ def test_eq_not_equal(self):
+ os = OS(name='ubuntu', codename='trusty', version='16.04')
+ assert OS(name='ubuntu', codename='trusty', version='14.04') != os