chore: rename test project to OpenNest.Tests

Renamed OpenNest.Engine.Tests → OpenNest.Tests (directory, .csproj,
namespaces in all .cs files). Added OpenNest.IO project reference.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-16 00:25:22 -04:00
parent 1757e9e01d
commit 00940d1b6e
5 changed files with 17 additions and 16 deletions
+23
View File
@@ -0,0 +1,23 @@
using OpenNest.CNC;
using OpenNest.CNC.CuttingStrategy;
using OpenNest.Geometry;
using Xunit;
namespace OpenNest.Tests;
public class CuttingResultTests
{
[Fact]
public void CuttingResult_StoresValues()
{
var pgm = new Program();
pgm.Codes.Add(new RapidMove(new Vector(1, 2)));
var point = new Vector(3, 4);
var result = new CuttingResult { Program = pgm, LastCutPoint = point };
Assert.Same(pgm, result.Program);
Assert.Equal(3, result.LastCutPoint.X);
Assert.Equal(4, result.LastCutPoint.Y);
}
}
+29
View File
@@ -0,0 +1,29 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="coverlet.collector" Version="6.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
<PackageReference Include="xunit" Version="2.5.3" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
</ItemGroup>
<ItemGroup>
<Using Include="Xunit" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\OpenNest.Core\OpenNest.Core.csproj" />
<ProjectReference Include="..\OpenNest.Engine\OpenNest.Engine.csproj" />
<ProjectReference Include="..\OpenNest.IO\OpenNest.IO.csproj" />
</ItemGroup>
</Project>
+32
View File
@@ -0,0 +1,32 @@
using OpenNest.CNC;
using OpenNest.Geometry;
using Xunit;
namespace OpenNest.Tests;
public class PartFlagTests
{
[Fact]
public void HasManualLeadIns_DefaultsFalse()
{
var pgm = new Program();
pgm.Codes.Add(new RapidMove(new Vector(0, 0)));
var drawing = new Drawing("test", pgm);
var part = new Part(drawing);
Assert.False(part.HasManualLeadIns);
}
[Fact]
public void HasManualLeadIns_CanBeSet()
{
var pgm = new Program();
pgm.Codes.Add(new RapidMove(new Vector(0, 0)));
var drawing = new Drawing("test", pgm);
var part = new Part(drawing);
part.HasManualLeadIns = true;
Assert.True(part.HasManualLeadIns);
}
}
+27
View File
@@ -0,0 +1,27 @@
using OpenNest.CNC;
using OpenNest.Geometry;
namespace OpenNest.Tests;
internal static class TestHelpers
{
public static Part MakePartAt(double x, double y, double size = 1)
{
var pgm = new Program();
pgm.Codes.Add(new RapidMove(new Vector(0, 0)));
pgm.Codes.Add(new LinearMove(new Vector(size, 0)));
pgm.Codes.Add(new LinearMove(new Vector(size, size)));
pgm.Codes.Add(new LinearMove(new Vector(0, size)));
pgm.Codes.Add(new LinearMove(new Vector(0, 0)));
var drawing = new Drawing("test", pgm);
return new Part(drawing, new Vector(x, y));
}
public static Plate MakePlate(double width = 60, double length = 120, params Part[] parts)
{
var plate = new Plate(width, length);
foreach (var p in parts)
plate.Parts.Add(p);
return plate;
}
}