def test_decode_invalid_nrq(): try: APRSUtils.decode_nrq("S29") assert False except ValueError: assert True except Exception: assert False
def test_decode_nrq(): # Test with example from APRS 1.01 n, r, q = APRSUtils.decode_nrq("729") assert n == 87.5 assert r == 4 assert q == 1 # Test with 0 n, r, q = APRSUtils.decode_nrq("029") assert n == None assert r == None assert q == None # Test with manual n, r, q = APRSUtils.decode_nrq("929") assert n == "manual" # Test different qualities # These don't fit neatly into 2 ** x n, r, q = APRSUtils.decode_nrq("722") assert q == 120 n, r, q = APRSUtils.decode_nrq("721") assert q == 240 n, r, q = APRSUtils.decode_nrq("720") assert q == None