Мне нужно смоделировать метод записи pyserial, используя Magick mock.
class UnderTest ():
def __init__(self):
self.serialport = serial.Serial(port='dev/ttyACM0')
def write(self, some_bytes):
l = self.serialport.write(some_bytes)
return l
MagickMock работает для создания, но я не могу узнать, как смоделировать метод write, чтобы установить возвращаемое значение и проверить вызовы ввызовы методов. вот что итрид /
class Test(unittest.TestCase):
""" tests for init LockControler with no LC connected"""
def setUp(self):
# no serial port so mock all functions of serial port
self.serialmock = unittest.mock.MagicMock(spec=serial.Serial, name='serialmock')
patcher1 = unittest.mock.patch('serial.Serial', new=self.serialmock)
serialm = patcher1.start()
self.undertest = UnderTest()
def test_write(self):
writemock = self.serialmock().write()(return_value=2)
a = unittest.mock.patch.object(self.undertest.serialport, 'write', new=writemock)
self.undertest.write(b'\x50\x61\x73\x73')
# I want to check here method_calls