Exemple #1
0
        public void DynamicUInt()
        {
            var  rnd       = new CryptoRandom();
            int  itemCount = 1_000_000;
            uint value     = 0;

            uint[]  values = new uint[itemCount];
            BVector d      = new BVector();

            for (uint i = 0; i < itemCount; i++)
            {
                value = (uint)rnd.NextLong(0, uint.MaxValue);
                d.DynamicAdd(value);
                d.Add1();
                values[i] = value;
            }
            d.DynamicAdd(uint.MinValue);
            d.Add1();
            d.DynamicAdd(uint.MaxValue);

            for (uint i = 0; i < itemCount; i++)
            {
                Assert.AreEqual(values[i], d.DynamicGetUInt());
                Assert.AreEqual(true, d.Get1());
            }
            Assert.AreEqual(uint.MinValue, d.DynamicGetUInt());
            Assert.AreEqual(true, d.Get1());
            Assert.AreEqual(uint.MaxValue, d.DynamicGetUInt());
        }