86 lines
2.4 KiB
C#
86 lines
2.4 KiB
C#
using RobotNet10.GlobalPathPlanner.Differential;
|
|
using RobotNet10.GlobalPathPlanner.Forklift;
|
|
using RobotNet10.GlobalPathPlanner.ForkliftV2;
|
|
|
|
namespace RobotNet10.GlobalPathPlanner.UnitTest;
|
|
|
|
public class PathPlannerFactoryTests
|
|
{
|
|
private readonly PathPlannerFactory _factory;
|
|
|
|
public PathPlannerFactoryTests()
|
|
{
|
|
_factory = new PathPlannerFactory();
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateDifferentialPlanner_ShouldReturnDifferentialPlannerInstance()
|
|
{
|
|
// Act
|
|
var planner = _factory.CreateDifferentialPlanner();
|
|
|
|
// Assert
|
|
Assert.NotNull(planner);
|
|
Assert.IsType<DifferentialPlanner>(planner);
|
|
Assert.IsAssignableFrom<IPathPlanner>(planner);
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateForkliftPlanner_ShouldReturnForkliftPathPlannerInstance()
|
|
{
|
|
// Act
|
|
var planner = _factory.CreateForkliftPlanner();
|
|
|
|
// Assert
|
|
Assert.NotNull(planner);
|
|
Assert.IsType<ForkliftPathPlanner>(planner);
|
|
Assert.IsAssignableFrom<IPathPlanner>(planner);
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateForkliftPlannerV2_ShouldReturnForkLiftPathPlannerV2Instance()
|
|
{
|
|
// Act
|
|
var planner = _factory.CreateForkliftPlannerV2();
|
|
|
|
// Assert
|
|
Assert.NotNull(planner);
|
|
Assert.IsType<ForkLiftPathPlannerV2>(planner);
|
|
Assert.IsAssignableFrom<IPathPlanner>(planner);
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateOmniDrivePlanner_ShouldReturnDifferentialPlannerInstance()
|
|
{
|
|
// Act
|
|
var planner = _factory.CreateOmniDrivePlanner();
|
|
|
|
// Assert
|
|
Assert.NotNull(planner);
|
|
Assert.IsType<DifferentialPlanner>(planner);
|
|
Assert.IsAssignableFrom<IPathPlanner>(planner);
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateDifferentialPlanner_ShouldReturnNewInstanceEachTime()
|
|
{
|
|
// Act
|
|
var planner1 = _factory.CreateDifferentialPlanner();
|
|
var planner2 = _factory.CreateDifferentialPlanner();
|
|
|
|
// Assert
|
|
Assert.NotSame(planner1, planner2);
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateForkliftPlanner_ShouldReturnNewInstanceEachTime()
|
|
{
|
|
// Act
|
|
var planner1 = _factory.CreateForkliftPlanner();
|
|
var planner2 = _factory.CreateForkliftPlanner();
|
|
|
|
// Assert
|
|
Assert.NotSame(planner1, planner2);
|
|
}
|
|
}
|