SND\AstrorEnales_cp 6c488dbca5 - Working on tests for all the graphics collection classes (Finished: ModelBoneCollection, DisplayModeCollection, ModelBone)
- Added some excludes to the AssemblyLoader to decrease startup time a little bit
2015-03-15 01:11:53 +01:00

86 lines
3.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Globalization;
using System.Reflection;
using ANX.Framework.Graphics;
using NUnit.Framework;
using XNAModelBone = Microsoft.Xna.Framework.Graphics.ModelBone;
using XNAModelBoneCollection = Microsoft.Xna.Framework.Graphics.ModelBoneCollection;
// 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 ModelBoneCollectionTest
{
[Test]
public void Constructor()
{
XNAModelBoneCollection xna;
ModelBoneCollection anx;
CreateCollections(out xna, out anx);
Assert.AreEqual(xna.Count, anx.Count);
}
[Test]
public void AccessorArgumentNull()
{
XNAModelBoneCollection xna;
ModelBoneCollection anx;
CreateCollections(out xna, out anx);
TestDelegate xnaDeleg = delegate { XNAModelBone xnaBone = xna[""]; };
TestDelegate anxDeleg = delegate { ModelBone anxBone = anx[""]; };
AssertHelper.ConvertEquals(Assert.Throws<ArgumentNullException>(xnaDeleg),
Assert.Throws<ArgumentNullException>(anxDeleg), "AccessorArgumentNull");
}
[Test]
public void AccessorKeyNotFound()
{
XNAModelBoneCollection xna;
ModelBoneCollection anx;
CreateCollections(out xna, out anx);
TestDelegate xnaDeleg = delegate { XNAModelBone xnaBone = xna["test"]; };
TestDelegate anxDeleg = delegate { ModelBone anxBone = anx["test"]; };
AssertHelper.ConvertEquals(Assert.Throws<KeyNotFoundException>(xnaDeleg),
Assert.Throws<KeyNotFoundException>(anxDeleg), "AccessorKeyNotFound");
}
[Test]
public void Accessor()
{
XNAModelBoneCollection xna;
ModelBoneCollection anx;
CreateCollections(out xna, out anx);
XNAModelBone xnaBone = xna["bone1"];
ModelBone anxBone = anx["bone1"];
Assert.AreEqual(xnaBone.Index, anxBone.Index);
AssertHelper.ConvertEquals(xnaBone.Transform, anxBone.Transform, "Accessor");
}
private void CreateCollections(out XNAModelBoneCollection xna, out ModelBoneCollection anx)
{
XNAModelBone xnaBone;
ModelBone anxBone;
ModelBoneTest.CreateBones(out xnaBone, out anxBone);
var xnaParameters = new object[] { new[] { xnaBone } };
xna = (XNAModelBoneCollection)Activator.CreateInstance(typeof(XNAModelBoneCollection),
BindingFlags.NonPublic | BindingFlags.Instance, null, xnaParameters, CultureInfo.InvariantCulture);
var anxParameters = new object[] { new[] { anxBone } };
anx = (ModelBoneCollection)Activator.CreateInstance(typeof(ModelBoneCollection),
BindingFlags.NonPublic | BindingFlags.Instance, null, anxParameters, CultureInfo.InvariantCulture);
}
}
}