Skip to content

Commit 3d57efa

Browse files
authored
Merge pull request #51 from roy-t/feature/issue-50
Add test case for #50
2 parents 866fffe + 08bf23c commit 3d57efa

File tree

4 files changed

+41
-3
lines changed

4 files changed

+41
-3
lines changed

Roy-T.AStar.Benchmark/Roy-T.AStar.Benchmark.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>netcoreapp3.0</TargetFramework>
5+
<TargetFramework>net8.0</TargetFramework>
66
<RootNamespace>Roy_T.AStar.Benchmark</RootNamespace>
77
</PropertyGroup>
88

Roy-T.AStar.Tests/PathFinderTests.cs

+38
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using NUnit.Framework;
22
using Roy_T.AStar.Graphs;
3+
using Roy_T.AStar.Grids;
34
using Roy_T.AStar.Paths;
45
using Roy_T.AStar.Primitives;
56

@@ -14,6 +15,43 @@ public PathFinderTests()
1415
this.PathFinder = new PathFinder();
1516
}
1617

18+
19+
[Test]
20+
public void Issue50()
21+
{
22+
var columns = 21;
23+
var rows = 21;
24+
var start = new GridPosition(0, 20);
25+
var end = new GridPosition(16, 2);
26+
27+
var grid = Grid.CreateGridWithLateralAndDiagonalConnections(new GridSize(columns, rows), new Size(Distance.FromMeters(1), Distance.FromMeters(1)), Velocity.FromMetersPerSecond(1.0f));
28+
29+
grid.DisconnectNode(new GridPosition(7, 3));
30+
grid.DisconnectNode(new GridPosition(8, 3));
31+
grid.DisconnectNode(new GridPosition(9, 3));
32+
grid.DisconnectNode(new GridPosition(10, 3));
33+
grid.DisconnectNode(new GridPosition(11, 3));
34+
grid.DisconnectNode(new GridPosition(12, 3));
35+
grid.DisconnectNode(new GridPosition(13, 3));
36+
grid.DisconnectNode(new GridPosition(14, 3));
37+
38+
grid.DisconnectNode(new GridPosition(14, 4));
39+
grid.DisconnectNode(new GridPosition(14, 5));
40+
grid.DisconnectNode(new GridPosition(14, 6));
41+
grid.DisconnectNode(new GridPosition(14, 7));
42+
grid.DisconnectNode(new GridPosition(14, 8));
43+
grid.DisconnectNode(new GridPosition(14, 9));
44+
grid.DisconnectNode(new GridPosition(14, 10));
45+
grid.DisconnectNode(new GridPosition(14, 11));
46+
grid.DisconnectNode(new GridPosition(14, 12));
47+
48+
var pathA = this.PathFinder.FindPath(start, end, grid);
49+
Assert.That(pathA.Edges.Count < 32);
50+
51+
var pathB = this.PathFinder.FindPath(end, start, grid);
52+
Assert.That(pathB.Edges.Count < 32);
53+
}
54+
1755
[Test]
1856
public void ShouldFindPath__StartNodeIsEndNode()
1957
{

Roy-T.AStar.Tests/Roy-T.AStar.Tests.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>netcoreapp3.0</TargetFramework>
4+
<TargetFramework>net8.0</TargetFramework>
55
<RootNamespace>Roy_T.AStar.Tests</RootNamespace>
66

77
<IsPackable>false</IsPackable>

Roy-T.AStar.Viewer/Roy-T.AStar.Viewer.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<OutputType>WinExe</OutputType>
5-
<TargetFramework>netcoreapp3.0</TargetFramework>
5+
<TargetFramework>net8.0-windows7.0</TargetFramework>
66
<RootNamespace>Roy_T.AStar.Viewer</RootNamespace>
77
<UseWPF>true</UseWPF>
88
</PropertyGroup>

0 commit comments

Comments
 (0)