def test_i2c_command_device_not_found_error():
errorbus = Mock(unsafe=True)
address = 0x71
cmds = [3, 1, 4, 2]
expected_error = OSError()
try:
for error_code in [errno.EREMOTEIO, errno.EIO]:
expected_error.errno = error_code
errorbus.write_i2c_block_data.side_effect = expected_error
serial = i2c(bus=errorbus, address=address)
with pytest.raises(luma.core.error.DeviceNotFoundError) as ex:
serial.command(*cmds)
assert str(ex.value) == 'I2C device not found on address: 0x{0:02X}'.format(
address)
except AttributeError as e:
# osx
pytest.skip(str(e))
评论列表
文章目录