test: repair SDK status oracle and remove duplicate payload cases
This commit is contained in:
@@ -47,9 +47,18 @@ public sealed class StatusCodeParityTests
|
||||
/// <summary>Every <c>Opc.Ua.StatusCodes</c> member, by name — the oracle this test checks against.</summary>
|
||||
private static readonly IReadOnlyDictionary<string, uint> SdkStatusCodes =
|
||||
typeof(Opc.Ua.StatusCodes)
|
||||
.GetProperties(BindingFlags.Public | BindingFlags.Static)
|
||||
.Where(p => p.PropertyType == typeof(Opc.Ua.StatusCode))
|
||||
.ToDictionary(p => p.Name, p => ((Opc.Ua.StatusCode)p.GetValue(null)!).Code, StringComparer.Ordinal);
|
||||
.GetFields(BindingFlags.Public | BindingFlags.Static)
|
||||
.Where(f => f.FieldType == typeof(Opc.Ua.StatusCode))
|
||||
.ToDictionary(f => f.Name, f => ((Opc.Ua.StatusCode)f.GetValue(null)!).Code, StringComparer.Ordinal);
|
||||
|
||||
[Fact]
|
||||
public void SDK_oracle_contains_all_status_severities()
|
||||
{
|
||||
SdkStatusCodes.Count.ShouldBeGreaterThan(200);
|
||||
SdkStatusCodes["Good"].ShouldBe(0u);
|
||||
SdkStatusCodes["Uncertain"].ShouldBe(0x40000000u);
|
||||
SdkStatusCodes["Bad"].ShouldBe(0x80000000u);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Every status-shaped <c>const uint</c> declared anywhere in the deployed driver assemblies, as
|
||||
|
||||
Reference in New Issue
Block a user