40 lines
1 KiB
Rust
40 lines
1 KiB
Rust
use crate::{PID, prudp::socket_addr::PRUDPSockAddr};
|
|
use macros::RmcSerialize;
|
|
|
|
#[derive(Debug, RmcSerialize, PartialEq, Eq)]
|
|
#[rmc_struct(0)]
|
|
pub struct ConnectionInitData {
|
|
pub prudpsock_addr: PRUDPSockAddr,
|
|
pub pid: PID,
|
|
}
|
|
|
|
#[cfg(test)]
|
|
mod test {
|
|
use std::{
|
|
io::Cursor,
|
|
net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4},
|
|
};
|
|
|
|
use crate::{
|
|
prudp::{socket_addr::PRUDPSockAddr, virtual_port::VirtualPort},
|
|
rmc::structures::RmcSerialize,
|
|
rnex_proxy_common::ConnectionInitData,
|
|
};
|
|
|
|
#[test]
|
|
fn test() {
|
|
let data = ConnectionInitData {
|
|
prudpsock_addr: PRUDPSockAddr {
|
|
regular_socket_addr: SocketAddr::V4(SocketAddrV4::new(Ipv4Addr::BROADCAST, 19293)),
|
|
virtual_port: VirtualPort::new(10, 2),
|
|
},
|
|
pid: 100,
|
|
};
|
|
|
|
let ser = data.to_data().unwrap();
|
|
|
|
let de = ConnectionInitData::deserialize(&mut Cursor::new(ser)).unwrap();
|
|
|
|
assert_eq!(data, de);
|
|
}
|
|
}
|