refactor(client): remove redundant timestamp parameter from open method

This commit is contained in:
Nils Andreas Svee committed 2026-05-10 23:37:35 +07:00
1 parent 2258509021
commit 023e85741a
16 files changed
+109 -107

No files matched your search

+1 -1
View File
@@ -72,7 +72,7 @@ fn run(args: CliArgs, shutdown_requested: &AtomicBool) -> Result<(), Box<dyn std
return Ok(()); return Ok(());
} }
let open = client.open(ClientTimestamp::now())?; let open = client.open()?;
output.print_event(open_event(&open))?; output.print_event(open_event(&open))?;
let mut interrupted = false; let mut interrupted = false;
+16 -14
View File
@@ -73,7 +73,7 @@ impl Client {
}) })
} }
pub fn open(&mut self, now: ClientTimestamp) -> Result<OpenOutcome, ClientError> { pub fn open(&mut self) -> Result<OpenOutcome, ClientError> {
match self.phase { match self.phase {
ClientPhase::Connected => {} ClientPhase::Connected => {}
ClientPhase::Open { .. } => return Err(ClientError::AlreadyOpen), ClientPhase::Open { .. } => return Err(ClientError::AlreadyOpen),
@@ -81,23 +81,12 @@ impl Client {
ClientPhase::NoTestCompleted => return Err(ClientError::AlreadyCompleted), ClientPhase::NoTestCompleted => return Err(ClientError::AlreadyCompleted),
} }
let outcome = self.open_inner(now); let outcome = (|| -> Result<OpenOutcome, ClientError> {
let restore = self
.socket
.set_read_timeout(self.config.socket_config.recv_timeout);
match (outcome, restore) {
(Ok(outcome), Ok(())) => Ok(outcome),
(Ok(_), Err(source)) => Err(ClientError::ReadTimeoutRestore { source }),
(Err(err), Ok(())) => Err(err),
(Err(err), Err(_)) => Err(err),
}
}
fn open_inner(&mut self, _now: ClientTimestamp) -> Result<OpenOutcome, ClientError> {
let request = OpenRequest { let request = OpenRequest {
params: self.requested.clone(), params: self.requested.clone(),
close: self.config.run_mode == RunMode::NoTest, close: self.config.run_mode == RunMode::NoTest,
}; };
let packet = encode_open_request(&request, self.config.hmac_key.as_deref())?; let packet = encode_open_request(&request, self.config.hmac_key.as_deref())?;
let mut buf = [0_u8; MAX_OPEN_PACKET_SIZE]; let mut buf = [0_u8; MAX_OPEN_PACKET_SIZE];
@@ -111,6 +100,7 @@ impl Client {
&buf[..size], &buf[..size],
self.config.hmac_key.as_deref(), self.config.hmac_key.as_deref(),
)?; )?;
return self.accept_open_reply(reply, ClientTimestamp::now()); return self.accept_open_reply(reply, ClientTimestamp::now());
} }
Err(err) Err(err)
@@ -123,6 +113,18 @@ impl Client {
} }
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
})();
let restore = self
.socket
.set_read_timeout(self.config.socket_config.recv_timeout);
match (outcome, restore) {
(Ok(outcome), Ok(())) => Ok(outcome),
(Ok(_), Err(source)) => Err(ClientError::ReadTimeoutRestore { source }),
(Err(err), Ok(())) => Err(err),
(Err(err), Err(_)) => Err(err),
}
} }
pub fn close(&mut self, now: ClientTimestamp) -> Result<Vec<ClientEvent>, ClientError> { pub fn close(&mut self, now: ClientTimestamp) -> Result<Vec<ClientEvent>, ClientError> {
+6 -6
View File
@@ -11,10 +11,10 @@ fn open_fails_after_close() {
let _ = recv_request(&socket, &tx); let _ = recv_request(&socket, &tx);
}); });
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.close(ClientTimestamp::now()).unwrap(); client.close(ClientTimestamp::now()).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::AlreadyClosed) Err(ClientError::AlreadyClosed)
)); ));
server.join(); server.join();
@@ -31,7 +31,7 @@ fn close_sends_one_close_packet_with_negotiated_token() {
let _ = recv_request(&socket, &tx); let _ = recv_request(&socket, &tx);
}); });
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let events = client.close(ClientTimestamp::now()).unwrap(); let events = client.close(ClientTimestamp::now()).unwrap();
assert_eq!(events.len(), 1); assert_eq!(events.len(), 1);
let packets: Vec<_> = server.rx.iter().take(2).collect(); let packets: Vec<_> = server.rx.iter().take(2).collect();
@@ -62,7 +62,7 @@ fn send_probe_fails_after_close() {
} }
}); });
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.close(ClientTimestamp::now()).unwrap(); client.close(ClientTimestamp::now()).unwrap();
assert!(matches!( assert!(matches!(
client.send_probe(), client.send_probe(),
@@ -84,7 +84,7 @@ fn close_clears_timed_out_metadata() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(60)); thread::sleep(Duration::from_millis(60));
@@ -132,7 +132,7 @@ fn close_flagged_echo_reply_emits_reply_then_closes_without_sending_close() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
+2 -2
View File
@@ -26,7 +26,7 @@ fn normal_open_applies_negotiated_dscp_after_open_and_close_clears_it() {
socket_traffic_class(&client.socket, client.remote).unwrap() & 0xfc, socket_traffic_class(&client.socket, client.remote).unwrap() & 0xfc,
0 0
); );
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
assert_eq!( assert_eq!(
socket_traffic_class(&client.socket, client.remote).unwrap() & 0xfc, socket_traffic_class(&client.socket, client.remote).unwrap() & 0xfc,
184 184
@@ -58,7 +58,7 @@ fn normal_open_uses_negotiated_dscp_not_requested_dscp() {
config.negotiation_policy = NegotiationPolicy::Loose; config.negotiation_policy = NegotiationPolicy::Loose;
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let negotiated = assert_open_started(client.open(ClientTimestamp::now()).unwrap()); let negotiated = assert_open_started(client.open().unwrap());
assert_eq!(negotiated.params.dscp, 0); assert_eq!(negotiated.params.dscp, 0);
assert_eq!( assert_eq!(
socket_traffic_class(&client.socket, client.remote).unwrap(), socket_traffic_class(&client.socket, client.remote).unwrap(),
+6 -6
View File
@@ -14,7 +14,7 @@ fn hmac_open_success() {
}); });
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
server.join(); server.join();
} }
@@ -32,7 +32,7 @@ fn hmac_open_rejects_missing_hmac() {
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::Protocol( Err(ClientError::Protocol(
irtt_proto::ProtoError::HmacPresenceMismatch irtt_proto::ProtoError::HmacPresenceMismatch
)) ))
@@ -55,7 +55,7 @@ fn hmac_open_rejects_bad_hmac() {
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::Protocol(irtt_proto::ProtoError::BadHmac)) Err(ClientError::Protocol(irtt_proto::ProtoError::BadHmac))
)); ));
server.join(); server.join();
@@ -76,7 +76,7 @@ fn hmac_close_packet_includes_valid_hmac() {
}); });
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.close(ClientTimestamp::now()).unwrap(); client.close(ClientTimestamp::now()).unwrap();
let packets: Vec<_> = server.rx.iter().take(2).collect(); let packets: Vec<_> = server.rx.iter().take(2).collect();
let close = &packets[1]; let close = &packets[1];
@@ -125,7 +125,7 @@ fn bad_hmac_reply_is_dropped() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(30)); thread::sleep(Duration::from_millis(30));
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
@@ -174,7 +174,7 @@ fn hmac_echo_request_reply_works() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(50)); thread::sleep(Duration::from_millis(50));
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
@@ -8,7 +8,7 @@ fn no_test_open_close_succeeds_on_open_reply_close() {
let server = no_test_server(params.clone(), 0); let server = no_test_server(params.clone(), 0);
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let negotiated = assert_no_test_completed(client.open(ClientTimestamp::now()).unwrap()); let negotiated = assert_no_test_completed(client.open().unwrap());
assert_eq!(negotiated.params, params); assert_eq!(negotiated.params, params);
assert_eq!(client.negotiated.as_ref(), Some(&negotiated)); assert_eq!(client.negotiated.as_ref(), Some(&negotiated));
assert!(matches!( assert!(matches!(
@@ -26,7 +26,7 @@ fn no_test_success_validates_params() {
let server = no_test_server(params.clone(), 0); let server = no_test_server(params.clone(), 0);
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let negotiated = assert_no_test_completed(client.open(ClientTimestamp::now()).unwrap()); let negotiated = assert_no_test_completed(client.open().unwrap());
assert_eq!(negotiated.params, params); assert_eq!(negotiated.params, params);
server.join(); server.join();
} }
@@ -40,7 +40,7 @@ fn no_test_rejects_non_close_open_reply() {
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::UnexpectedNoTestReply) Err(ClientError::UnexpectedNoTestReply)
)); ));
server.join(); server.join();
@@ -55,7 +55,7 @@ fn no_test_rejects_non_zero_token_with_close_reply() {
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::NonZeroNoTestToken { token: TOKEN }) Err(ClientError::NonZeroNoTestToken { token: TOKEN })
)); ));
server.join(); server.join();
@@ -71,7 +71,7 @@ fn no_test_strict_negotiation_rejects_changed_params() {
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::NegotiationRejected { .. }) Err(ClientError::NegotiationRejected { .. })
)); ));
server.join(); server.join();
@@ -87,7 +87,7 @@ fn no_test_loose_negotiation_accepts_restricted_params() {
let server = no_test_server(params.clone(), 0); let server = no_test_server(params.clone(), 0);
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let negotiated = assert_no_test_completed(client.open(ClientTimestamp::now()).unwrap()); let negotiated = assert_no_test_completed(client.open().unwrap());
assert_eq!(negotiated.params, params); assert_eq!(negotiated.params, params);
server.join(); server.join();
} }
@@ -100,7 +100,7 @@ fn send_probe_fails_after_no_test_completed() {
let server = no_test_server(params, 0); let server = no_test_server(params, 0);
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_no_test_completed(client.open(ClientTimestamp::now()).unwrap()); assert_no_test_completed(client.open().unwrap());
assert!(matches!( assert!(matches!(
client.send_probe(), client.send_probe(),
Err(ClientError::AlreadyCompleted) Err(ClientError::AlreadyCompleted)
@@ -116,9 +116,9 @@ fn open_fails_after_no_test_completed() {
let server = no_test_server(params, 0); let server = no_test_server(params, 0);
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_no_test_completed(client.open(ClientTimestamp::now()).unwrap()); assert_no_test_completed(client.open().unwrap());
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::AlreadyCompleted) Err(ClientError::AlreadyCompleted)
)); ));
server.join(); server.join();
+8 -8
View File
@@ -18,7 +18,7 @@ fn successful_open_handshake() {
let server = open_success_server(params.clone()); let server = open_success_server(params.clone());
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
let negotiated = assert_open_started(client.open(ClientTimestamp::now()).unwrap()); let negotiated = assert_open_started(client.open().unwrap());
assert_eq!(negotiated.params, params); assert_eq!(negotiated.params, params);
assert!(matches!(client.phase, ClientPhase::Open { token: TOKEN })); assert!(matches!(client.phase, ClientPhase::Open { token: TOKEN }));
server.join(); server.join();
@@ -30,9 +30,9 @@ fn open_fails_when_already_open() {
let params = params_from_config(&config).unwrap(); let params = params_from_config(&config).unwrap();
let server = open_success_server(params); let server = open_success_server(params);
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::AlreadyOpen) Err(ClientError::AlreadyOpen)
)); ));
server.join(); server.join();
@@ -53,7 +53,7 @@ fn open_retries_after_first_timeout() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert_open_started(outcome); assert_open_started(outcome);
assert_eq!(server.rx.iter().take(2).count(), 2); assert_eq!(server.rx.iter().take(2).count(), 2);
server.join(); server.join();
@@ -68,7 +68,7 @@ fn open_timeout_after_all_timeouts() {
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
)); ));
assert_eq!(server.rx.iter().take(2).count(), 2); assert_eq!(server.rx.iter().take(2).count(), 2);
@@ -88,7 +88,7 @@ fn open_restores_configured_read_timeout_after_timeout() {
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
)); ));
@@ -108,7 +108,7 @@ fn protocol_version_mismatch_fails() {
let server = open_success_server(params); let server = open_success_server(params);
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::ProtocolVersionMismatch { received: 2, .. }) Err(ClientError::ProtocolVersionMismatch { received: 2, .. })
)); ));
server.join(); server.join();
@@ -125,7 +125,7 @@ fn server_rejection_fails_in_normal_mode() {
}); });
let mut client = Client::connect(default_test_config(server.addr)).unwrap(); let mut client = Client::connect(default_test_config(server.addr)).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::ServerRejected) Err(ClientError::ServerRejected)
)); ));
server.join(); server.join();
@@ -38,7 +38,7 @@ fn send_probe_sends_valid_echo_request() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let events = client.send_probe().unwrap(); let events = client.send_probe().unwrap();
assert_eq!(events.len(), 1); assert_eq!(events.len(), 1);
match &events[0] { match &events[0] {
@@ -89,7 +89,7 @@ fn echo_sent_reports_schedule_and_timer_error() {
mono: Instant::now(), mono: Instant::now(),
wall: SystemTime::now(), wall: SystemTime::now(),
}; };
assert_open_started(client.open(start).unwrap()); assert_open_started(client.open().unwrap());
let session_start = client.session.as_ref().unwrap().start_mono; let session_start = client.session.as_ref().unwrap().start_mono;
assert!( assert!(
session_start >= start.mono, session_start >= start.mono,
@@ -131,7 +131,7 @@ fn send_probe_starts_seq_at_zero_and_increments() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
@@ -172,7 +172,7 @@ fn send_probe_respects_finite_duration_exclusive_end() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let session = client.session.as_ref().unwrap(); let session = client.session.as_ref().unwrap();
let start = session.start_mono; let start = session.start_mono;
@@ -225,7 +225,7 @@ fn continuous_duration_keeps_generating_send_deadlines() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let start = client.session.as_ref().unwrap().start_mono; let start = client.session.as_ref().unwrap().start_mono;
let interval = Duration::from_millis(500); let interval = Duration::from_millis(500);
@@ -301,7 +301,7 @@ fn send_probe_reports_schedule_overflow() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.session.as_mut().unwrap().packets_sent = u64::MAX - 1; client.session.as_mut().unwrap().packets_sent = u64::MAX - 1;
assert!(matches!( assert!(matches!(
@@ -323,7 +323,7 @@ fn send_probe_reports_logical_sequence_counter_overflow() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.session.as_mut().unwrap().next_logical_seq = u64::MAX; client.session.as_mut().unwrap().next_logical_seq = u64::MAX;
assert!(matches!( assert!(matches!(
@@ -347,7 +347,7 @@ fn send_probe_reports_packets_sent_counter_overflow() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.session.as_mut().unwrap().packets_sent = u64::MAX; client.session.as_mut().unwrap().packets_sent = u64::MAX;
assert!(matches!( assert!(matches!(
@@ -371,7 +371,7 @@ fn recv_once_returns_empty_on_timeout() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
assert!(events.is_empty()); assert!(events.is_empty());
server.join(); server.join();
@@ -477,7 +477,7 @@ fn recv_once_decodes_only_received_bytes_after_longer_datagram() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
@@ -550,7 +550,7 @@ fn echo_reply_metadata_propagates_observed_dscp_with_ancillary() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(50)); thread::sleep(Duration::from_millis(50));
@@ -757,7 +757,7 @@ fn wrong_token_reply_is_dropped() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(30)); thread::sleep(Duration::from_millis(30));
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
@@ -796,7 +796,7 @@ fn duplicate_reply_emits_duplicate_event() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(50)); thread::sleep(Duration::from_millis(50));
@@ -850,7 +850,7 @@ fn out_of_order_reply_emits_late_event() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(50)); thread::sleep(Duration::from_millis(50));
@@ -891,7 +891,7 @@ fn poll_timeouts_emits_echo_loss() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
@@ -921,7 +921,7 @@ fn poll_timeouts_removes_expired_pending() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(150)); thread::sleep(Duration::from_millis(150));
@@ -967,7 +967,7 @@ fn late_reply_after_timeout_preserves_measurement_metadata() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(60)); thread::sleep(Duration::from_millis(60));
@@ -1046,7 +1046,7 @@ fn late_reply_metadata_is_unavailable_without_ancillary() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(60)); thread::sleep(Duration::from_millis(60));
@@ -1095,7 +1095,7 @@ fn late_reply_metadata_propagates_observed_dscp_with_ancillary() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(60)); thread::sleep(Duration::from_millis(60));
@@ -1149,7 +1149,7 @@ fn pending_map_bounded() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
@@ -1199,7 +1199,7 @@ fn minimal_negotiated_layout_works() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(30)); thread::sleep(Duration::from_millis(30));
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
@@ -1253,7 +1253,7 @@ fn late_reply_with_pending_preserves_rtt() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
@@ -1296,7 +1296,7 @@ fn pending_full_does_not_send_packet() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
@@ -1361,7 +1361,7 @@ fn unmatched_future_reply_emits_warning_not_late() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(50)); thread::sleep(Duration::from_millis(50));
@@ -1419,7 +1419,7 @@ fn unmatched_future_reply_does_not_update_highest_received_seq() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
thread::sleep(Duration::from_millis(50)); thread::sleep(Duration::from_millis(50));
@@ -1523,7 +1523,7 @@ fn matched_reply_with_reversed_monotonic_time_still_emits_event() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let base = Instant::now() + Duration::from_secs(1); let base = Instant::now() + Duration::from_secs(1);
let send_ts = ClientTimestamp { let send_ts = ClientTimestamp {
@@ -1566,7 +1566,7 @@ fn process_received_packet_uses_supplied_receive_metadata() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe_at(ClientTimestamp::now()).unwrap(); client.send_probe_at(ClientTimestamp::now()).unwrap();
let recv_ts = ClientTimestamp::now(); let recv_ts = ClientTimestamp::now();
@@ -1613,7 +1613,7 @@ fn process_received_packet_uses_supplied_receive_metadata_for_late_reply() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe_at(ClientTimestamp::now()).unwrap(); client.send_probe_at(ClientTimestamp::now()).unwrap();
thread::sleep(Duration::from_millis(60)); thread::sleep(Duration::from_millis(60));
@@ -1663,7 +1663,7 @@ fn receive_metadata_does_not_broaden_malformed_warning() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let events = client let events = client
.process_received_packet( .process_received_packet(
@@ -1754,7 +1754,7 @@ fn send_probe_wraps_wire_sequence_at_u32_max() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let session = client.session.as_mut().unwrap(); let session = client.session.as_mut().unwrap();
session.next_wire_seq = u32::MAX; session.next_wire_seq = u32::MAX;
@@ -1811,7 +1811,7 @@ fn wrapped_reply_after_u32_max_is_not_late() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let session = client.session.as_mut().unwrap(); let session = client.session.as_mut().unwrap();
session.next_wire_seq = u32::MAX; session.next_wire_seq = u32::MAX;
session.next_logical_seq = 41; session.next_logical_seq = 41;
@@ -1848,7 +1848,7 @@ fn send_probe_after_sending_done_is_noop() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.session.as_mut().unwrap().sending_done = true; client.session.as_mut().unwrap().sending_done = true;
let events = client.send_probe().unwrap(); let events = client.send_probe().unwrap();
@@ -1926,7 +1926,7 @@ fn recv_buffer_uses_negotiated_packet_length() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
let buf_size = client.recv_buffer_size(); let buf_size = client.recv_buffer_size();
assert!( assert!(
buf_size > 4096, buf_size > 4096,
@@ -1954,7 +1954,7 @@ fn short_echo_reply_does_not_emit_echo_reply() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
let mut packet = echo_reply_packet(TOKEN, 0, &params, &TimestampFields::default(), None); let mut packet = echo_reply_packet(TOKEN, 0, &params, &TimestampFields::default(), None);
@@ -1986,7 +1986,7 @@ fn overlong_echo_reply_does_not_emit_echo_reply() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
let mut packet = echo_reply_packet(TOKEN, 0, &params, &TimestampFields::default(), None); let mut packet = echo_reply_packet(TOKEN, 0, &params, &TimestampFields::default(), None);
@@ -2036,7 +2036,7 @@ fn overlong_datagram_detection_uses_extra_receive_byte() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
assert_eq!( assert_eq!(
client.recv_buffer.len(), client.recv_buffer.len(),
echo_packet_len(false, &params) + 1 echo_packet_len(false, &params) + 1
@@ -2083,7 +2083,7 @@ fn exact_length_echo_reply_still_emits_echo_reply() {
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
client.send_probe().unwrap(); client.send_probe().unwrap();
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
@@ -283,7 +283,7 @@ pub(super) fn open_client_with_echo_server(params: &Params) -> (Client, FakeServ
..default_test_config(server.addr) ..default_test_config(server.addr)
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert_open_started(client.open(ClientTimestamp::now()).unwrap()); assert_open_started(client.open().unwrap());
(client, server) (client, server)
} }
+1 -1
View File
@@ -29,7 +29,7 @@ fn connect_applies_configured_ipv4_ttl_before_open_and_close_preserves_it() {
assert_eq!(socket_ttl(&client.socket, client.remote).unwrap(), 64); assert_eq!(socket_ttl(&client.socket, client.remote).unwrap(), 64);
client.open(ClientTimestamp::now()).unwrap(); client.open().unwrap();
server.join(); server.join();
client.close(ClientTimestamp::now()).unwrap(); client.close(ClientTimestamp::now()).unwrap();
+1 -1
View File
@@ -94,7 +94,7 @@ impl ManagedClient {
.transpose()?; .transpose()?;
let mut client = Client::connect(config)?; let mut client = Client::connect(config)?;
let outcome = client.open(ClientTimestamp::now())?; let outcome = client.open()?;
publish_open_outcome(&hub, &outcome); publish_open_outcome(&hub, &outcome);
let cancellation = CancellationToken::new(); let cancellation = CancellationToken::new();
+9 -9
View File
@@ -98,7 +98,7 @@ fn hmac_close_success_sends_authenticated_close_and_closes_session() {
config.hmac_key = Some(key); config.hmac_key = Some(key);
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert_started(outcome, &params); assert_started(outcome, &params);
let events = client.close(ClientTimestamp::now()).unwrap(); let events = client.close(ClientTimestamp::now()).unwrap();
@@ -132,7 +132,7 @@ fn missing_client_key_against_hmac_required_server_times_out() {
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
)); ));
@@ -157,7 +157,7 @@ fn wrong_client_key_against_hmac_required_server_times_out() {
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
)); ));
@@ -185,7 +185,7 @@ fn bad_hmac_echo_reply_is_rejected_without_echo_reply_event() {
}; };
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert_started(outcome, &params); assert_started(outcome, &params);
let sent = client.send_probe().unwrap(); let sent = client.send_probe().unwrap();
@@ -229,7 +229,7 @@ fn hmac_open_reply_with_bad_hmac_fails_with_protocol_error() {
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::Protocol(ProtoError::BadHmac)) Err(ClientError::Protocol(ProtoError::BadHmac))
)); ));
server.join(); server.join();
@@ -247,7 +247,7 @@ fn non_hmac_client_open_does_not_set_hmac_flag() {
config.hmac_key = None; config.hmac_key = None;
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert_started(outcome, &params); assert_started(outcome, &params);
let observations = server.observations(1); let observations = server.observations(1);
@@ -304,7 +304,7 @@ fn backend_hmac_correct_key_succeeds() {
config.hmac_key = Some(key); config.hmac_key = Some(key);
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert!(matches!(outcome, OpenOutcome::Started { .. })); assert!(matches!(outcome, OpenOutcome::Started { .. }));
let sent = client.send_probe().unwrap(); let sent = client.send_probe().unwrap();
@@ -327,7 +327,7 @@ fn backend_hmac_wrong_key_fails() {
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
)); ));
} }
@@ -342,7 +342,7 @@ fn backend_hmac_missing_key_fails() {
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::OpenTimeout) Err(ClientError::OpenTimeout)
)); ));
} }
+1 -1
View File
@@ -128,7 +128,7 @@ fn backend_large_packet_smoke() {
}) })
.unwrap(); .unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. })); assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. }));
client.send_probe().unwrap(); client.send_probe().unwrap();
+7 -7
View File
@@ -167,7 +167,7 @@ fn strict_open_rejects_changed_compatibility_params_from_server() {
config.server_addr = server.addr.to_string(); config.server_addr = server.addr.to_string();
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
assert!(matches!( assert!(matches!(
client.open(irtt_client::ClientTimestamp::now()), client.open(),
Err(ClientError::NegotiationRejected { .. }) Err(ClientError::NegotiationRejected { .. })
)); ));
server.join(); server.join();
@@ -379,7 +379,7 @@ fn backend_basic_open_echo_close() {
let peer = BackendPeer::start_open_echo(params.clone(), None); let peer = BackendPeer::start_open_echo(params.clone(), None);
let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap(); let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. })); assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. }));
let sent = client.send_probe().unwrap(); let sent = client.send_probe().unwrap();
@@ -400,7 +400,7 @@ fn backend_ttl_smoke() {
config.socket_config.ttl = Some(64); config.socket_config.ttl = Some(64);
let mut client = Client::connect(config).unwrap(); let mut client = Client::connect(config).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. })); assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. }));
let sent = client.send_probe().unwrap(); let sent = client.send_probe().unwrap();
@@ -420,7 +420,7 @@ fn dscp_configured_open_close_smoke() {
let server = start_open_server(params.clone(), None); let server = start_open_server(params.clone(), None);
let mut client = Client::connect(config_for_params(server.addr, &params)).unwrap(); let mut client = Client::connect(config_for_params(server.addr, &params)).unwrap();
let outcome = client.open(ClientTimestamp::now()).unwrap(); let outcome = client.open().unwrap();
assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. })); assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. }));
client.close(ClientTimestamp::now()).unwrap(); client.close(ClientTimestamp::now()).unwrap();
server.join(); server.join();
@@ -438,7 +438,7 @@ fn backend_received_stats_smoke() {
let peer = BackendPeer::start_open_echo(params.clone(), None); let peer = BackendPeer::start_open_echo(params.clone(), None);
let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap(); let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap();
client.open(ClientTimestamp::now()).unwrap(); client.open().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
assert_eq!(events.len(), 1); assert_eq!(events.len(), 1);
@@ -461,7 +461,7 @@ fn backend_timestamp_smoke() {
let peer = BackendPeer::start_open_echo(params.clone(), None); let peer = BackendPeer::start_open_echo(params.clone(), None);
let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap(); let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap();
client.open(ClientTimestamp::now()).unwrap(); client.open().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
assert_eq!(events.len(), 1); assert_eq!(events.len(), 1);
@@ -508,7 +508,7 @@ fn backend_clock_smoke() {
let peer = BackendPeer::start_open_echo(params.clone(), None); let peer = BackendPeer::start_open_echo(params.clone(), None);
let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap(); let mut client = Client::connect(config_for_params(peer.addr(), &params)).unwrap();
client.open(ClientTimestamp::now()).unwrap(); client.open().unwrap();
client.send_probe().unwrap(); client.send_probe().unwrap();
let events = client.recv_once().unwrap(); let events = client.recv_once().unwrap();
assert_eq!(events.len(), 1); assert_eq!(events.len(), 1);
+3 -3
View File
@@ -112,7 +112,7 @@ fn server_fill_strict_rejects_removed_fill() {
let server = start_open_server(returned, None); let server = start_open_server(returned, None);
let mut client = Client::connect(config_for_params(server.addr, &requested)).unwrap(); let mut client = Client::connect(config_for_params(server.addr, &requested)).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::NegotiationRejected { .. }) Err(ClientError::NegotiationRejected { .. })
)); ));
server.join(); server.join();
@@ -129,7 +129,7 @@ fn server_fill_strict_rejects_different_fill_value() {
let server = start_open_server(returned, None); let server = start_open_server(returned, None);
let mut client = Client::connect(config_for_params(server.addr, &requested)).unwrap(); let mut client = Client::connect(config_for_params(server.addr, &requested)).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::NegotiationRejected { .. }) Err(ClientError::NegotiationRejected { .. })
)); ));
server.join(); server.join();
@@ -145,7 +145,7 @@ fn server_fill_strict_rejects_unexpected_fill_from_server() {
let server = start_open_server(returned, None); let server = start_open_server(returned, None);
let mut client = Client::connect(config_for_params(server.addr, &requested)).unwrap(); let mut client = Client::connect(config_for_params(server.addr, &requested)).unwrap();
assert!(matches!( assert!(matches!(
client.open(ClientTimestamp::now()), client.open(),
Err(ClientError::NegotiationRejected { .. }) Err(ClientError::NegotiationRejected { .. })
)); ));
server.join(); server.join();
+1 -1
View File
@@ -216,7 +216,7 @@ where
{ {
let server = start_one_probe_server(server_params, timestamps, hmac_key); let server = start_one_probe_server(server_params, timestamps, hmac_key);
let mut client = Client::connect(build_config(server.addr)).unwrap(); let mut client = Client::connect(build_config(server.addr)).unwrap();
let negotiated = assert_started(client.open(ClientTimestamp::now()).unwrap()); let negotiated = assert_started(client.open().unwrap());
let sent_events = client.send_probe().unwrap(); let sent_events = client.send_probe().unwrap();
assert_eq!(sent_events.len(), 1); assert_eq!(sent_events.len(), 1);