using System; using System.Globalization; using System.Reflection; using ANX.Framework.Graphics; using NUnit.Framework; using XNAModelMesh = Microsoft.Xna.Framework.Graphics.ModelMesh; using XNAModelMeshPart = Microsoft.Xna.Framework.Graphics.ModelMeshPart; using XNABoundingSphere = Microsoft.Xna.Framework.BoundingSphere; using XNAVector3 = Microsoft.Xna.Framework.Vector3; // This file is part of the ANX.Framework created by the // "ANX.Framework developer group" and released under the Ms-PL license. // For details see: http://anxframework.codeplex.com/license namespace ANX.Framework.TestCenter.Strukturen.Graphics { class ModelMeshTest { [Test] public void Constructor() { XNAModelMesh xna; ModelMesh anx; CreateMeshes(out xna, out anx); Assert.AreEqual(xna.Name, anx.Name); Assert.AreEqual(xna.Tag, anx.Tag); Assert.AreEqual(xna.ParentBone, anx.ParentBone); Assert.AreEqual(xna.MeshParts.Count, anx.MeshParts.Count); Assert.AreEqual(xna.Effects.Count, anx.Effects.Count); AssertHelper.ConvertEquals(xna.BoundingSphere, anx.BoundingSphere, "Constructor"); } public static void CreateMeshes(out XNAModelMesh xna, out ModelMesh anx) { var xnaParameters = new object[] { "mesh1", null, new XNABoundingSphere(XNAVector3.UnitY, 2f), new XNAModelMeshPart[0], 17 }; xna = (XNAModelMesh)Activator.CreateInstance(typeof(XNAModelMesh), BindingFlags.NonPublic | BindingFlags.Instance, null, xnaParameters, CultureInfo.InvariantCulture); var anxParameters = new object[] { "mesh1", null, new BoundingSphere(Vector3.UnitY, 2f), new ModelMeshPart[0], 17 }; anx = (ModelMesh)Activator.CreateInstance(typeof(ModelMesh), BindingFlags.NonPublic | BindingFlags.Instance, null, anxParameters, CultureInfo.InvariantCulture); } } }