Я столкнулся с некоторыми проблемами, вытекающими из факта, чем несколько всех моксов. Объект Mock данного класса кажется равным в значении ==
, __eq__
, хотя они разные объекты (по крайней мере mock1 is mock2
возвращает False
). есть ли способ предотвратить это поведение?При использовании pockon mox mock objects существует ли способ избежать того, чтобы все они были равны (как в __eq__)?
В примере кода ниже вы можете увидеть, что счетчик не так, потому что он думает, что все издевается равны:
import mox
class MyClass(object):
pass
real1 = MyClass()
real2 = MyClass()
listreal = (real1, real2)
mocker = mox.Mox()
mock1 = mocker.CreateMock(MyClass)
mock2 = mocker.CreateMock(MyClass)
listmock = (mock1, mock2)
real1 == real2 # False
real1 is real2 # False
listreal.count(real1) # 1
mock1 == mock2 # True
mock1 is mock2 # False
listmock.count(mock1) # 2