Files
natsdotnet/tests.md
Joseph Doherty 88a82ee860 docs: add XML doc comments to server types and fix flaky test timings
Add XML doc comments to public properties across EventTypes, Connz, Varz,
NatsOptions, StreamConfig, IStreamStore, FileStore, MqttListener,
MqttSessionStore, MessageTraceContext, and JetStreamApiResponse. Fix flaky
tests by increasing timing margins (ResponseTracker expiry 1ms→50ms,
sleep 50ms→200ms) and document known flaky test patterns in tests.md.
2026-03-13 18:47:48 -04:00

51 lines
2.6 KiB
Markdown

# Test Status
## Failing Tests
No known failing tests.
## Flaky Tests
No known flaky tests.
### Medium — May fail on very slow systems or under extreme CI load
| Test | File | Root Cause |
|------|------|------------|
| Route/Gateway/LeafNode propagation tests (20+ tests) | `RouteGoParityTests.cs`, `GatewayGoParityTests.cs`, `LeafNodeGoParityTests.cs` etc. | `await Task.Delay(50)` polling loops waiting for subscription/route propagation. Timeout can be exceeded under extreme load. |
## Skipped Tests
### NATS.E2E.Tests (3 skipped)
| Test | Reason |
|------|--------|
| `MqttTests.Mqtt_PubSub_SameTopicDelivered` | Superseded by `MqttE2ETests` — text-line protocol incompatible with binary MQTT 3.1.1 server |
| `MqttTests.Mqtt_DifferentTopic_NotDelivered` | Superseded by `MqttE2ETests` — text-line protocol incompatible with binary MQTT 3.1.1 server |
| `MqttTests.Mqtt_Qos1_PubAckReceived_AndDelivered` | Superseded by `MqttE2ETests` — text-line protocol incompatible with binary MQTT 3.1.1 server |
### NATS.Server.Core.Tests (6 skipped)
| Test | Reason |
|------|--------|
| `ClientProtocolGoParityTests.Client_rejects_NRG_subjects_for_non_system_users` | Not yet implemented |
| `ClientProtocolGoParityTests.Header_stripped_for_non_header_subscriber` | Not yet implemented |
| `ClientProtocolGoParityTests.Header_stripped_for_non_header_queue_subscriber` | Not yet implemented |
| `SubjectTreeTests.TestSubjectTreeMatchAllPerf` | Performance-only |
| `SubjectTreeTests.TestSubjectTreeIterPerf` | Performance-only |
| `SubjectTreeTests.TestSubjectTreeGSLIntersection` | Not yet implemented |
### NATS.Server.JetStream.Tests (9 skipped)
| Test | Reason |
|------|--------|
| `MirrorSourceGoParityTests.Mirror_consumer_fails_after_restart_and_recovers` | Requires real server restart with FileStore persistence |
| `MirrorSourceGoParityTests.Remove_external_source_stops_forwarding` | Requires multi-server leaf node topology |
| `MirrorSourceGoParityTests.Work_queue_source_recovers_after_restart` | Requires real server restart |
| `MirrorSourceGoParityTests.Work_queue_source_naming_recovers_after_restart` | Requires real server restart |
| `MirrorSourceGoParityTests.Stream_update_with_external_source_works` | Requires multi-server leaf node topology |
| `FileStoreRecovery2Tests.WriteFailures_FullDisk_SkipEnvironmentSpecific` | Environment-specific (requires Docker tmpfs) |
| `FileStoreRecovery2Tests.PartialIndexes_StoreAndLoadAfterCacheExpiry` | Obsolete in Go upstream |
| `FileStoreRecovery2Tests.WriteFullState_HighSubjectCardinality` | Performance benchmark only |
| `FileStoreRecovery2Tests.Corruption_HbitSanityCheck` | Go-internal wire format (hbit/cbit) |