Files
Omika/tests/Omika.Tests/Observability/TelemetryEventCodesTests.cs
T
2026-10-23 18:46:50 +02:00

31 lines
847 B
C#

using System.Reflection;
using Omika.Core.Observability;
namespace Omika.Tests.Observability;
public class TelemetryEventCodesTests
{
[Fact]
public void AllCodes_AreValid()
{
foreach (EventCode code in GetEventCodes())
{
Assert.True(code.IsValid, $"Le code {code} doit être valide.");
}
}
[Fact]
public void AllCodes_AreUnique()
{
string[] values = GetEventCodes().Select(c => c.Value!).ToArray();
Assert.Equal(values.Length, values.Distinct(StringComparer.Ordinal).Count());
}
private static IEnumerable<EventCode> GetEventCodes() =>
typeof(TelemetryEventCodes)
.GetFields(BindingFlags.Public | BindingFlags.Static)
.Where(f => f.FieldType == typeof(EventCode))
.Select(f => (EventCode)f.GetValue(null)!);
}