summaryrefslogtreecommitdiff
path: root/Plugins/MonoGame.Extended/tests/MonoGame.Extended.Tests/Sprites/SpriteTests.cs
blob: 307e27272ba98dc43678c72a1110b3cce06c489f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
//using Microsoft.Xna.Framework;
//using Microsoft.Xna.Framework.Graphics;
//using MonoGame.Extended.Sprites;
//using MonoGame.Extended.TextureAtlases;
//using NSubstitute;
//using Xunit;

//namespace MonoGame.Extended.Tests.Sprites
//{
//    
//    public class SpriteTests
//    {
//        [Fact]
//        public void Sprite_BoundingRectangleAfterPosition_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 50, 200);
//            var sprite = new Sprite(texture);

//            Assert.Equal(new RectangleF(375, 140, 50, 200), sprite.GetBoundingRectangle(new Vector2(400, 240), 0, Vector2.One));
//        }

//        [Fact]
//        public void Sprite_BoundingRectangleAfterOrigin_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 50, 200);
//            var sprite = new Sprite(texture) { OriginNormalized = new Vector2(1.0f, 1.0f) };

//            Assert.Equal(new RectangleF(-50, -200, 50, 200), sprite.GetBoundingRectangle(Vector2.Zero, 0, Vector2.One));
//        }

//        [Fact]
//        public void Sprite_BoundingRectangleAfterScale_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 50, 200);
//            var sprite = new Sprite(texture);

//            Assert.Equal(new RectangleF(-50, -200, 100, 400), sprite.GetBoundingRectangle(Vector2.Zero, 0, Vector2.One * 2.0f));
//        }

//        [Fact]
//        public void Sprite_BoundingRectangleAfterRotation_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 50, 200);
//            var sprite = new Sprite(texture);

//            AssertExtensions.AreApproximatelyEqual(new RectangleF(-100, -25, 200, 50), sprite.GetBoundingRectangle(Vector2.Zero, MathHelper.ToRadians(90), Vector2.One * 2.0f));
//        }

//        [Fact]
//        public void Sprite_TextureRegionIsFullTextureWhenTextureConstructorIsUsed_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 100, 200);
//            var sprite = new Sprite(texture);

//            Assert.Equal(new Rectangle(0, 0, 100, 200), sprite.TextureRegion.Bounds);
//        }

//        [Fact]
//        public void Sprite_DefaultOriginIsCentre_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 100, 200);
//            var sprite = new Sprite(texture);
            
//            Assert.Equal(new Vector2(0.5f, 0.5f), sprite.OriginNormalized);
//            Assert.Equal(new Vector2(50, 100), sprite.Origin);
//        }

//        [Fact]
//        public void Sprite_PreserveNormalizedOriginWhenTextureRegionChanges_Test()
//        {
//            var graphicsDevice = TestHelper.CreateGraphicsDevice();
//            var texture = Substitute.For<Texture2D>(graphicsDevice, 100, 100);
//            var textureRegion = new TextureRegion2D(texture, 10, 20, 30, 40);
//            var sprite = new Sprite(textureRegion);

//            Assert.Equal(new Vector2(0.5f, 0.5f), sprite.OriginNormalized);
//            Assert.Equal(new Vector2(15, 20), sprite.Origin);

//            sprite.TextureRegion = new TextureRegion2D(texture, 30, 40, 50, 60);

//            Assert.Equal(new Vector2(0.5f, 0.5f), sprite.OriginNormalized);
//            Assert.Equal(new Vector2(25, 30), sprite.Origin);
//        }
//    }
//}