Initial commit: JDE Scoping Tool migration project
Set up repository with legacy .NET Framework 4.8 source (OLD/), new .NET 10 Blazor solution (NEW/), OpenSpec specifications, documentation, and project configuration.
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
using JdeScoping.ExcelIO.Models.Reporting;
|
||||
using Shouldly;
|
||||
using Xunit;
|
||||
|
||||
namespace JdeScoping.ExcelIO.Tests;
|
||||
|
||||
public class InclusionReasonTests
|
||||
{
|
||||
[Fact]
|
||||
public void InclusionReason_ManuallySpecified_ReturnsManuallySpecified()
|
||||
{
|
||||
var result = new SearchResult { ManuallySpecified = true };
|
||||
|
||||
result.InclusionReason.ShouldBe("ManuallySpecified");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_Flagged_ReturnsFlagged()
|
||||
{
|
||||
var result = new SearchResult { Flagged = true };
|
||||
|
||||
result.InclusionReason.ShouldBe("Flagged");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_CardexAndPartsList_ReturnsComponentUsageBoth()
|
||||
{
|
||||
var result = new SearchResult { Cardex = true, PartsList = true };
|
||||
|
||||
result.InclusionReason.ShouldBe("ComponentUsage (CARDEX + Parts List)");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_CardexOnly_ReturnsComponentUsageCardex()
|
||||
{
|
||||
var result = new SearchResult { Cardex = true, PartsList = false };
|
||||
|
||||
result.InclusionReason.ShouldBe("ComponentUsage (CARDEX)");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_PartsListOnly_ReturnsComponentUsagePartsList()
|
||||
{
|
||||
var result = new SearchResult { Cardex = false, PartsList = true };
|
||||
|
||||
result.InclusionReason.ShouldBe("ComponentUsage (Parts List)");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_SplitOrder_ReturnsSplitOrder()
|
||||
{
|
||||
var result = new SearchResult { SplitOrder = true };
|
||||
|
||||
result.InclusionReason.ShouldBe("Split order");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_NoFlags_ReturnsUnknown()
|
||||
{
|
||||
var result = new SearchResult();
|
||||
|
||||
result.InclusionReason.ShouldBe("UNKNOWN");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_ManuallySpecified_TakesPrecedenceOverFlagged()
|
||||
{
|
||||
var result = new SearchResult
|
||||
{
|
||||
ManuallySpecified = true,
|
||||
Flagged = true
|
||||
};
|
||||
|
||||
result.InclusionReason.ShouldBe("ManuallySpecified");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_Flagged_TakesPrecedenceOverCardex()
|
||||
{
|
||||
var result = new SearchResult
|
||||
{
|
||||
Flagged = true,
|
||||
Cardex = true
|
||||
};
|
||||
|
||||
result.InclusionReason.ShouldBe("Flagged");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InclusionReason_Cardex_TakesPrecedenceOverSplitOrder()
|
||||
{
|
||||
var result = new SearchResult
|
||||
{
|
||||
Cardex = true,
|
||||
SplitOrder = true
|
||||
};
|
||||
|
||||
result.InclusionReason.ShouldBe("ComponentUsage (CARDEX)");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user