mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 07:13:12 +00:00
Expand LifecycleStatus (EnRoute, OnSite, Rescheduled, Pending, PendingQuote) and WorkOrderType (Reactive, AddOn) to match the frontend prototype. Add FE label round-trip via LifecycleStatusMapper/WorkOrderTypeMapper, update derived fields, mutation rules and board unscheduled filter, and reactivate [Authorize] on WorkOrderController. Fix pre-existing dayGroup test expectation.
49 lines
1.8 KiB
C#
49 lines
1.8 KiB
C#
using Data.SeaHavenIndustries.Enums;
|
|
using SeaHaven.Services.Helpers;
|
|
|
|
namespace SeaHavenIndustries.Tests;
|
|
|
|
public class LifecycleStatusMapperTests
|
|
{
|
|
[Theory]
|
|
[InlineData("Open", LifecycleStatus.Incomplete)]
|
|
[InlineData("InProgress", LifecycleStatus.InProgress)]
|
|
[InlineData("In Progress", LifecycleStatus.InProgress)]
|
|
[InlineData("Completed", LifecycleStatus.Completed)]
|
|
[InlineData("Cancelled", LifecycleStatus.Canceled)]
|
|
[InlineData("On Hold", LifecycleStatus.Pending)]
|
|
[InlineData("Scheduled", LifecycleStatus.Scheduled)]
|
|
public void FromLegacyStatus_MapsKnownValues(string input, LifecycleStatus expected)
|
|
{
|
|
var result = LifecycleStatusMapper.FromLegacyStatus(input);
|
|
Assert.Equal(expected, result);
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData("Incomplete", LifecycleStatus.Incomplete)]
|
|
[InlineData("En Route", LifecycleStatus.EnRoute)]
|
|
[InlineData("On Site", LifecycleStatus.OnSite)]
|
|
[InlineData("Rescheduled", LifecycleStatus.Rescheduled)]
|
|
[InlineData("Pending Quote", LifecycleStatus.PendingQuote)]
|
|
public void ParseLifecycleStatus_MapsFeLabels(string input, LifecycleStatus expected)
|
|
{
|
|
var result = LifecycleStatusMapper.ParseLifecycleStatus(input);
|
|
Assert.Equal(expected, result);
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData(LifecycleStatus.EnRoute, "En Route")]
|
|
[InlineData(LifecycleStatus.OnSite, "On Site")]
|
|
[InlineData(LifecycleStatus.PendingQuote, "Pending Quote")]
|
|
public void ToFeLabel_ReturnsFrontendLabels(LifecycleStatus status, string expected)
|
|
{
|
|
Assert.Equal(expected, LifecycleStatusMapper.ToFeLabel(status));
|
|
}
|
|
|
|
[Fact]
|
|
public void FromLegacyStatus_Unknown_ReturnsNull()
|
|
{
|
|
var result = LifecycleStatusMapper.FromLegacyStatus("MysteryStatus");
|
|
Assert.Null(result);
|
|
}
|
|
}
|