37 lines
1.1 KiB
C#
37 lines
1.1 KiB
C#
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");
|
|
}
|
|
}
|