Ajout des méthodes __ne__ sur les cransLdapObjet et Attr pour tester le non égalité

This commit is contained in:
Valentin Samir 2014-02-21 18:02:02 +01:00
parent 592cd16357
commit b882c41683
2 changed files with 4 additions and 0 deletions

View file

@ -282,6 +282,8 @@ class Attr(object):
def __getattr__(self, name): def __getattr__(self, name):
return getattr(self.value, name) return getattr(self.value, name)
def __ne__(self, obj):
return not self == obj
def __eq__(self, item): def __eq__(self, item):
if isinstance(item, self.__class__): if isinstance(item, self.__class__):
return str(self) == str(item) return str(self) == str(item)

View file

@ -162,6 +162,8 @@ class CransLdapObject(object):
nvals = [nldif[attr][vals.index(v)] for v in vals ] nvals = [nldif[attr][vals.index(v)] for v in vals ]
raise EnvironmentError("λv. str(Attr(v)) n'est peut-être pas une projection (ie non idempotente):", attr, nvals, vals) raise EnvironmentError("λv. str(Attr(v)) n'est peut-être pas une projection (ie non idempotente):", attr, nvals, vals)
def __ne__(self, obj):
return not self == obj
def __eq__(self, obj): def __eq__(self, obj):
if isinstance(obj, self.__class__): if isinstance(obj, self.__class__):
if self.mode in ['w', 'rw']: if self.mode in ['w', 'rw']: