Netcode Bootstrap
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using NUnit.Framework;
|
||||
using Rukhanka.Toolbox;
|
||||
using Unity.Collections;
|
||||
using UnityEngine;
|
||||
using Random = Unity.Mathematics.Random;
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
namespace Rukhanka.Tests
|
||||
{
|
||||
public class BitFieldNTest
|
||||
{
|
||||
[Test]
|
||||
public unsafe void FunctionalityTest()
|
||||
{
|
||||
var rng = new Random((uint)(Time.time * 1000));
|
||||
var maxBitfieldSize = rng.NextInt(300, 1000);
|
||||
var bitFieldMem = stackalloc uint[maxBitfieldSize];
|
||||
|
||||
var numTests = rng.NextUInt(100);
|
||||
for (var i = 0; i < numTests; ++i)
|
||||
{
|
||||
var sz = rng.NextInt(1, maxBitfieldSize);
|
||||
var bf = new BitFieldN(bitFieldMem, sz);
|
||||
|
||||
var i0 = rng.NextInt(0, bf.Length);
|
||||
bf.Set(i0, true);
|
||||
Assert.IsTrue(bf.IsSet(i0));
|
||||
Assert.IsTrue(bf.TestAny());
|
||||
bf.Set(i0, false);
|
||||
Assert.IsFalse(bf.IsSet(i0));
|
||||
Assert.IsFalse(bf.TestAny());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user