ho una riga di codice che è:Come prendere in giro un attributo mancante
if not hasattr(class.a, u'c'):
return
Come faccio beffe fuori classe in modo che class.a.c restituisce False per hasattr?
Se faccio questo:
>>> from mock import MagicMock
>>> mock_class = MagicMock(spec=[u'a'])
>>> hasattr(mock_class, u'a')
True
>>> hasattr(mock_class, u'b')
False
>>> hasattr(mock_class.a, u'c')
True
Anche se io non class.a.c spec, il suo essere preso in giro !!!
Perché non rimuoverlo con [delattr] (http://docs.python.org/2.7/library/functions.html?highlight=delattr#delattr)? – twil
Ho usato: del mock_class.a.c alla fine. Grazie! –