Files
StandardSence/StandardScene.Magnetic.Tests/Tasking/Fass2ActionResolverTests.cs
T

48 lines
1.4 KiB
C#
Raw Normal View History

2026-08-26 23:04:58 +08:00
using StandardScene.Magnetic.Protocol;
using StandardScene.Magnetic.Tasking;
using Xunit;
namespace StandardScene.Magnetic.Tests.Tasking
{
public class Fass2ActionResolverTests
{
[Fact]
public void PassWithLift_IsNotCompleteUntilMechanismMatches()
{
var expected = new Fass2NodeMessage
{
Node = 3,
StartStop = Fass2TaskBuilder.StartStopPass,
Lift = 1
};
var actual = new Fass2NodeMessage
{
Node = 3,
StartStop = Fass2TaskBuilder.StartStopPass,
Lift = 0
};
Assert.True(Fass2ActionResolver.RequiresActionWait(expected));
Assert.False(Fass2ActionResolver.IsStationActionComplete(expected, actual, vehicleState: 2));
}
[Fact]
public void PlainPass_CompletesWithoutMechanism()
{
var expected = new Fass2NodeMessage
{
Node = 3,
StartStop = Fass2TaskBuilder.StartStopPass
};
var actual = new Fass2NodeMessage
{
Node = 3,
StartStop = Fass2TaskBuilder.StartStopPass
};
Assert.False(Fass2ActionResolver.RequiresActionWait(expected));
Assert.True(Fass2ActionResolver.IsStationActionComplete(expected, actual, vehicleState: 2));
}
}
}