using Microsoft.Xna.Framework; using MonoGame.Extended.Tilemaps; namespace MonoGame.Extended.Tests; public sealed class TilemapTileObjectTests { [Fact] public void Constructor_SetsProperties() { var tile = new TilemapTile(42); var obj = new TilemapTileObject(1, new Vector2(10, 20), tile, new Vector2(32, 32)); Assert.Equal(1, obj.Id); Assert.Equal(new Vector2(10, 20), obj.Position); Assert.Equal(tile, obj.Tile); Assert.Equal(new Vector2(32, 32), obj.Size); } [Fact] public void Bounds_ReturnsCorrectRectangle() { var tile = new TilemapTile(42); var obj = new TilemapTileObject(1, new Vector2(10, 20), tile, new Vector2(32, 32)); var bounds = obj.Bounds; Assert.Equal(10, bounds.X); Assert.Equal(20, bounds.Y); Assert.Equal(32, bounds.Width); Assert.Equal(32, bounds.Height); } [Fact] public void Tile_CanHaveFlipFlags() { var tile = new TilemapTile(42, TilemapTileFlipFlags.FlipHorizontally); var obj = new TilemapTileObject(1, Vector2.Zero, tile, new Vector2(32, 32)); // Act & Assert Assert.Equal(TilemapTileFlipFlags.FlipHorizontally, obj.Tile.FlipFlags); } }