161 lines
5.3 KiB
C#
161 lines
5.3 KiB
C#
using System;
|
|
using System.IO;
|
|
using NUnit.Framework;
|
|
|
|
using XNAPacketWriter = Microsoft.Xna.Framework.Net.PacketWriter;
|
|
using ANXPacketWriter = ANX.Framework.Net.PacketWriter;
|
|
|
|
// 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.Net
|
|
{
|
|
internal class PacketWriterTest
|
|
{
|
|
[Test]
|
|
public void Constructor1()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
}
|
|
|
|
[Test]
|
|
public void Constructor2()
|
|
{
|
|
var xna = new XNAPacketWriter(256);
|
|
var anx = new ANXPacketWriter(256);
|
|
|
|
Assert.AreEqual(((MemoryStream)xna.BaseStream).Capacity, ((MemoryStream)anx.BaseStream).Capacity);
|
|
}
|
|
|
|
[Test]
|
|
public void WriteVector2()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
xna.Write(new Microsoft.Xna.Framework.Vector2(15f, 3.5f));
|
|
anx.Write(new Vector2(15f, 3.5f));
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
|
|
xna.Position = 0;
|
|
anx.Position = 0;
|
|
var xnaReader = new BinaryReader(xna.BaseStream);
|
|
var anxReader = new BinaryReader(anx.BaseStream);
|
|
|
|
for (int index = 0; index < 2; index++)
|
|
Assert.AreEqual(xnaReader.ReadSingle(), anxReader.ReadSingle());
|
|
}
|
|
|
|
[Test]
|
|
public void WriteVector3()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
xna.Write(new Microsoft.Xna.Framework.Vector3(15f, 3.5f, 0.1f));
|
|
anx.Write(new Vector3(15f, 3.5f, 0.1f));
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
|
|
xna.Position = 0;
|
|
anx.Position = 0;
|
|
var xnaReader = new BinaryReader(xna.BaseStream);
|
|
var anxReader = new BinaryReader(anx.BaseStream);
|
|
|
|
for (int index = 0; index < 3; index++)
|
|
Assert.AreEqual(xnaReader.ReadSingle(), anxReader.ReadSingle());
|
|
}
|
|
|
|
[Test]
|
|
public void WriteVector4()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
xna.Write(new Microsoft.Xna.Framework.Vector4(15f, 3.5f, 0.1f, 1f));
|
|
anx.Write(new Vector4(15f, 3.5f, 0.1f, 1f));
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
|
|
xna.Position = 0;
|
|
anx.Position = 0;
|
|
var xnaReader = new BinaryReader(xna.BaseStream);
|
|
var anxReader = new BinaryReader(anx.BaseStream);
|
|
|
|
for (int index = 0; index < 4; index++)
|
|
Assert.AreEqual(xnaReader.ReadSingle(), anxReader.ReadSingle());
|
|
}
|
|
|
|
[Test]
|
|
public void WriteMatrix()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
xna.Write(Microsoft.Xna.Framework.Matrix.CreateRotationY(0.1f));
|
|
anx.Write(Matrix.CreateRotationY(0.1f));
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
|
|
xna.Position = 0;
|
|
anx.Position = 0;
|
|
var xnaReader = new BinaryReader(xna.BaseStream);
|
|
var anxReader = new BinaryReader(anx.BaseStream);
|
|
|
|
for (int index = 0; index < 16; index++)
|
|
Assert.AreEqual(xnaReader.ReadSingle(), anxReader.ReadSingle());
|
|
}
|
|
|
|
[Test]
|
|
public void WriteQuaternion()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
xna.Write(new Microsoft.Xna.Framework.Quaternion(0.1f, 15f, 3.4f, 4f));
|
|
anx.Write(new Quaternion(0.1f, 15f, 3.4f, 4f));
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
|
|
xna.Position = 0;
|
|
anx.Position = 0;
|
|
var xnaReader = new BinaryReader(xna.BaseStream);
|
|
var anxReader = new BinaryReader(anx.BaseStream);
|
|
|
|
for (int index = 0; index < 4; index++)
|
|
Assert.AreEqual(xnaReader.ReadSingle(), anxReader.ReadSingle());
|
|
}
|
|
|
|
[Test]
|
|
public void WriteColor()
|
|
{
|
|
var xna = new XNAPacketWriter();
|
|
var anx = new ANXPacketWriter();
|
|
|
|
xna.Write(Microsoft.Xna.Framework.Color.CornflowerBlue);
|
|
anx.Write(Color.CornflowerBlue);
|
|
|
|
Assert.AreEqual(xna.Length, anx.Length);
|
|
Assert.AreEqual(xna.Position, anx.Position);
|
|
|
|
xna.Position = 0;
|
|
anx.Position = 0;
|
|
var xnaReader = new BinaryReader(xna.BaseStream);
|
|
var anxReader = new BinaryReader(anx.BaseStream);
|
|
|
|
Assert.AreEqual(xnaReader.ReadUInt32(), anxReader.ReadUInt32());
|
|
}
|
|
}
|
|
}
|