Premiere commit - Omika
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
using Omika.Core.Observability;
|
||||
|
||||
namespace Omika.Tests.Observability;
|
||||
|
||||
public class TelemetryValueTests
|
||||
{
|
||||
private enum SampleEnum
|
||||
{
|
||||
A,
|
||||
B
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void String_IsValid()
|
||||
{
|
||||
TelemetryValue value = "hello";
|
||||
|
||||
Assert.True(value.IsValid);
|
||||
Assert.Equal(TelemetryValueKind.String, value.Kind);
|
||||
Assert.Equal("hello", value.Value);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void NullString_IsInvalid()
|
||||
{
|
||||
TelemetryValue value = (string)null!;
|
||||
|
||||
Assert.False(value.IsValid);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData(double.NaN)]
|
||||
[InlineData(double.PositiveInfinity)]
|
||||
[InlineData(double.NegativeInfinity)]
|
||||
public void NonFiniteDouble_IsInvalid(double number)
|
||||
{
|
||||
TelemetryValue value = number;
|
||||
|
||||
Assert.False(value.IsValid);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SimpleTypes_AreValid()
|
||||
{
|
||||
Assert.True(((TelemetryValue)true).IsValid);
|
||||
Assert.True(((TelemetryValue)42).IsValid);
|
||||
Assert.True(((TelemetryValue)42L).IsValid);
|
||||
Assert.True(((TelemetryValue)1.5).IsValid);
|
||||
Assert.True(((TelemetryValue)Guid.NewGuid()).IsValid);
|
||||
Assert.True(((TelemetryValue)DateTimeOffset.UtcNow).IsValid);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void FromEnum_IsValid_AndStoresName()
|
||||
{
|
||||
TelemetryValue value = TelemetryValue.FromEnum(SampleEnum.B);
|
||||
|
||||
Assert.True(value.IsValid);
|
||||
Assert.Equal(TelemetryValueKind.String, value.Kind);
|
||||
Assert.Equal("B", value.Value);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Default_IsInvalid()
|
||||
{
|
||||
Assert.False(default(TelemetryValue).IsValid);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user