TilemapTileObjectTests.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using Microsoft.Xna.Framework;
  2. using MonoGame.Extended.Tilemaps;
  3. namespace MonoGame.Extended.Tests;
  4. public sealed class TilemapTileObjectTests
  5. {
  6. [Fact]
  7. public void Constructor_SetsProperties()
  8. {
  9. var tile = new TilemapTile(42);
  10. var obj = new TilemapTileObject(1, new Vector2(10, 20), tile, new Vector2(32, 32));
  11. Assert.Equal(1, obj.Id);
  12. Assert.Equal(new Vector2(10, 20), obj.Position);
  13. Assert.Equal(tile, obj.Tile);
  14. Assert.Equal(new Vector2(32, 32), obj.Size);
  15. }
  16. [Fact]
  17. public void Bounds_ReturnsCorrectRectangle()
  18. {
  19. var tile = new TilemapTile(42);
  20. var obj = new TilemapTileObject(1, new Vector2(10, 20), tile, new Vector2(32, 32));
  21. var bounds = obj.Bounds;
  22. Assert.Equal(10, bounds.X);
  23. Assert.Equal(20, bounds.Y);
  24. Assert.Equal(32, bounds.Width);
  25. Assert.Equal(32, bounds.Height);
  26. }
  27. [Fact]
  28. public void Tile_CanHaveFlipFlags()
  29. {
  30. var tile = new TilemapTile(42, TilemapTileFlipFlags.FlipHorizontally);
  31. var obj = new TilemapTileObject(1, Vector2.Zero, tile, new Vector2(32, 32));
  32. // Act & Assert
  33. Assert.Equal(TilemapTileFlipFlags.FlipHorizontally, obj.Tile.FlipFlags);
  34. }
  35. }