Repo-wide sweep with the pinned CSharpier 1.3.0 tool. Whitespace and line-wrapping only; OpenNest.Engine.Tests (109) and OpenNest.IO.Tests pass after reformat, full solution builds 0 errors. Added .csharpierignore so csproj/config XML keeps its existing layout (CSharpier's XML wrapping churns attributes with zero benefit). Formatting is now enforceable: dotnet csharpier check . passes.
38 lines
867 B
C#
38 lines
867 B
C#
using OpenNest.Shapes;
|
|
|
|
namespace OpenNest.Tests.Shapes;
|
|
|
|
public class TrapezoidShapeTests
|
|
{
|
|
[Fact]
|
|
public void GetDrawing_BoundingBoxMatchesDimensions()
|
|
{
|
|
var shape = new TrapezoidShape
|
|
{
|
|
BottomWidth = 20,
|
|
TopWidth = 10,
|
|
Height = 8,
|
|
};
|
|
var drawing = shape.GetDrawing();
|
|
|
|
var bbox = drawing.Program.BoundingBox();
|
|
Assert.Equal(20, bbox.Length, 0.01);
|
|
Assert.Equal(8, bbox.Width, 0.01);
|
|
}
|
|
|
|
[Fact]
|
|
public void GetDrawing_AreaIsCorrect()
|
|
{
|
|
var shape = new TrapezoidShape
|
|
{
|
|
BottomWidth = 20,
|
|
TopWidth = 10,
|
|
Height = 8,
|
|
};
|
|
var drawing = shape.GetDrawing();
|
|
|
|
// Area = (top + bottom) / 2 * height = (10 + 20) / 2 * 8 = 120
|
|
Assert.Equal(120, drawing.Area, 0.5);
|
|
}
|
|
}
|