Fix E2E test gaps and add comprehensive E2E + parity test suites
- Fix pull consumer fetch: send original stream subject in HMSG (not inbox) so NATS client distinguishes data messages from control messages - Fix MaxAge expiry: add background timer in StreamManager for periodic pruning - Fix JetStream wire format: Go-compatible anonymous objects with string enums, proper offset-based pagination for stream/consumer list APIs - Add 42 E2E black-box tests (core messaging, auth, TLS, accounts, JetStream) - Add ~1000 parity tests across all subsystems (gaps closure) - Update gap inventory docs to reflect implementation status
This commit is contained in:
@@ -275,4 +275,15 @@ public class ParserTests
|
||||
var ex = await ParseExpectingErrorAsync(input);
|
||||
ex.ShouldBeOfType<ProtocolViolationException>();
|
||||
}
|
||||
|
||||
// Mirrors Go TestParsePubSizeOverflow: oversized decimal payload lengths
|
||||
// must be rejected during PUB argument parsing.
|
||||
// Reference: golang/nats-server/server/parser_test.go TestParsePubSizeOverflow
|
||||
[Fact]
|
||||
public async Task Parse_pub_size_overflow_fails()
|
||||
{
|
||||
var ex = await ParseExpectingErrorAsync("PUB foo 1234567890\r\n");
|
||||
ex.ShouldBeOfType<ProtocolViolationException>();
|
||||
ex.Message.ShouldContain("Invalid payload size");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user