PASSED
70 passed, 0 failed, 70 total
| Result | Test |
|---|---|
| No individual test rows were parsed. See raw output. | |
(0 rows affected) Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 16:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 16:00:00.000 2026-05-01 18:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 16:00:00.000 1 2026-05-01 08:00:00.000 2026-05-01 16:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 16:00:00.000 2026-05-01 18:00:00.000 1 2026-05-01 16:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 16:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 16:00:00.000 2026-05-01 18:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 NULL NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 NULL 1 2026-05-01 06:00:00.000 NULL NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 16:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 16:00:00.000 2026-05-01 18:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 18:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 999 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 999 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 broken thing alice 2026-05-01 11:00:00.000 5 2 1 0 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 broken thing alice 2026-05-01 11:00:00.000 5 2 1 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 NULL NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 16:00:00.000 1 2026-05-01 06:00:00.000 NULL NULL NULL NULL NULL NULL 0 0 1 2026-05-01 16:00:00.000 2026-05-02 00:00:00.000 1 2026-05-01 06:00:00.000 NULL NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 02:00:00.000 2026-05-01 06:00:00.000 1 2026-05-01 02:00:00.000 2026-05-01 06:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 Start End OriginalDelayId OriginalStart OriginalEnd Comments JustifiedByUser JustifiedDatetime DelayCodeId DelayCategoryId IsDelayManual IsMicroDelay AssetId ----------------------- ----------------------- --------------- ----------------------- ----------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- ----------------------- ----------- --------------- ------------- ------------ ----------- 2026-05-01 06:00:00.000 2026-05-01 08:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 2026-05-01 08:00:00.000 2026-05-01 10:00:00.000 1 2026-05-01 06:00:00.000 2026-05-01 10:00:00.000 NULL NULL NULL NULL NULL 0 0 1 +----------------------+ |Test Execution Summary| +----------------------+ |No|Test Case Name |Dur(ms)|Result | +--+-----------------------------------------------------------------------------------------------------------+-------+-------+ |1 |[DEL_GetDelay_Tests].[test IsDelayManual is aliased as IsManual for manual delay] | 66|Success| |2 |[DEL_GetDelay_Tests].[test returns delay row when DelayId exists] | 1133|Success| |3 |[DEL_GetDelay_Tests].[test returns empty result set when DelayId does not exist] | 70|Success| |4 |[DEL_GetDelay_Tests].[test returns NULL End for active delay] | 86|Success| |5 |[DEL_GetDelay_Tests].[test returns NULL justification fields for unjustified delay] | 49|Success| |6 |[DEL_GetDelay_Tests].[test returns only matching delay when multiple delays exist] | 107|Success| |7 |[DEL_GetDelay_Tests].[test returns split delay original fields] | 66|Success| |8 |[DEL_SpliceDelaysByShiftJob_Tests].[test assigns ShiftId via GetShiftId for new slices] | 66|Success| |9 |[DEL_SpliceDelaysByShiftJob_Tests].[test closes open delay at boundary for past shifts] | 57|Success| |10|[DEL_SpliceDelaysByShiftJob_Tests].[test does not modify delay contained in one shift] | 70|Success| |11|[DEL_SpliceDelaysByShiftJob_Tests].[test handles delay starting on shift boundary] | 66|Success| |12|[DEL_SpliceDelaysByShiftJob_Tests].[test ignores delays before DaysBack window] | 57|Success| |13|[DEL_SpliceDelaysByShiftJob_Tests].[test ignores delays starting after End parameter] | 69|Success| |14|[DEL_SpliceDelaysByShiftJob_Tests].[test is idempotent on second run] | 115|Success| |15|[DEL_SpliceDelaysByShiftJob_Tests].[test keeps open delay open in current shift] | 70|Success| |16|[DEL_SpliceDelaysByShiftJob_Tests].[test marks slice non-micro when longer than MinDelayTime] | 70|Success| |17|[DEL_SpliceDelaysByShiftJob_Tests].[test NULL AssetId processes only Caster EAF LMF] | 86|Success| |18|[DEL_SpliceDelaysByShiftJob_Tests].[test preserves OriginalDelayId when re-splicing] | 65|Success| |19|[DEL_SpliceDelaysByShiftJob_Tests].[test propagates justification and metadata to new slices] | 82|Success| |20|[DEL_SpliceDelaysByShiftJob_Tests].[test sets OriginalDelayId to self for first splice] | 62|Success| |21|[DEL_SpliceDelaysByShiftJob_Tests].[test splits delay crossing multiple shift boundaries] | 77|Success| |22|[DEL_SpliceDelaysByShiftJob_Tests].[test splits delay crossing one shift boundary] | 131|Success| |23|[DEL_SpliceDelaysByShiftJob_Tests].[test throws when AssetId does not exist] | 41|Success| |24|[DEL_UpsertDelayCategory_Tests].[test insert ignores @IsActive parameter] | 49|Success| |25|[DEL_UpsertDelayCategory_Tests].[test insert with name colliding inactive sibling succeeds] | 54|Success| |26|[DEL_UpsertDelayCategory_Tests].[test insert with same name in different area succeeds] | 49|Success| |27|[DEL_UpsertDelayCategory_Tests].[test insert writes Name Color and DelayAreaAssetId] | 45|Success| |28|[DEL_UpsertDelayCategory_Tests].[test successful insert does not call WriteLog] | 37|Success| |29|[DEL_UpsertDelayCategory_Tests].[test successful update calls WriteLog once] | 49|Success| |30|[DEL_UpsertDelayCategory_Tests].[test throws 50000 when name collides with active sibling in same area] | 45|Success| |31|[DEL_UpsertDelayCategory_Tests].[test throws 51001 when both DelayAreaAssetId and DelayCategoryId are NULL]| 33|Success| |32|[DEL_UpsertDelayCategory_Tests].[test throws 51002 when DelayAreaAssetId is not a delay area] | 45|Success| |33|[DEL_UpsertDelayCategory_Tests].[test throws 51002 when update reparents to a non-delay-area asset] | 98|Success| |34|[DEL_UpsertDelayCategory_Tests].[test throws 51004 when DelayCategoryName is NULL] | 37|Success| |35|[DEL_UpsertDelayCategory_Tests].[test throws 51005 when DelayCategoryColor is NULL] | 37|Success| |36|[DEL_UpsertDelayCategory_Tests].[test throws 51006 when DelayCategoryId does not exist] | 107|Success| |37|[DEL_UpsertDelayCategory_Tests].[test update inherits DelayAreaAssetId from existing row when NULL] | 50|Success| |38|[DEL_UpsertDelayCategory_Tests].[test update reparents category to new DelayAreaAssetId] | 53|Success| |39|[DEL_UpsertDelayCategory_Tests].[test update toggles IsActive] | 54|Success| |40|[DEL_UpsertDelayCategory_Tests].[test update with same name as self does not throw 50000] | 94|Success| |41|[DEL_UpsertDelayCategory_Tests].[test update writes new DelayCategoryColor] | 57|Success| |42|[DEL_UpsertDelayCategory_Tests].[test update writes new DelayCategoryName] | 54|Success| |43|[DEL_UpsertManualDelay_Tests].[test insert open delay leaves End NULL] | 95|Success| |44|[DEL_UpsertManualDelay_Tests].[test insert throws 51301 when AssetId is NULL] | 58|Success| |45|[DEL_UpsertManualDelay_Tests].[test insert throws 51302 when Start is NULL] | 57|Success| |46|[DEL_UpsertManualDelay_Tests].[test insert throws 51303 when an open delay precedes Start] | 70|Success| |47|[DEL_UpsertManualDelay_Tests].[test insert throws 51304 when End is before Start] | 115|Success| |48|[DEL_UpsertManualDelay_Tests].[test insert throws 51305 when range collides with existing delay] | 58|Success| |49|[DEL_UpsertManualDelay_Tests].[test insert throws 51306 when End is NULL and a later delay exists] | 70|Success| |50|[DEL_UpsertManualDelay_Tests].[test insert with code stamps JustifiedByUser and JustifiedDatetime] | 86|Success| |51|[DEL_UpsertManualDelay_Tests].[test insert with End sets IsDelayManual IsMicroDelay and ShiftId] | 87|Success| |52|[DEL_UpsertManualDelay_Tests].[test insert without code or category leaves Justified fields NULL] | 103|Success| |53|[DEL_UpsertManualDelay_Tests].[test NULL skips Code and Category existence check] | 82|Success| |54|[DEL_UpsertManualDelay_Tests].[test sentinel -1 skips Code and Category existence check] | 95|Success| |55|[DEL_UpsertManualDelay_Tests].[test throws 51309 when DelayCategoryId does not exist] | 95|Success| |56|[DEL_UpsertManualDelay_Tests].[test throws 51309 when DelayCodeId does not exist] | 145|Success| |57|[DEL_UpsertManualDelay_Tests].[test throws 51310 when no shift exists for Start] | 70|Success| |58|[DEL_UpsertManualDelay_Tests].[test update changing code re-stamps Justified fields] | 131|Success| |59|[DEL_UpsertManualDelay_Tests].[test update inherits current Start when @Start is NULL] | 82|Success| |60|[DEL_UpsertManualDelay_Tests].[test update throws 51307 when DelayId does not exist] | 84|Success| |61|[DEL_UpsertManualDelay_Tests].[test update throws 51308 when delay is not manual] | 57|Success| |62|[DEL_UpsertManualDelay_Tests].[test update throws 51311 when an open delay precedes Start] | 66|Success| |63|[DEL_UpsertManualDelay_Tests].[test update throws 51312 when inherited End is before new Start] | 137|Success| |64|[DEL_UpsertManualDelay_Tests].[test update with non-NULL Comments overwrites] | 172|Success| |65|[DEL_UpsertManualDelay_Tests].[test update with NULL Comments keeps existing] | 115|Success| |66|[DEL_UpsertManualDelay_Tests].[test update with NULL wipes code] | 161|Success| |67|[DEL_UpsertManualDelay_Tests].[test update with same code does not re-stamp Justified fields] | 156|Success| |68|[DEL_UpsertManualDelay_Tests].[test update with sentinel -1 keeps current code] | 152|Success| |69|[DEL_UpsertManualDelay_Tests].[test update with sentinel -1 on code does not re-stamp Justified fields] | 147|Success| |70|[DEL_UpsertManualDelay_Tests].[test update writes new Start End and recomputes ShiftId] | 90|Success| ------------------------------------------------------------------------------------------ Test Case Summary: 70 test case(s) executed, 70 succeeded, 0 skipped, 0 failed, 0 errored. ------------------------------------------------------------------------------------------