// file: crates/common/game-realtime-webtransport-lib/unit_tests/config.rs // version: 1 #[test] fn defaults_are_valid_and_preserve_the_one_mib_baseline() { let config = super::WebTransportConfig::default(); assert!(config.validate().is_ok()); assert_eq!(config.max_message_size(), 1024 * 1024); } #[test] fn zero_limits_and_deadlines_are_rejected() { let cases = [ super::WebTransportConfig::default().with_max_message_size(0), super::WebTransportConfig::default().with_connect_timeout(std::time::Duration::ZERO), super::WebTransportConfig::default().with_primary_stream_timeout(std::time::Duration::ZERO), super::WebTransportConfig::default().with_send_timeout(std::time::Duration::ZERO), ]; for config in cases { let result = config.validate(); match result { Ok(()) => panic!("invalid WebTransport configuration unexpectedly accepted"), Err(error) => assert_eq!(error.kind(), game_realtime_transport_lib::TransportErrorKind::InvalidConfiguration), } } }