feat: add Varz and Connz monitoring JSON models with Go field name parity
This commit is contained in:
51
tests/NATS.Server.Tests/MonitorModelTests.cs
Normal file
51
tests/NATS.Server.Tests/MonitorModelTests.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using System.Text.Json;
|
||||
using NATS.Server.Monitoring;
|
||||
|
||||
namespace NATS.Server.Tests;
|
||||
|
||||
public class MonitorModelTests
|
||||
{
|
||||
[Fact]
|
||||
public void Varz_serializes_with_go_field_names()
|
||||
{
|
||||
var varz = new Varz
|
||||
{
|
||||
Id = "TESTID", Name = "test-server", Version = "0.1.0",
|
||||
Host = "0.0.0.0", Port = 4222, InMsgs = 100, OutMsgs = 200,
|
||||
};
|
||||
var json = JsonSerializer.Serialize(varz);
|
||||
json.ShouldContain("\"server_id\":");
|
||||
json.ShouldContain("\"server_name\":");
|
||||
json.ShouldContain("\"in_msgs\":");
|
||||
json.ShouldContain("\"out_msgs\":");
|
||||
json.ShouldNotContain("\"InMsgs\"");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Connz_serializes_with_go_field_names()
|
||||
{
|
||||
var connz = new Connz
|
||||
{
|
||||
Id = "TESTID", Now = DateTime.UtcNow, NumConns = 1, Total = 1, Limit = 1024,
|
||||
Conns = [new ConnInfo { Cid = 1, Ip = "127.0.0.1", Port = 5555,
|
||||
InMsgs = 10, Uptime = "1s", Idle = "0s",
|
||||
Start = DateTime.UtcNow, LastActivity = DateTime.UtcNow }],
|
||||
};
|
||||
var json = JsonSerializer.Serialize(connz);
|
||||
json.ShouldContain("\"server_id\":");
|
||||
json.ShouldContain("\"num_connections\":");
|
||||
json.ShouldContain("\"in_msgs\":");
|
||||
json.ShouldContain("\"pending_bytes\":");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Varz_includes_nested_config_stubs()
|
||||
{
|
||||
var varz = new Varz { Id = "X", Name = "X", Version = "X", Host = "X" };
|
||||
var json = JsonSerializer.Serialize(varz);
|
||||
json.ShouldContain("\"cluster\":");
|
||||
json.ShouldContain("\"gateway\":");
|
||||
json.ShouldContain("\"leaf\":");
|
||||
json.ShouldContain("\"jetstream\":");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user