5dplomacy/MultiversalDiplomacyTests/AdjudicatorTests.cs

30 lines
994 B
C#
Raw Normal View History

using MultiversalDiplomacy.Adjudicate;
using MultiversalDiplomacy.Model;
using MultiversalDiplomacy.Orders;
using NUnit.Framework;
namespace MultiversalDiplomacyTests;
public class AdjudicatorTests
{
[Test]
public void OrderValidationTest()
{
2022-03-13 07:15:26 +00:00
IPhaseAdjudicator rubberStamp = new TestAdjudicator((world, orders) =>
{
return orders.Select(o => o.Validate(ValidationReason.Valid)).ToList();
});
2022-03-13 07:15:26 +00:00
World world = World.Empty.WithPowers("Power");
Power power = world.GetPower("Power");
Order order = new NullOrder(power);
List<Order> orders = new List<Order> { order };
2022-03-13 07:15:26 +00:00
IEnumerable<OrderValidation> results = rubberStamp.ValidateOrders(world, orders);
Assert.That(results.Count(), Is.EqualTo(1));
Assert.That(results.First().Order, Is.EqualTo(order));
Assert.That(results.First().Reason, Is.EqualTo(ValidationReason.Valid));
Assert.That(results.First().Valid, Is.True);
}
}