[abcip] AbCip — LINT/ULINT 64-bit fidelity #317

Merged
dohertj2 merged 1 commits from auto/abcip/1.1 into auto/driver-gaps 2026-04-25 12:47:19 -04:00
Owner

Summary

Routes Logix LINT / ULINT / DT through the 64-bit DriverDataType members instead of being flattened to Int32.

  • AbCipDataType.cs: LInt → Int64, ULInt → UInt64, Dt → Int64 (Logix v32+ DT is LINT epoch-millis, not DINT epoch-seconds). Removed the TODO.
  • LibplctagTagRuntime.cs: Dt decode/encode switched to GetInt64/SetInt64 to match.
  • Test extended in AbCipDriverTests.cs to lock in the mapping.

DriverDataType already exposes Int64 and UInt64, so no Core.Abstractions edit and no exhaustiveness fallout in other drivers.

Test plan

  • dotnet build src/ZB.MOM.WW.OtOpcUa.Driver.AbCip/ZB.MOM.WW.OtOpcUa.Driver.AbCip.csproj — clean (0 warn / 0 err)
  • dotnet test tests/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Tests233 / 233 passed
  • dotnet test tests/ZB.MOM.WW.OtOpcUa.Core.Abstractions.Tests37 / 37 passed
  • Integration tests (require live PLC) — skipped per Mode-B policy

Note

: solution-level build hits a pre-existing NU1902 warning-as-error on OpenTelemetry.Api 1.15.2 in the Admin project, unrelated to this PR.

🤖 Auto-generated by the Mode-B execution loop. Closes #225.

Closes #225

## Summary Routes Logix LINT / ULINT / DT through the 64-bit `DriverDataType` members instead of being flattened to Int32. - `AbCipDataType.cs`: `LInt → Int64`, `ULInt → UInt64`, `Dt → Int64` (Logix v32+ DT is LINT epoch-millis, not DINT epoch-seconds). Removed the TODO. - `LibplctagTagRuntime.cs`: `Dt` decode/encode switched to `GetInt64`/`SetInt64` to match. - Test extended in `AbCipDriverTests.cs` to lock in the mapping. `DriverDataType` already exposes `Int64` and `UInt64`, so no Core.Abstractions edit and no exhaustiveness fallout in other drivers. ## Test plan - [x] `dotnet build src/ZB.MOM.WW.OtOpcUa.Driver.AbCip/ZB.MOM.WW.OtOpcUa.Driver.AbCip.csproj` — clean (0 warn / 0 err) - [x] `dotnet test tests/ZB.MOM.WW.OtOpcUa.Driver.AbCip.Tests` — **233 / 233 passed** - [x] `dotnet test tests/ZB.MOM.WW.OtOpcUa.Core.Abstractions.Tests` — **37 / 37 passed** - [ ] Integration tests (require live PLC) — skipped per Mode-B policy > **Note**: solution-level build hits a pre-existing `NU1902` warning-as-error on `OpenTelemetry.Api 1.15.2` in the Admin project, unrelated to this PR. 🤖 Auto-generated by the Mode-B execution loop. Closes #225. Closes #225
dohertj2 added 1 commit 2026-04-25 12:47:14 -04:00
dohertj2 merged commit 1d9e40236b into auto/driver-gaps 2026-04-25 12:47:19 -04:00
dohertj2 deleted branch auto/abcip/1.1 2026-04-25 12:47:19 -04:00
Sign in to join this conversation.