5dplomacy/MultiversalDiplomacyTests/UnitTests.cs

38 lines
1.4 KiB
C#
Raw Normal View History

2022-02-18 20:13:23 +00:00
using MultiversalDiplomacy.Model;
using NUnit.Framework;
namespace MultiversalDiplomacyTests;
public class UnitTests
{
[Test]
public void MovementTest()
{
World world = World.WithStandardMap();
Location Mun = world.Map.GetLand("Mun"),
Boh = world.Map.GetLand("Boh"),
Tyr = world.Map.GetLand("Tyr");
Power pw1 = world.Map.GetPower("Austria");
Season a0 = world.RootSeason;
Unit u1 = Unit.Build(Mun, a0, pw1, UnitType.Army);
2022-02-18 20:13:23 +00:00
world = world.ContinueOrFork(a0, out Season a1);
Unit u2 = u1.Next(Boh, a1);
2022-02-18 20:13:23 +00:00
_ = world.ContinueOrFork(a1, out Season a2);
Unit u3 = u2.Next(Tyr, a2);
2022-02-18 20:13:23 +00:00
Assert.That(u3.Past, Is.EqualTo(u2), "Missing unit past");
Assert.That(u2.Past, Is.EqualTo(u1), "Missing unit past");
Assert.That(u1.Past, Is.Null, "Unexpected unit past");
Assert.That(u1.Season, Is.EqualTo(a0), "Unexpected unit season");
Assert.That(u2.Season, Is.EqualTo(a1), "Unexpected unit season");
Assert.That(u3.Season, Is.EqualTo(a2), "Unexpected unit season");
2022-02-18 20:13:23 +00:00
Assert.That(u1.LocationId, Is.EqualTo(Mun.Designation), "Unexpected unit location");
Assert.That(u2.LocationId, Is.EqualTo(Boh.Designation), "Unexpected unit location");
Assert.That(u3.LocationId, Is.EqualTo(Tyr.Designation), "Unexpected unit location");
2022-02-18 20:13:23 +00:00
}
}