namespace ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests;
///
/// Shared xUnit Skip reason constants for OpcUaServer tests whose intent is retained but
/// whose subject is not materialized in the v3 Batch-1 DARK address space. The composer
/// () and the artifact both emit an EMPTY equipment-tag
/// variable plan set this batch — raw + UNS variable nodes are lit up in Batch 4's dual-namespace
/// UNS↔Raw fan-out. Until then any assertion whose subject is an equipment-tag variable node (its
/// FullName, its {{equip}}-token-derived base, its device-host binding) has nothing to
/// compare, so it is Skipped-with-reason rather than deleted. Mirrors
/// Runtime.Tests.Drivers.DarkAddressSpaceReasons.
///
internal static class DarkAddressSpaceReasons
{
///
/// Equipment-tag variable materialization + its per-field intent (FullName / array / historize /
/// native-alarm / {{equip}}-token base derived from child-tag FullNames) is dark until Batch 4.
///
public const string EquipmentTagsDarkBatch4 =
"v3 dark address space: equipment-tag variable plans (FullName / array / historize / alarm / " +
"{{equip}}-token base derived from child-tag FullNames) do not materialize until Batch 4 " +
"(dual-namespace UNS↔Raw fan-out). The composer emits an empty equipment-tag plan set this batch, " +
"so there is no per-equipment tag base to substitute and no equipment-tag variable node to assert. " +
"Migrate + re-enable when Batch 4 lights the raw/UNS variable nodes.";
/// Equipment↔device host binding is architecturally retired in v3.
public const string EquipmentDeviceBindingRetired =
"v3: equipment no longer binds a driver/device — Equipment lost DriverInstanceId/DeviceId and " +
"Compose no longer takes a devices list, so EquipmentNode's DriverInstanceId/DeviceId/DeviceHost " +
"projection is always null. Equipment references raw tags via UnsTagReference. The device-endpoint " +
"merge this suite characterized now lives in Runtime.Tests DeploymentArtifactRawPathTests; the " +
"host-extraction unit is Commons.Tests DeviceConfigIntentTests.";
}