| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- using Microsoft.Xna.Framework;
- using MonoGame.Extended.Tilemaps;
- namespace MonoGame.Extended.Tests;
- public sealed class TilemapTextObjectTests
- {
- [Fact]
- public void Constructor_SetsProperties()
- {
- var obj = new TilemapTextObject(1, new Vector2(10, 20), new Vector2(100, 50), "Hello World");
- Assert.Equal(1, obj.Id);
- Assert.Equal(new Vector2(10, 20), obj.Position);
- Assert.Equal(new Vector2(100, 50), obj.Size);
- Assert.Equal("Hello World", obj.Text);
- }
- [Fact]
- public void Bounds_ReturnsRectangleWithSize()
- {
- var obj = new TilemapTextObject(1, new Vector2(10, 20), new Vector2(100, 50), "Test");
- var bounds = obj.Bounds;
- Assert.Equal(10, bounds.X);
- Assert.Equal(20, bounds.Y);
- Assert.Equal(100, bounds.Width);
- Assert.Equal(50, bounds.Height);
- }
- [Fact]
- public void Constructor_SetsDefaultFontProperties()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Test");
- Assert.Equal("sans-serif", obj.FontFamily);
- Assert.Equal(16, obj.PixelSize);
- Assert.Equal(Color.Black, obj.Color);
- Assert.Equal(TilemapTextObjectHorizontalAlignment.Left, obj.HorizontalAlign);
- Assert.Equal(TilemapTextObjectVerticalAlignment.Top, obj.VerticalAlign);
- Assert.False(obj.Bold);
- Assert.False(obj.Italic);
- Assert.False(obj.Underline);
- Assert.False(obj.Strikethrough);
- Assert.False(obj.WordWrap);
- }
- [Fact]
- public void FontProperties_CanBeSet()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Test");
- obj.FontFamily = "Arial";
- obj.PixelSize = 24;
- obj.Bold = true;
- obj.Italic = true;
- obj.Underline = true;
- obj.Strikethrough = true;
- // Assert
- Assert.Equal("Arial", obj.FontFamily);
- Assert.Equal(24, obj.PixelSize);
- Assert.True(obj.Bold);
- Assert.True(obj.Italic);
- Assert.True(obj.Underline);
- Assert.True(obj.Strikethrough);
- }
- [Fact]
- public void TextColor_CanBeSet()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Test");
- obj.Color = Color.Red;
- Assert.Equal(Color.Red, obj.Color);
- }
- [Fact]
- public void Alignment_CanBeSet()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Test");
- obj.HorizontalAlign = TilemapTextObjectHorizontalAlignment.Center;
- obj.VerticalAlign = TilemapTextObjectVerticalAlignment.Center;
- // Assert
- Assert.Equal(TilemapTextObjectHorizontalAlignment.Center, obj.HorizontalAlign);
- Assert.Equal(TilemapTextObjectVerticalAlignment.Center, obj.VerticalAlign);
- }
- [Fact]
- public void WordWrap_CanBeSet()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Test");
- obj.WordWrap = true;
- Assert.True(obj.WordWrap);
- }
- [Fact]
- public void Size_CanBeModified()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Test");
- obj.Size = new Vector2(200, 100);
- Assert.Equal(new Vector2(200, 100), obj.Size);
- Assert.Equal(200, obj.Bounds.Width);
- Assert.Equal(100, obj.Bounds.Height);
- }
- [Fact]
- public void Text_CanBeModified()
- {
- var obj = new TilemapTextObject(1, Vector2.Zero, new Vector2(100, 50), "Original");
- obj.Text = "Modified";
- Assert.Equal("Modified", obj.Text);
- }
- }
|