DotTiled/DotTiled.Tests/Assert/AssertLayer.cs

76 lines
2.3 KiB
C#
Raw Normal View History

2024-07-26 00:37:47 +02:00
namespace DotTiled.Tests;
public static partial class DotTiledAssert
2024-07-26 00:37:47 +02:00
{
internal static void AssertLayer(BaseLayer? expected, BaseLayer? actual)
2024-07-26 00:37:47 +02:00
{
if (expected is null)
{
Assert.Null(actual);
return;
}
// Attributes
Assert.NotNull(actual);
Assert.Equal(expected.ID, actual.ID);
Assert.Equal(expected.Name, actual.Name);
Assert.Equal(expected.Class, actual.Class);
Assert.Equal(expected.Opacity, actual.Opacity);
Assert.Equal(expected.Visible, actual.Visible);
Assert.Equal(expected.TintColor, actual.TintColor);
Assert.Equal(expected.OffsetX, actual.OffsetX);
Assert.Equal(expected.OffsetY, actual.OffsetY);
Assert.Equal(expected.ParallaxX, actual.ParallaxX);
Assert.Equal(expected.ParallaxY, actual.ParallaxY);
AssertProperties(expected.Properties, actual.Properties);
AssertLayer((dynamic)expected, (dynamic)actual);
2024-07-26 00:37:47 +02:00
}
private static void AssertLayer(TileLayer expected, TileLayer actual)
2024-07-26 00:37:47 +02:00
{
// Attributes
Assert.Equal(expected.Width, actual.Width);
Assert.Equal(expected.Height, actual.Height);
Assert.Equal(expected.X, actual.X);
Assert.Equal(expected.Y, actual.Y);
2024-07-26 00:37:47 +02:00
Assert.NotNull(actual.Data);
AssertData(expected.Data, actual.Data);
2024-07-26 00:37:47 +02:00
}
private static void AssertLayer(ObjectLayer expected, ObjectLayer actual)
2024-07-26 00:37:47 +02:00
{
// Attributes
Assert.Equal(expected.DrawOrder, actual.DrawOrder);
Assert.Equal(expected.X, actual.X);
Assert.Equal(expected.Y, actual.Y);
2024-07-26 00:37:47 +02:00
Assert.NotNull(actual.Objects);
Assert.Equal(expected.Objects.Count, actual.Objects.Count);
for (var i = 0; i < expected.Objects.Count; i++)
AssertObject(expected.Objects[i], actual.Objects[i]);
2024-07-26 00:37:47 +02:00
}
private static void AssertLayer(ImageLayer expected, ImageLayer actual)
2024-07-26 00:37:47 +02:00
{
// Attributes
Assert.Equal(expected.RepeatX, actual.RepeatX);
Assert.Equal(expected.RepeatY, actual.RepeatY);
Assert.Equal(expected.X, actual.X);
Assert.Equal(expected.Y, actual.Y);
2024-07-26 00:37:47 +02:00
Assert.NotNull(actual.Image);
AssertImage(expected.Image, actual.Image);
2024-07-26 00:37:47 +02:00
}
private static void AssertLayer(Group expected, Group actual)
{
// Attributes
Assert.NotNull(actual.Layers);
Assert.Equal(expected.Layers.Count, actual.Layers.Count);
for (var i = 0; i < expected.Layers.Count; i++)
AssertLayer(expected.Layers[i], actual.Layers[i]);
}
2024-07-26 00:37:47 +02:00
}