def test_construct(self): total = bytes.fromhex( "7EA02C02232110AF9FE6E600601DA109060760857405080101BE10040E01000000065F1F0400001E1DFFFFC5E47E" ) information_part = bytes.fromhex( "E6E600601DA109060760857405080101BE10040E01000000065F1F0400001E1DFFFF" ) server_address = address.HdlcAddress(logical_address=1, physical_address=17, address_type="server") # Public client client_address = address.HdlcAddress(logical_address=16, physical_address=None, address_type="client") frame = frames.InformationFrame( destination_address=server_address, source_address=client_address, payload=information_part, send_sequence_number=0, receive_sequence_number=0, segmented=False, final=True, ) print(total) print(frame.to_bytes()) assert frame.to_bytes() == total
def test_contruct(self): total = bytes.fromhex( "7EA0382102233034E7E6E7006129A109060760857405080101A203020100A305A103020100BE10040E0800065F1F0400001E1D04C80007B86A7E" ) information_part = bytes.fromhex( "E6E7006129A109060760857405080101A203020100A305A103020100BE10040E0800065F1F0400001E1D04C80007" ) server_address = address.HdlcAddress(logical_address=1, physical_address=17, address_type="server") # Public client client_address = address.HdlcAddress(logical_address=16, physical_address=None, address_type="client") frame = frames.InformationFrame( destination_address=client_address, source_address=server_address, payload=information_part, send_sequence_number=0, receive_sequence_number=1, segmented=False, final=True, ) print(f"length = {frame.frame_length} :: {len(frame.to_bytes())}") print(total.hex()) print(frame.to_bytes().hex()) assert frame.to_bytes() == total
def generate_information_frame(self, payload: bytes, segmented: bool, final: bool) -> frames.InformationFrame: return frames.InformationFrame( destination_address=self.server_hdlc_address, source_address=self.client_hdlc_address, payload=payload, send_sequence_number=self.hdlc_connection.server_ssn, receive_sequence_number=self.hdlc_connection.server_rsn, segmented=segmented, final=final, )