using XFEEDToolBox.Core.Navigation; using XFEExtension.NetCore.XUnit.Attributes; namespace XFEEDToolBox.Test; [TestFixture] public sealed class NavigationRouteProgressTests { private static NavWaypoint Point(long id)=>new(id,"System "+id,new(id,0,0),"K"); private static NavigationJournalState At(long current,params long[] route)=>new(){CurrentSystemAddress=current,Route=route.Select(Point).ToArray()}; [Test]public void ConsumedHopsAndTheFinalSingleWaypointRemainTheSameItinerary() { long[] original=[1,2,3,4]; foreach(var state in new[]{At(1,1,2,3,4),At(1,2,3,4),At(2,2,3,4),At(2,3,4),At(3,4),At(4,4)}) Check.That(NavigationRouteProgress.SameItinerary(original,state)); } [Test]public void CancellationSkippingUnvisitedHopsAndDifferentDestinationsStillStop() { long[] original=[1,2,3,4]; foreach(var state in new[]{At(1),At(2),At(1,3,4),At(1,2,4),At(2,3,99),At(2,4,3),At(99,3,4)}) Check.That(!NavigationRouteProgress.SameItinerary(original,state)); } }