19 lines
694 B
C#
19 lines
694 B
C#
using System.Text.Json;
|
|
|
|
namespace NATS.Server.Tests.Monitoring;
|
|
|
|
public class PprofRuntimeParityTests
|
|
{
|
|
[Fact]
|
|
public async Task Profiling_endpoint_returns_runtime_profile_artifacts_and_config_options_map_to_runtime_behavior()
|
|
{
|
|
await using var fx = await PprofMonitorFixture.StartWithProfilingAsync();
|
|
var payload = await fx.GetBytesAsync("/debug/pprof/profile?seconds=2");
|
|
var doc = JsonDocument.Parse(payload);
|
|
|
|
doc.RootElement.GetProperty("profile").GetString().ShouldBe("cpu");
|
|
doc.RootElement.GetProperty("seconds").GetInt32().ShouldBe(2);
|
|
doc.RootElement.GetProperty("thread_count").GetInt32().ShouldBeGreaterThan(0);
|
|
}
|
|
}
|