def test_generate_invalid_message(): m = MessagePacket() m.source = "XX1XX-11" m.destination = "APRS" m.path = "TCPIP*,qAR,T2TEST" with pytest.raises(GenerateError): m.info
def test_generate_message_with_message_id(): m = MessagePacket() m.source = "XX1XX-11" m.destination = "APRS" m.path = "TCPIP*,qAR,T2TEST" m.addressee = "YY1YY-12" m.message = "This is a test message" m.message_id = "001" assert m.info == "YY1YY-12 :This is a test message{001"
def test_generate_group_bulletin(): m = MessagePacket() m.source = "XX1XX-11" m.destination = "APRS" m.path = "TCPIP*,qAR,T2TEST" m.bulletin_id = 1 m.group_bulletin_name = "TEST" m.message = "This is a test group bulletin" assert m.info == "BLN1TEST :This is a test group bulletin"
def test_generate_announcement(): m = MessagePacket() m.source = "XX1XX-11" m.destination = "APRS" m.path = "TCPIP*,qAR,T2TEST" m.announcement_id = "A" m.message = "This is a test announcement" assert m.info == "BLNA :This is a test announcement"
def test_generate_missing_message(): m = MessagePacket() m.source = "XX1XX-11" m.destination = "APRS" m.path = "TCPIP*,qAR,T2TEST" m.addressee = "YY1YY-12" with pytest.raises(GenerateError): m.info
def test_repr_with_source_only(): packet = MessagePacket() packet.source = "YY1YY-12" assert repr(packet) == "<MessagePacket: YY1YY-12>"
def test_invalid_group_bulletin_name_value(): m = MessagePacket() # Group bulletin name must be a str with a maximum length of 5 characters with pytest.raises(ValueError): m.group_bulletin_name = "ABCDEF"
def test_invalid_message_type(): m = MessagePacket() # Message must be a str with pytest.raises(TypeError): m.message = 123
def test_invalid_announcement_id_type(): m = MessagePacket() # Announcement ID must be a str with pytest.raises(TypeError): m.announcement_id = 1
def test_invalid_bulletin_id_value(): m = MessagePacket() # Bulletin ID must be between 0 and 9 inclusive with pytest.raises(ValueError): m.bulletin_id = 10
def test_empty(): packet = MessagePacket() assert repr(packet) == "<MessagePacket>"
def test_invalid_bulletin_id_type(): m = MessagePacket() # Bulletin ID must be an int with pytest.raises(TypeError): m.bulletin_id = "1"
def test_invalid_message_id_value(): m = MessagePacket() # Message ID must be 5 characters or less with pytest.raises(ValueError): m.message_id = "123456"
def test_invalid_message_id_type(): m = MessagePacket() # Message ID must be a str and 5 characters or less with pytest.raises(TypeError): m.message_id = 123
def test_invalid_accouncement_id_value(): m = MessagePacket() # Announcement ID must be a single character with pytest.raises(ValueError): m.announcement_id = "AA"
def test_invalid_message_addressee_type(): m = MessagePacket() # Addressee must be a str with pytest.raises(TypeError): m.addressee = 123
def test_invalid_message_addressee_value(): m = MessagePacket() # Addressee must be 9 characters or less with pytest.raises(ValueError): m.addressee = "XXX1XXX-11"