Closed mweinelt closed 8 months ago
We're seeing a few test fail on zigpy-xbee==0.19.0 starting with zigpy==0.59.0, which is required by home-assistant==2023.11.0.
zigpy-xbee==0.19.0
zigpy==0.59.0
home-assistant==2023.11.0
zigpy-xbee> FAILED tests/test_application.py::test_rx - AssertionError: Expected 'mock' to be called once. Called 0 times. zigpy-xbee> FAILED tests/test_application.py::test_rx_nwk_0000 - AssertionError: assert 0 == 1 zigpy-xbee> FAILED tests/test_application.py::test_device_join_new - RuntimeError: no running event loop zigpy-xbee> FAILED tests/test_application.py::test_device_join_inconsistent_nwk - RuntimeError: no running event loop zigpy-xbee> FAILED tests/test_application.py::test_device_join_inconsistent_ieee - RuntimeError: no running event loop zigpy-xbee> FAILED tests/test_application.py::test_rx_device_annce - AssertionError: assert 0 == 1
zigpy-xbee> ============================= test session starts ============================== zigpy-xbee> platform linux -- Python 3.11.5, pytest-7.4.2, pluggy-1.2.0 zigpy-xbee> rootdir: /build/source zigpy-xbee> configfile: pyproject.toml zigpy-xbee> plugins: asyncio-0.21.1 zigpy-xbee> asyncio: mode=Mode.AUTO zigpy-xbee> collected 110 items / 1 deselected / 109 selected zigpy-xbee> zigpy-xbee> tests/test_api.py ........................................... [ 39%] zigpy-xbee> tests/test_application.py .FF..FFF..................F......... [ 72%] zigpy-xbee> tests/test_types.py ....... [ 78%] zigpy-xbee> tests/test_uart.py ....................... [100%] zigpy-xbee> zigpy-xbee> =================================== FAILURES =================================== zigpy-xbee> ___________________________________ test_rx ____________________________________ zigpy-xbee> zigpy-xbee> app = zigpy-xbee> zigpy-xbee> def test_rx(app): zigpy-xbee> """Test message receiving.""" zigpy-xbee> device = mock.MagicMock() zigpy-xbee> app.handle_message = mock.MagicMock() zigpy-xbee> _test_rx(app, device, 0x1234, data=b"\x01\x02\x03\x04") zigpy-xbee> > app.handle_message.assert_called_once_with( zigpy-xbee> sender=device, zigpy-xbee> profile=mock.sentinel.profile_id, zigpy-xbee> cluster=mock.sentinel.cluster_id, zigpy-xbee> src_ep=mock.sentinel.src_ep, zigpy-xbee> dst_ep=mock.sentinel.dst_ep, zigpy-xbee> message=b"\x01\x02\x03\x04", zigpy-xbee> dst_addressing=t.AddrMode.NWK, zigpy-xbee> ) zigpy-xbee> zigpy-xbee> tests/test_application.py:118: zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> zigpy-xbee> self = , args = () zigpy-xbee> kwargs = {'cluster': sentinel.cluster_id, 'dst_addressing': , 'dst_ep': sentinel.dst_ep, 'message': b'\x01\x02\x03\x04', ...} zigpy-xbee> msg = "Expected 'mock' to be called once. Called 0 times." zigpy-xbee> zigpy-xbee> def assert_called_once_with(self, /, *args, **kwargs): zigpy-xbee> """assert that the mock was called exactly once and that that call was zigpy-xbee> with the specified arguments.""" zigpy-xbee> if not self.call_count == 1: zigpy-xbee> msg = ("Expected '%s' to be called once. Called %s times.%s" zigpy-xbee> % (self._mock_name or 'mock', zigpy-xbee> self.call_count, zigpy-xbee> self._calls_repr())) zigpy-xbee> > raise AssertionError(msg) zigpy-xbee> E AssertionError: Expected 'mock' to be called once. Called 0 times. zigpy-xbee> zigpy-xbee> /nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/unittest/mock.py:950: AssertionError zigpy-xbee> _______________________________ test_rx_nwk_0000 _______________________________ zigpy-xbee> zigpy-xbee> app = zigpy-xbee> zigpy-xbee> def test_rx_nwk_0000(app): zigpy-xbee> """Test receiving self-addressed message.""" zigpy-xbee> app._handle_reply = mock.MagicMock() zigpy-xbee> app.handle_message = mock.MagicMock() zigpy-xbee> app.get_device = mock.MagicMock() zigpy-xbee> app.handle_rx( zigpy-xbee> b"\x01\x02\x03\x04\x05\x06\x07\x08", zigpy-xbee> 0x0000, zigpy-xbee> mock.sentinel.src_ep, zigpy-xbee> mock.sentinel.dst_ep, zigpy-xbee> mock.sentinel.cluster_id, zigpy-xbee> mock.sentinel.profile_id, zigpy-xbee> mock.sentinel.rxopts, zigpy-xbee> b"", zigpy-xbee> ) zigpy-xbee> > assert app.handle_message.call_count == 1 zigpy-xbee> E AssertionError: assert 0 == 1 zigpy-xbee> E + where 0 = .call_count zigpy-xbee> E + where = .handle_message zigpy-xbee> zigpy-xbee> tests/test_application.py:144: AssertionError zigpy-xbee> _____________________________ test_device_join_new _____________________________ zigpy-xbee> zigpy-xbee> app = zigpy-xbee> device = ._device at 0x7ffff4cd9bc0> zigpy-xbee> zigpy-xbee> def test_device_join_new(app, device): zigpy-xbee> """Test device join.""" zigpy-xbee> dev = device() zigpy-xbee> data = b"\xee" + dev.nwk.serialize() + dev.ieee.serialize() + b"\x40" zigpy-xbee> zigpy-xbee> > _device_join(app, dev, data) zigpy-xbee> zigpy-xbee> tests/test_application.py:238: zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> tests/test_application.py:228: in _device_join zigpy-xbee> _test_rx(app, dev, dev.nwk, dst_ep, cluster_id, data) zigpy-xbee> tests/test_application.py:101: in _test_rx zigpy-xbee> app.handle_rx( zigpy-xbee> zigpy_xbee/zigbee/application.py:375: in handle_rx zigpy-xbee> self.packet_received( zigpy-xbee> /nix/store/1ivd9cbi5i2d3p5abq2kxyswnpjbbkl9-python3.11-zigpy-0.59.0/lib/python3.11/site-packages/zigpy/application.py:985: in packet_received zigpy-xbee> device.schedule_initialize() zigpy-xbee> /nix/store/1ivd9cbi5i2d3p5abq2kxyswnpjbbkl9-python3.11-zigpy-0.59.0/lib/python3.11/site-packages/zigpy/device.py:162: in schedule_initialize zigpy-xbee> self._initialize_task = asyncio.create_task(self.initialize()) zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> zigpy-xbee> coro = zigpy-xbee> zigpy-xbee> def create_task(coro, *, name=None, context=None): zigpy-xbee> """Schedule the execution of a coroutine object in a spawn task. zigpy-xbee> zigpy-xbee> Return a Task object. zigpy-xbee> """ zigpy-xbee> > loop = events.get_running_loop() zigpy-xbee> E RuntimeError: no running event loop zigpy-xbee> zigpy-xbee> /nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/asyncio/tasks.py:371: RuntimeError zigpy-xbee> ______________________ test_device_join_inconsistent_nwk _______________________ zigpy-xbee> zigpy-xbee> app = zigpy-xbee> device = ._device at 0x7ffff4cd93a0> zigpy-xbee> zigpy-xbee> def test_device_join_inconsistent_nwk(app, device): zigpy-xbee> """Test device join inconsistent NWK.""" zigpy-xbee> dev = device() zigpy-xbee> data = b"\xee" + b"\x01\x02" + dev.ieee.serialize() + b"\x40" zigpy-xbee> zigpy-xbee> > _device_join(app, dev, data) zigpy-xbee> zigpy-xbee> tests/test_application.py:246: zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> tests/test_application.py:228: in _device_join zigpy-xbee> _test_rx(app, dev, dev.nwk, dst_ep, cluster_id, data) zigpy-xbee> tests/test_application.py:101: in _test_rx zigpy-xbee> app.handle_rx( zigpy-xbee> zigpy_xbee/zigbee/application.py:375: in handle_rx zigpy-xbee> self.packet_received( zigpy-xbee> /nix/store/1ivd9cbi5i2d3p5abq2kxyswnpjbbkl9-python3.11-zigpy-0.59.0/lib/python3.11/site-packages/zigpy/application.py:985: in packet_received zigpy-xbee> device.schedule_initialize() zigpy-xbee> /nix/store/1ivd9cbi5i2d3p5abq2kxyswnpjbbkl9-python3.11-zigpy-0.59.0/lib/python3.11/site-packages/zigpy/device.py:162: in schedule_initialize zigpy-xbee> self._initialize_task = asyncio.create_task(self.initialize()) zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> zigpy-xbee> coro = zigpy-xbee> zigpy-xbee> def create_task(coro, *, name=None, context=None): zigpy-xbee> """Schedule the execution of a coroutine object in a spawn task. zigpy-xbee> zigpy-xbee> Return a Task object. zigpy-xbee> """ zigpy-xbee> > loop = events.get_running_loop() zigpy-xbee> E RuntimeError: no running event loop zigpy-xbee> zigpy-xbee> /nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/asyncio/tasks.py:371: RuntimeError zigpy-xbee> ______________________ test_device_join_inconsistent_ieee ______________________ zigpy-xbee> zigpy-xbee> app = zigpy-xbee> device = ._device at 0x7ffff4cd9a80> zigpy-xbee> zigpy-xbee> def test_device_join_inconsistent_ieee(app, device): zigpy-xbee> """Test device join inconsistent IEEE.""" zigpy-xbee> dev = device() zigpy-xbee> data = b"\xee" + dev.nwk.serialize() + b"\x01\x02\x03\x04\x05\x06\x07\x08" + b"\x40" zigpy-xbee> zigpy-xbee> > _device_join(app, dev, data) zigpy-xbee> zigpy-xbee> tests/test_application.py:254: zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> tests/test_application.py:228: in _device_join zigpy-xbee> _test_rx(app, dev, dev.nwk, dst_ep, cluster_id, data) zigpy-xbee> tests/test_application.py:101: in _test_rx zigpy-xbee> app.handle_rx( zigpy-xbee> zigpy_xbee/zigbee/application.py:375: in handle_rx zigpy-xbee> self.packet_received( zigpy-xbee> /nix/store/1ivd9cbi5i2d3p5abq2kxyswnpjbbkl9-python3.11-zigpy-0.59.0/lib/python3.11/site-packages/zigpy/application.py:985: in packet_received zigpy-xbee> device.schedule_initialize() zigpy-xbee> /nix/store/1ivd9cbi5i2d3p5abq2kxyswnpjbbkl9-python3.11-zigpy-0.59.0/lib/python3.11/site-packages/zigpy/device.py:162: in schedule_initialize zigpy-xbee> self._initialize_task = asyncio.create_task(self.initialize()) zigpy-xbee> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zigpy-xbee> zigpy-xbee> coro = zigpy-xbee> zigpy-xbee> def create_task(coro, *, name=None, context=None): zigpy-xbee> """Schedule the execution of a coroutine object in a spawn task. zigpy-xbee> zigpy-xbee> Return a Task object. zigpy-xbee> """ zigpy-xbee> > loop = events.get_running_loop() zigpy-xbee> E RuntimeError: no running event loop zigpy-xbee> zigpy-xbee> /nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/asyncio/tasks.py:371: RuntimeError zigpy-xbee> _____________________________ test_rx_device_annce _____________________________ zigpy-xbee> zigpy-xbee> app = zigpy-xbee> ieee = 07:06:05:04:03:02:01:00, nwk = 256 zigpy-xbee> zigpy-xbee> def test_rx_device_annce(app, ieee, nwk): zigpy-xbee> """Test receiving device announce.""" zigpy-xbee> dst_ep = 0 zigpy-xbee> cluster_id = zdo_t.ZDOCmd.Device_annce zigpy-xbee> device = mock.MagicMock() zigpy-xbee> device.status = device.Status.NEW zigpy-xbee> device.zdo = zigpy.zdo.ZDO(None) zigpy-xbee> app.get_device = mock.MagicMock(return_value=device) zigpy-xbee> app.handle_join = mock.MagicMock() zigpy-xbee> app.handle_message = mock.MagicMock() zigpy-xbee> zigpy-xbee> data = t.uint8_t(0xAA).serialize() zigpy-xbee> data += nwk.serialize() zigpy-xbee> data += ieee.serialize() zigpy-xbee> data += t.uint8_t(0x8E).serialize() zigpy-xbee> zigpy-xbee> app.handle_rx( zigpy-xbee> ieee, zigpy-xbee> nwk, zigpy-xbee> mock.sentinel.src_ep, zigpy-xbee> dst_ep, zigpy-xbee> cluster_id, zigpy-xbee> mock.sentinel.profile_id, zigpy-xbee> mock.sentinel.rx_opt, zigpy-xbee> data, zigpy-xbee> ) zigpy-xbee> zigpy-xbee> > assert app.handle_message.call_count == 1 zigpy-xbee> E AssertionError: assert 0 == 1 zigpy-xbee> E + where 0 = .call_count zigpy-xbee> E + where = .handle_message zigpy-xbee> zigpy-xbee> tests/test_application.py:639: AssertionError
We're seeing a few test fail on
zigpy-xbee==0.19.0
starting withzigpy==0.59.0
, which is required byhome-assistant==2023.11.0
.Full log