From e50a7c82cf020b9f6619308647b3452629c36195 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Thu, 2 Apr 2026 14:34:56 -0400 Subject: [PATCH] test: skip overlap tests gracefully when DXF fixture missing Co-Authored-By: Claude Opus 4.6 (1M context) --- OpenNest.Tests/Engine/EngineOverlapTests.cs | 8 +++++++- OpenNest.Tests/Strategies/StrategyOverlapTests.cs | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/OpenNest.Tests/Engine/EngineOverlapTests.cs b/OpenNest.Tests/Engine/EngineOverlapTests.cs index cbd2295..0ce14b9 100644 --- a/OpenNest.Tests/Engine/EngineOverlapTests.cs +++ b/OpenNest.Tests/Engine/EngineOverlapTests.cs @@ -15,8 +15,11 @@ public class EngineOverlapTests _output = output; } - private static Drawing ImportDxf() + private static Drawing? ImportDxf() { + if (!System.IO.File.Exists(DxfPath)) + return null; + var importer = new DxfImporter(); importer.GetGeometry(DxfPath, out var geometry); var pgm = ConvertGeometry.ToProgram(geometry); @@ -31,6 +34,9 @@ public class EngineOverlapTests public void FillPlate_NoOverlaps(string engineName) { var drawing = ImportDxf(); + if (drawing is null) + return; // Skip if test DXF not available + var plate = new Plate(60, 120); NestEngineRegistry.ActiveEngineName = engineName; diff --git a/OpenNest.Tests/Strategies/StrategyOverlapTests.cs b/OpenNest.Tests/Strategies/StrategyOverlapTests.cs index a47bf10..b954b5d 100644 --- a/OpenNest.Tests/Strategies/StrategyOverlapTests.cs +++ b/OpenNest.Tests/Strategies/StrategyOverlapTests.cs @@ -18,8 +18,11 @@ public class StrategyOverlapTests _output = output; } - private static Drawing ImportDxf() + private static Drawing? ImportDxf() { + if (!System.IO.File.Exists(DxfPath)) + return null; + var importer = new DxfImporter(); importer.GetGeometry(DxfPath, out var geometry); var pgm = ConvertGeometry.ToProgram(geometry); @@ -30,6 +33,9 @@ public class StrategyOverlapTests public void EachStrategy_CheckOverlaps() { var drawing = ImportDxf(); + if (drawing is null) + return; // Skip if test DXF not available + _output.WriteLine($"Drawing bbox: {drawing.Program.BoundingBox().Width:F2} x {drawing.Program.BoundingBox().Length:F2}"); var strategies = FillStrategyRegistry.Strategies.ToList();