1
0
mirror of https://github.com/lidgren/lidgren-network-gen3.git synced 2026-05-06 10:21:09 +09:00
Files
lidgren-network-gen3/UnitTests/BitVectorTests.cs
2010-10-19 17:45:55 +00:00

71 lines
1.7 KiB
C#

using System;
using Lidgren.Network;
namespace UnitTests
{
public static class BitVectorTests
{
public static void Run()
{
NetBitVector v = new NetBitVector(256);
for (int i = 0; i < 256; i++)
{
v.Clear();
if (i > 42 && i < 65)
v = new NetBitVector(256);
if (!v.IsEmpty())
throw new NetException("bit vector fail 1");
v.Set(i, true);
if (v.Get(i) == false)
throw new NetException("bit vector fail 2");
if (v.IsEmpty())
throw new NetException("bit vector fail 3");
if (i != 79 && v.Get(79) == true)
throw new NetException("bit vector fail 4");
int f = v.GetFirstSetIndex();
if (f != i)
throw new NetException("bit vector fail 4");
}
/*
v = new NetBitVector(9);
v.Clear();
v.Set(3, true);
if (v.ToString() != "[000001000]")
throw new NetException("NetBitVector.RotateDown failed");
v.RotateDown();
if (v.Get(3) == true || v.Get(2) == false || v.Get(4) == true)
throw new NetException("NetBitVector.RotateDown failed 2");
if (v.ToString() != "[000000100]")
throw new NetException("NetBitVector.RotateDown failed 3");
v.Set(0, true);
v.RotateDown();
if (v.ToString() != "[100000010]")
throw new NetException("NetBitVector.RotateDown failed 4");
v = new NetBitVector(38);
v.Set(0, true);
v.Set(1, true);
v.Set(31, true);
if (v.ToString() != "[00000010000000000000000000000000000011]")
throw new NetException("NetBitVector.RotateDown failed 5");
v.RotateDown();
if (v.ToString() != "[10000001000000000000000000000000000001]")
throw new NetException("NetBitVector.RotateDown failed 5");
*/
Console.WriteLine("NetBitVector tests OK");
}
}
}