2024-07-26 00:37:47 +02:00
|
|
|
namespace DotTiled.Tests;
|
|
|
|
|
2024-08-03 14:26:09 +02:00
|
|
|
public static partial class DotTiledAssert
|
2024-07-26 00:37:47 +02:00
|
|
|
{
|
2024-08-03 14:26:09 +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);
|
2024-08-12 22:00:59 +02:00
|
|
|
AssertEqual(expected.ID, actual.ID, nameof(BaseLayer.ID));
|
|
|
|
AssertEqual(expected.Name, actual.Name, nameof(BaseLayer.Name));
|
|
|
|
AssertEqual(expected.Class, actual.Class, nameof(BaseLayer.Class));
|
|
|
|
AssertEqual(expected.Opacity, actual.Opacity, nameof(BaseLayer.Opacity));
|
|
|
|
AssertEqual(expected.Visible, actual.Visible, nameof(BaseLayer.Visible));
|
|
|
|
AssertEqual(expected.TintColor, actual.TintColor, nameof(BaseLayer.TintColor));
|
|
|
|
AssertEqual(expected.OffsetX, actual.OffsetX, nameof(BaseLayer.OffsetX));
|
|
|
|
AssertEqual(expected.OffsetY, actual.OffsetY, nameof(BaseLayer.OffsetY));
|
|
|
|
AssertEqual(expected.ParallaxX, actual.ParallaxX, nameof(BaseLayer.ParallaxX));
|
|
|
|
AssertEqual(expected.ParallaxY, actual.ParallaxY, nameof(BaseLayer.ParallaxY));
|
2024-07-26 00:37:47 +02:00
|
|
|
|
2024-08-03 14:26:09 +02:00
|
|
|
AssertProperties(expected.Properties, actual.Properties);
|
|
|
|
AssertLayer((dynamic)expected, (dynamic)actual);
|
2024-07-26 00:37:47 +02:00
|
|
|
}
|
|
|
|
|
2024-08-03 14:26:09 +02:00
|
|
|
private static void AssertLayer(TileLayer expected, TileLayer actual)
|
2024-07-26 00:37:47 +02:00
|
|
|
{
|
|
|
|
// Attributes
|
2024-08-12 22:00:59 +02:00
|
|
|
AssertEqual(expected.Width, actual.Width, nameof(TileLayer.Width));
|
|
|
|
AssertEqual(expected.Height, actual.Height, nameof(TileLayer.Height));
|
|
|
|
AssertEqual(expected.X, actual.X, nameof(TileLayer.X));
|
|
|
|
AssertEqual(expected.Y, actual.Y, nameof(TileLayer.Y));
|
2024-07-26 00:37:47 +02:00
|
|
|
|
|
|
|
Assert.NotNull(actual.Data);
|
2024-08-03 14:26:09 +02:00
|
|
|
AssertData(expected.Data, actual.Data);
|
2024-07-26 00:37:47 +02:00
|
|
|
}
|
|
|
|
|
2024-08-03 14:26:09 +02:00
|
|
|
private static void AssertLayer(ObjectLayer expected, ObjectLayer actual)
|
2024-07-26 00:37:47 +02:00
|
|
|
{
|
|
|
|
// Attributes
|
2024-08-12 22:00:59 +02:00
|
|
|
AssertEqual(expected.DrawOrder, actual.DrawOrder, nameof(ObjectLayer.DrawOrder));
|
|
|
|
AssertEqual(expected.X, actual.X, nameof(ObjectLayer.X));
|
|
|
|
AssertEqual(expected.Y, actual.Y, nameof(ObjectLayer.Y));
|
2024-07-26 00:37:47 +02:00
|
|
|
|
|
|
|
Assert.NotNull(actual.Objects);
|
2024-08-12 22:00:59 +02:00
|
|
|
AssertEqual(expected.Objects.Count, actual.Objects.Count, "Objects.Count");
|
2024-07-26 00:37:47 +02:00
|
|
|
for (var i = 0; i < expected.Objects.Count; i++)
|
2024-08-03 14:26:09 +02:00
|
|
|
AssertObject(expected.Objects[i], actual.Objects[i]);
|
2024-07-26 00:37:47 +02:00
|
|
|
}
|
|
|
|
|
2024-08-03 14:26:09 +02:00
|
|
|
private static void AssertLayer(ImageLayer expected, ImageLayer actual)
|
2024-07-26 00:37:47 +02:00
|
|
|
{
|
|
|
|
// Attributes
|
2024-08-12 22:00:59 +02:00
|
|
|
AssertEqual(expected.RepeatX, actual.RepeatX, nameof(ImageLayer.RepeatX));
|
|
|
|
AssertEqual(expected.RepeatY, actual.RepeatY, nameof(ImageLayer.RepeatY));
|
|
|
|
AssertEqual(expected.X, actual.X, nameof(ImageLayer.X));
|
|
|
|
AssertEqual(expected.Y, actual.Y, nameof(ImageLayer.Y));
|
2024-07-26 00:37:47 +02:00
|
|
|
|
|
|
|
Assert.NotNull(actual.Image);
|
2024-08-03 14:26:09 +02:00
|
|
|
AssertImage(expected.Image, actual.Image);
|
2024-07-26 00:37:47 +02:00
|
|
|
}
|
2024-07-27 23:53:05 +02:00
|
|
|
|
2024-08-03 14:26:09 +02:00
|
|
|
private static void AssertLayer(Group expected, Group actual)
|
2024-07-27 23:53:05 +02:00
|
|
|
{
|
|
|
|
// Attributes
|
|
|
|
Assert.NotNull(actual.Layers);
|
2024-08-12 22:00:59 +02:00
|
|
|
AssertEqual(expected.Layers.Count, actual.Layers.Count, "Layers.Count");
|
2024-07-27 23:53:05 +02:00
|
|
|
for (var i = 0; i < expected.Layers.Count; i++)
|
2024-08-03 14:26:09 +02:00
|
|
|
AssertLayer(expected.Layers[i], actual.Layers[i]);
|
2024-07-27 23:53:05 +02:00
|
|
|
}
|
2024-07-26 00:37:47 +02:00
|
|
|
}
|