using System; using ANX.Framework.Input.Touch; using NUnit.Framework; using XNATouchCollection = Microsoft.Xna.Framework.Input.Touch.TouchCollection; using ANXTouchCollection = ANX.Framework.Input.Touch.TouchCollection; using XNATouchLocation = Microsoft.Xna.Framework.Input.Touch.TouchLocation; using ANXTouchLocation = ANX.Framework.Input.Touch.TouchLocation; using XNATouchLocationState = Microsoft.Xna.Framework.Input.Touch.TouchLocationState; using XNAVector2 = Microsoft.Xna.Framework.Vector2; // 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.Input.Touch { class TouchCollectionTest { [Test] public void Constructor() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); Assert.AreEqual(xna.Count, anx.Count); Assert.AreEqual(xna.IsConnected, anx.IsConnected); Assert.AreEqual(xna.IsReadOnly, anx.IsReadOnly); } [Test] public void Constructor2() { var xna = new XNATouchCollection(new[] {new XNATouchLocation(15, XNATouchLocationState.Pressed, XNAVector2.Zero)}); var anx = new ANXTouchCollection(new[] {new ANXTouchLocation(15, TouchLocationState.Pressed, Vector2.Zero)}); Assert.AreEqual(xna.Count, anx.Count); Assert.AreEqual(xna[0].Id, anx[0].Id); } [Test] public void Constructor3() { TestDelegate xnaDeleg = () => { new XNATouchCollection(null); }; TestDelegate anxDeleg = () => { new ANXTouchCollection(null); }; AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "Constructor3"); } [Test] public void Constructor4() { TestDelegate xnaDeleg = () => { new XNATouchCollection(new XNATouchLocation[15]); }; TestDelegate anxDeleg = () => { new ANXTouchCollection(new ANXTouchLocation[15]); }; AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "Constructor4"); } [Test] public void AccessorSet() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); TestDelegate xnaDeleg = () => { xna[0] = new XNATouchLocation(); }; TestDelegate anxDeleg = () => { anx[0] = new ANXTouchLocation(); }; AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "AccessorSet"); } [Test] public void AccessorGet() { var xna = new XNATouchCollection(new[] {new XNATouchLocation(15, XNATouchLocationState.Pressed, XNAVector2.Zero)}); var anx = new ANXTouchCollection(new[] {new ANXTouchLocation(15, TouchLocationState.Pressed, Vector2.Zero)}); Assert.AreEqual(15, xna[0].Id); Assert.AreEqual(15, anx[0].Id); } [Test] public void FindIndexById() { var xna = new XNATouchCollection(new[] {new XNATouchLocation(15, XNATouchLocationState.Pressed, XNAVector2.Zero)}); var anx = new ANXTouchCollection(new[] { new ANXTouchLocation(15, TouchLocationState.Pressed, Vector2.Zero) }); XNATouchLocation xnaResult; ANXTouchLocation anxResult; Assert.AreEqual(xna.FindById(15, out xnaResult), anx.FindById(15, out anxResult)); Assert.AreEqual(xnaResult.Id, anxResult.Id); } [Test] public void IndexOf() { var xnaLocation = new XNATouchLocation(15, XNATouchLocationState.Pressed, XNAVector2.Zero); var xna = new XNATouchCollection(new[] { xnaLocation }); var anxLocation = new ANXTouchLocation(15, TouchLocationState.Pressed, Vector2.Zero); var anx = new ANXTouchCollection(new[] { anxLocation }); Assert.AreEqual(xna.IndexOf(xnaLocation), anx.IndexOf(anxLocation)); } [Test] public void Contains() { var xnaLocation = new XNATouchLocation(15, XNATouchLocationState.Pressed, XNAVector2.Zero); var xnaLocation2 = new XNATouchLocation(14, XNATouchLocationState.Released, XNAVector2.Zero); var xna = new XNATouchCollection(new[] { xnaLocation }); var anxLocation = new ANXTouchLocation(15, TouchLocationState.Pressed, Vector2.Zero); var anxLocation2 = new ANXTouchLocation(14, TouchLocationState.Released, Vector2.Zero); var anx = new ANXTouchCollection(new[] { anxLocation }); Assert.AreEqual(xna.Contains(xnaLocation), anx.Contains(anxLocation)); Assert.AreEqual(xna.Contains(default(XNATouchLocation)), anx.Contains(default(ANXTouchLocation))); Assert.AreEqual(xna.Contains(xnaLocation2), anx.Contains(anxLocation2)); } [Test] public void CopyTo() { var xnaLocation = new XNATouchLocation(15, XNATouchLocationState.Pressed, XNAVector2.Zero); var xnaLocation2 = new XNATouchLocation(14, XNATouchLocationState.Released, XNAVector2.Zero); var xna = new XNATouchCollection(new[] { xnaLocation, xnaLocation2 }); var anxLocation = new ANXTouchLocation(15, TouchLocationState.Pressed, Vector2.Zero); var anxLocation2 = new ANXTouchLocation(14, TouchLocationState.Released, Vector2.Zero); var anx = new ANXTouchCollection(new[] { anxLocation, anxLocation2 }); var xnaResult = new XNATouchLocation[2]; xna.CopyTo(xnaResult, 0); var anxResult = new ANXTouchLocation[2]; anx.CopyTo(anxResult, 0); Assert.AreEqual(xnaResult[0], xnaLocation); Assert.AreEqual(xnaResult[1], xnaLocation2); Assert.AreEqual(anxResult[0], anxLocation); Assert.AreEqual(anxResult[1], anxLocation2); } [Test] public void Insert() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); TestDelegate xnaDeleg = () => xna.Insert(0, default(XNATouchLocation)); TestDelegate anxDeleg = () => anx.Insert(0, default(ANXTouchLocation)); AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "Insert"); } [Test] public void RemoveAt() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); TestDelegate xnaDeleg = () => xna.RemoveAt(0); TestDelegate anxDeleg = () => anx.RemoveAt(0); AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "RemoveAt"); } [Test] public void Add() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); TestDelegate xnaDeleg = () => xna.Add(default(XNATouchLocation)); TestDelegate anxDeleg = () => anx.Add(default(ANXTouchLocation)); AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "Add"); } [Test] public void Clear() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); TestDelegate xnaDeleg = xna.Clear; TestDelegate anxDeleg = anx.Clear; AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "Clear"); } [Test] public void Remove() { var xna = new XNATouchCollection(); var anx = new ANXTouchCollection(); TestDelegate xnaDeleg = () => xna.Remove(default(XNATouchLocation)); TestDelegate anxDeleg = () => anx.Remove(default(ANXTouchLocation)); AssertHelper.ConvertEquals(Assert.Throws(xnaDeleg), Assert.Throws(anxDeleg), "Remove"); } } }