Nils Andreas Svee
0262a2af0c
test(client): unify fake and real backend testing via BackendPeer
...
Introduce a BackendPeer abstraction to transparently switch between fake and real IRTT backends. This simplifies test logic by removing manual skip checks and providing a consistent interface for server lifecycle management.
2026-05-04 17:16:23 +07:00
Nils Andreas Svee
a715842e38
test(client): add integration tests for compatibility with real IRTT backends
...
Introduce a mechanism to run tests against a live irtt binary to verify real-world protocol interoperability, including HMAC authentication and various timestamp modes.
2026-05-04 00:05:35 +07:00
Nils Andreas Svee
56b560418c
test(client): add comprehensive integration tests for HMAC authentication
...
Verify HMAC negotiation, session closure, and error handling for authenticated probes to ensure protocol security and reliability.
2026-05-03 23:06:26 +07:00
Nils Andreas Svee
86f16b8656
test(client): split client tests into behavior-focused modules
2026-05-03 22:54:08 +07:00
Nils Andreas Svee
746ea3805b
refactor(client): move internal client tests to a dedicated sub-module
2026-05-03 22:25:35 +07:00
Nils Andreas Svee
bf5b3b2f55
refactor(cli): rename m8 compatibility terms to advanced protocol options
2026-05-03 22:25:35 +07:00
Nils Andreas Svee
8ee308a2b4
test(cli): consolidate invalid argument parsing tests
2026-05-03 22:25:25 +07:00
Nils Andreas Svee
49dbb0b536
test: verify RTT equality when no timestamping is present
2026-05-03 21:30:23 +07:00
Nils Andreas Svee
dff201de89
refactor(test): extract RTT processing verification to helper function
2026-05-03 21:30:23 +07:00
Nils Andreas Svee
c506d5a7f7
test: update mock timestamp simulation in test support
2026-05-03 21:30:23 +07:00
Nils Andreas Svee
7440e7d217
test(client): add integration tests for m8 compatibility
2026-05-03 21:26:55 +07:00
Nils Andreas Svee
18c6e2c1a9
test(cli): expand test coverage for new CLI parameters
2026-05-03 16:12:10 +07:00
Nils Andreas Svee
5af3f891fc
feat(cli): add advanced negotiation and protocol options
2026-05-03 16:12:10 +07:00
Nils Andreas Svee
64df93dbb6
feat(cli): add support for midpoint timestamps and received stats
2026-05-03 16:12:10 +07:00
Nils Andreas Svee
8c9afce30f
feat(client): implement protocol configuration validation
2026-05-03 16:12:10 +07:00
Nils Andreas Svee
474aefb723
feat(client): define constants and validation for DSCP and server fill
2026-05-03 16:12:10 +07:00
Nils Andreas Svee
c2138fe356
test(client): validate parameter mapping from configuration
2026-05-03 15:34:04 +07:00
Nils Andreas Svee
70df9d63f1
test(proto): verify HMAC field placement in protocol packets
2026-05-03 15:34:04 +07:00
Nils Andreas Svee
3c4a77b9f6
test(proto): add unit tests for parameter encoding and decoding
2026-05-03 15:34:04 +07:00
Nils Andreas Svee
7b3deb1f3c
refactor(client): modularize duration restriction validation
2026-05-03 15:34:04 +07:00
Nils Andreas Svee
59194b620a
feat(cli): implement continuous statistics and summary suppression
2026-05-02 00:01:31 +07:00
Nils Andreas Svee
d79c8716a0
refactor(cli): enhance main loop and reply draining logic
2026-05-02 00:01:31 +07:00
Nils Andreas Svee
36c36f3872
feat(cli): add support for continuous mode with zero duration
2026-05-02 00:01:31 +07:00
Nils Andreas Svee
851d143f86
refactor(client): improve session initialization and state access
2026-05-02 00:01:31 +07:00
Nils Andreas Svee
e63b176265
style(cli): rename machine output keys for clarity
2026-05-02 00:01:31 +07:00
Nils Andreas Svee
a26e1a6d59
feat(cli): integrate StatsCollector into main execution loop
2026-05-01 22:11:47 +07:00
Nils Andreas Svee
815dab077d
feat(cli): implement summary formatting for statistics
2026-05-01 22:11:47 +07:00
Nils Andreas Svee
17d9ed9e3a
build(cli): add irtt-stats dependency and feature flag
2026-05-01 22:11:47 +07:00
Nils Andreas Svee
07b3d2d822
feat(cli): add Human output mode and summary logic
2026-05-01 22:11:47 +07:00
Nils Andreas Svee
64e7117a12
feat(client): drain late replies before closing session
2026-05-01 18:24:54 +07:00
Nils Andreas Svee
4604dd8786
feat(stats): bound sequence tracking in continuous mode
2026-05-01 18:24:54 +07:00
Nils Andreas Svee
a73a4ff341
fix(client): prune insertion order in TimedOutMap on removal
2026-05-01 18:24:54 +07:00
Nils Andreas Svee
96bd041680
build(stats): add irtt-client dependency to irtt-stats
2026-05-01 18:08:21 +07:00
Nils Andreas Svee
198a929ed6
feat(stats): implement core statistics collection and aggregation
2026-05-01 18:07:54 +07:00
Nils Andreas Svee
cf519bd630
feat(client): emit EchoSent event with scheduling metadata
2026-05-01 10:05:52 +07:00
Nils Andreas Svee
bcbc0ec164
feat(client): track and handle late replies after timeout
2026-05-01 10:05:52 +07:00
Nils Andreas Svee
e2be6cadac
feat(client): implement SignedDuration for precise RTT tracking
2026-05-01 10:05:52 +07:00
Nils Andreas Svee
18f15f16d5
feat(client): record and report packet size in client events
2026-05-01 10:05:43 +07:00
Nils Andreas Svee
c23db87d7c
docs: add IRTT statistics behavioral specification
...
Define a clean-room specification for IRTT client result semantics to ensure upstream compatibility for irtt-rs.
2026-04-30 00:30:14 +07:00
Nils Andreas Svee
63f01f65bf
refactor(managed): ensure event hub disconnection on all exit paths
...
Wrap the client execution in a cleanup handler to guarantee that event hub subscriptions are disconnected regardless of whether the session completes successfully or returns an error.
2026-04-29 10:36:16 +07:00
Nils Andreas Svee
ddb2fff7c8
test(managed): improve test reliability and coverage
2026-04-29 01:14:36 +07:00
Nils Andreas Svee
bb7ba20906
feat(managed): implement automatic cancellation on session drop
2026-04-29 01:14:36 +07:00
Nils Andreas Svee
a925dc61f0
feat(managed): automatically unregister dropped event subscriptions
2026-04-29 01:14:36 +07:00
Nils Andreas Svee
e04caaca8d
refactor(managed): rename malformed events to warning_events
2026-04-29 01:14:36 +07:00
Nils Andreas Svee
4cd6da01b6
feat(managed): export managed client modules
2026-04-28 23:34:34 +07:00
Nils Andreas Svee
1f6ce97c3a
feat(managed): implement managed client runner
2026-04-28 23:34:34 +07:00
Nils Andreas Svee
2f3d3ed87d
feat(managed): implement event hub for pub/sub communication
2026-04-28 23:34:34 +07:00
Nils Andreas Svee
b83674880c
feat(managed): implement thread-safe cancellation token
2026-04-28 23:34:34 +07:00
Nils Andreas Svee
90e7239157
feat(error): introduce worker panic and subscription disconnection errors
2026-04-28 23:34:34 +07:00
Nils Andreas Svee
2f3d92ad2b
feat(client): add run status and packet count helpers
2026-04-28 23:34:34 +07:00