diff --git a/src/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy/AbLegacyDriver.cs b/src/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy/AbLegacyDriver.cs index acd86ce..4bf1413 100644 --- a/src/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy/AbLegacyDriver.cs +++ b/src/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy/AbLegacyDriver.cs @@ -567,9 +567,9 @@ public sealed class AbLegacyDriver : IDriver, IReadable, IWritable, ITagDiscover /// that a SLC 500 misconfigured without an explicit path still gets the required /// 1,0 backplane route. MicroLogix has an empty default by design (direct EIP). /// - public string EffectiveCipPath => parsedAddress.CipPath.Length > 0 - ? parsedAddress.CipPath - : profile.DefaultCipPath; + public string EffectiveCipPath => ParsedAddress.CipPath.Length > 0 + ? ParsedAddress.CipPath + : Profile.DefaultCipPath; /// /// Per-tag cached runtimes. diff --git a/tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy.Tests/AbLegacyReadWriteTests.cs b/tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy.Tests/AbLegacyReadWriteTests.cs index b71ade6..3804fb4 100644 --- a/tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy.Tests/AbLegacyReadWriteTests.cs +++ b/tests/Drivers/ZB.MOM.WW.OtOpcUa.Driver.AbLegacy.Tests/AbLegacyReadWriteTests.cs @@ -1,3 +1,4 @@ +using libplctag; using Shouldly; using Xunit; using ZB.MOM.WW.OtOpcUa.Core.Abstractions; @@ -65,10 +66,12 @@ public sealed class AbLegacyReadWriteTests [Fact] public async Task NonZero_libplctag_status_maps_via_AbLegacyStatusMapper() { + // Use the real libplctag.Status enum value rather than a raw integer so the test + // stays correct if the wrapper renumbers its ordinals (Driver.AbLegacy-010). var (drv, factory) = NewDriver( new AbLegacyTagDefinition("X", "ab://10.0.0.5/1,0", "N7:0", AbLegacyDataType.Int)); await drv.InitializeAsync("{}", CancellationToken.None); - factory.Customise = p => new FakeAbLegacyTag(p) { Status = -14 }; + factory.Customise = p => new FakeAbLegacyTag(p) { Status = (int)Status.ErrorNotFound }; var snapshots = await drv.ReadAsync(["X"], CancellationToken.None); snapshots.Single().StatusCode.ShouldBe(AbLegacyStatusMapper.BadNodeIdUnknown);