0.3.5-alpha.2.fix.1
This commit is contained in:
@@ -1,10 +1,20 @@
|
||||
// file: crates/common/game-realtime-webtransport-lib/tests/establishment.rs
|
||||
// version: 1
|
||||
// version: 2
|
||||
|
||||
//! Deterministic native loopback proof for WebTransport session establishment and SHA-256 pinning.
|
||||
|
||||
const TEST_TIMEOUT: std::time::Duration = std::time::Duration::from_secs(5);
|
||||
|
||||
fn normalized_socket_addr(value: std::net::SocketAddr) -> std::net::SocketAddr {
|
||||
match value {
|
||||
std::net::SocketAddr::V4(_) => return value,
|
||||
std::net::SocketAddr::V6(ipv6) => match ipv6.ip().to_ipv4_mapped() {
|
||||
Some(ipv4) => return std::net::SocketAddr::new(std::net::IpAddr::V4(ipv4), ipv6.port()),
|
||||
None => return std::net::SocketAddr::V6(ipv6),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
#[tokio::test(flavor = "current_thread")]
|
||||
async fn pinned_client_and_server_establish_a_loopback_session() {
|
||||
let identity = match game_realtime_webtransport_lib::WebTransportServerIdentity::generate_loopback() {
|
||||
@@ -34,7 +44,7 @@ async fn pinned_client_and_server_establish_a_loopback_session() {
|
||||
};
|
||||
assert_eq!(client_session.request_url(), Some(endpoint.as_str()));
|
||||
assert_eq!(server_session.request_url(), Some(endpoint.as_str()));
|
||||
assert_eq!(client_session.remote_addr(), listener.local_addr());
|
||||
assert_eq!(normalized_socket_addr(client_session.remote_addr()), normalized_socket_addr(listener.local_addr()));
|
||||
}
|
||||
|
||||
#[tokio::test(flavor = "current_thread")]
|
||||
|
||||
Reference in New Issue
Block a user