| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using Microsoft.Xna.Framework;
- using MonoGame.Extended.Tilemaps;
- namespace MonoGame.Extended.Tests;
- public sealed class TilemapEllipseObjectTests
- {
- [Fact]
- public void Constructor_SetsProperties()
- {
- var obj = new TilemapEllipseObject(1, new Vector2(10, 20), new Vector2(50, 30));
- // Assert
- Assert.Equal(1, obj.Id);
- Assert.Equal(new Vector2(10, 20), obj.Position);
- Assert.Equal(new Vector2(50, 30), obj.Size);
- }
- [Fact]
- public void Bounds_ReturnsCorrectRectangle()
- {
- var obj = new TilemapEllipseObject(1, new Vector2(10, 20), new Vector2(50, 30));
- var bounds = obj.Bounds;
- // Assert
- Assert.Equal(10, bounds.X);
- Assert.Equal(20, bounds.Y);
- Assert.Equal(50, bounds.Width);
- Assert.Equal(30, bounds.Height);
- }
- [Fact]
- public void Center_ReturnsCorrectPosition()
- {
- var obj = new TilemapEllipseObject(1, new Vector2(10, 20), new Vector2(50, 30));
- // (10 + 50/2, 20 + 30/2) = (35,35)
- Assert.Equal(new Vector2(35, 35), obj.Center);
- }
- [Fact]
- public void RadiusX_ReturnsHalfWidth()
- {
- var obj = new TilemapEllipseObject(1, new Vector2(10, 20), new Vector2(50, 30));
- // 50 / 2 = 25
- Assert.Equal(25, obj.RadiusX);
- }
- [Fact]
- public void RadiusY_ReturnsHalfHeight()
- {
- var obj = new TilemapEllipseObject(1, new Vector2(10, 20), new Vector2(50, 30));
- // 30 / 2 = 15
- Assert.Equal(15, obj.RadiusY);
- }
- [Fact]
- public void CircleEllipse_RadiiAreEqual()
- {
- var obj = new TilemapEllipseObject(1, new Vector2(0, 0), new Vector2(40, 40));
- Assert.Equal(20, obj.RadiusX);
- Assert.Equal(20, obj.RadiusY);
- }
- }
|