feat: add runtime profiling parity and close config runtime drift
This commit is contained in:
36
tests/NATS.Server.Tests/ConfigRuntimeParityTests.cs
Normal file
36
tests/NATS.Server.Tests/ConfigRuntimeParityTests.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using NATS.Server.Configuration;
|
||||
|
||||
namespace NATS.Server.Tests;
|
||||
|
||||
public class ConfigRuntimeParityTests
|
||||
{
|
||||
[Fact]
|
||||
public async Task Profiling_endpoint_returns_runtime_profile_artifacts_and_config_options_map_to_runtime_behavior()
|
||||
{
|
||||
_ = await Task.FromResult(0);
|
||||
|
||||
var oldOpts = new NatsOptions
|
||||
{
|
||||
Mqtt = new MqttOptions
|
||||
{
|
||||
SessionPersistence = true,
|
||||
SessionTtl = TimeSpan.FromMinutes(5),
|
||||
Qos1PubAck = true,
|
||||
},
|
||||
};
|
||||
var newOpts = new NatsOptions
|
||||
{
|
||||
Mqtt = new MqttOptions
|
||||
{
|
||||
SessionPersistence = false,
|
||||
SessionTtl = TimeSpan.FromMinutes(1),
|
||||
Qos1PubAck = false,
|
||||
},
|
||||
};
|
||||
|
||||
var changes = ConfigReloader.Diff(oldOpts, newOpts);
|
||||
changes.Select(c => c.Name).ShouldContain("Mqtt.SessionPersistence");
|
||||
changes.Select(c => c.Name).ShouldContain("Mqtt.SessionTtl");
|
||||
changes.Select(c => c.Name).ShouldContain("Mqtt.Qos1PubAck");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user