mirror of
https://github.com/MCCTeam/Minecraft-Console-Client
synced 2026-08-29 13:04:59 +00:00
test: lock short route planner and timing contracts
This commit is contained in:
parent
b9bff02107
commit
ba1dc32ccb
9 changed files with 339 additions and 4 deletions
|
|
@ -1,4 +1,5 @@
|
|||
using MinecraftClient.Pathing.Core;
|
||||
using MinecraftClient.Pathing.Execution;
|
||||
using MinecraftClient.Tests.Pathing.Execution.Contracts;
|
||||
using Xunit;
|
||||
|
||||
|
|
@ -211,4 +212,17 @@ public sealed class PathPlanningContractTests
|
|||
Assert.Contains("sequence-mismatch", error.Message);
|
||||
Assert.Contains("segment 1", error.Message);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("same-move-ascend-staircase")]
|
||||
[InlineData("same-move-descend-staircase")]
|
||||
[InlineData("rejected-3x1-invalid-goal")]
|
||||
public void Scenario_PlannerMatchesContract(string scenarioId)
|
||||
{
|
||||
PathingExecutionScenario scenario = PathingExecutionScenarioCatalog.Get(scenarioId);
|
||||
PathResult planResult = PathingScenarioRunner.PlanOnly(scenario);
|
||||
PathingPlannerContract contract = PathingContractStore.LoadFromRepositoryRoot().GetPlanner(scenarioId);
|
||||
|
||||
PathingContractAssert.PlannerMatches(contract, PathSegmentBuilder.FromPath(planResult.Path), planResult);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue