﻿WorkingHours empty (day-based), both tasks whWorkDaysOnly, B = 2 work days, finish-to-start on A with lag in work days.

1. Standard week Mon-Fri, holiday Thu 2026-11-05, A ends Wed
  A: Mon 2026-11-02 00:00:00  ->  ScheduledEnd Thu 2026-11-05 00:00:00
  lag 0:  B starts Fri 2026-11-06   expected Fri 2026-11-06   ok      GetActualEndDateTime(A.ScheduledEnd, 0) = -                         suggested fix: Fri 2026-11-06 ok
  lag 1:  B starts Fri 2026-11-06   expected Mon 2026-11-09   WRONG   GetActualEndDateTime(A.ScheduledEnd, 1) = Fri 2026-11-06 00:00:00   suggested fix: Mon 2026-11-09 ok
  lag 2:  B starts Tue 2026-11-10   expected Tue 2026-11-10   ok      GetActualEndDateTime(A.ScheduledEnd, 2) = Tue 2026-11-10 00:00:00   suggested fix: Tue 2026-11-10 ok
  lag 3:  B starts Wed 2026-11-11   expected Wed 2026-11-11   ok      GetActualEndDateTime(A.ScheduledEnd, 3) = Wed 2026-11-11 00:00:00   suggested fix: Wed 2026-11-11 ok

2. Standard week Mon-Fri, no holiday, A ends Fri (weekend via WorkingDays)
  A: Mon 2026-11-02 00:00:00  ->  ScheduledEnd Sat 2026-11-07 00:00:00
  lag 0:  B starts Mon 2026-11-09   expected Mon 2026-11-09   ok      GetActualEndDateTime(A.ScheduledEnd, 0) = -                         suggested fix: Mon 2026-11-09 ok
  lag 1:  B starts Tue 2026-11-10   expected Tue 2026-11-10   ok      GetActualEndDateTime(A.ScheduledEnd, 1) = Mon 2026-11-09 23:59:59   suggested fix: Tue 2026-11-10 ok
  lag 2:  B starts Wed 2026-11-11   expected Wed 2026-11-11   ok      GetActualEndDateTime(A.ScheduledEnd, 2) = Tue 2026-11-10 23:59:59   suggested fix: Wed 2026-11-11 ok
  lag 3:  B starts Thu 2026-11-12   expected Thu 2026-11-12   ok      GetActualEndDateTime(A.ScheduledEnd, 3) = Wed 2026-11-11 23:59:59   suggested fix: Thu 2026-11-12 ok

3. All seven days in WorkingDays, weekends as holidays, A ends Fri
  A: Mon 2026-11-02 00:00:00  ->  ScheduledEnd Sat 2026-11-07 00:00:00
  lag 0:  B starts Mon 2026-11-09   expected Mon 2026-11-09   ok      GetActualEndDateTime(A.ScheduledEnd, 0) = -                         suggested fix: Mon 2026-11-09 ok
  lag 1:  B starts Mon 2026-11-09   expected Tue 2026-11-10   WRONG   GetActualEndDateTime(A.ScheduledEnd, 1) = Sun 2026-11-08 00:00:00   suggested fix: Tue 2026-11-10 ok
  lag 2:  B starts Mon 2026-11-09   expected Wed 2026-11-11   WRONG   GetActualEndDateTime(A.ScheduledEnd, 2) = Mon 2026-11-09 00:00:00   suggested fix: Wed 2026-11-11 ok
  lag 3:  B starts Tue 2026-11-10   expected Thu 2026-11-12   WRONG   GetActualEndDateTime(A.ScheduledEnd, 3) = Tue 2026-11-10 00:00:00   suggested fix: Thu 2026-11-12 ok

Wrong results: 4 of 12   (with the suggested fix: 0 of 12)
