import struct import asyncio from unittest.mock import AsyncMock from pm3py.core.protocol import Cmd from pm3py.core.transport import PM3Response from pm3py.core.lf import LFCommands def make_response(cmd, status, data): return PM3Response(cmd=cmd, status=status, reason=0, ng=True, data=data) def test_lf_tune(): t = AsyncMock() lf = LFCommands(t) # First call: init, second call: measure returns uint32 voltage t.send_ng.return_value = make_response(Cmd.MEASURE_ANTENNA_TUNING_LF, 0, struct.pack(" 1 else kwargs["payload"] assert len(payload) == 5 # lf_sample_payload_t: 30+1+1 bits + cotag byte word = struct.unpack_from("> 30) & 1 == 0 # realtime = 0 def test_lf_sniff_uses_field_off(): t = AsyncMock() lf = LFCommands(t) t.send_ng.return_value = make_response(Cmd.LF_SNIFF_RAW_ADC, 0, struct.pack("