示例#1
0
        public void And2()
        {
            Random r = new Random();

            byte [] a = new byte [100];
            byte [] b = new byte [100];

            r.NextBytes(a);
            r.NextBytes(b);

            for (int i = 0; i < a.Length * 8; i++)
            {
                BitField first  = new BitField(a, i);
                BitField second = new BitField(b, i);

                first.And(second);
            }
        }
示例#2
0
        public void And()
        {
            BitField bf2 = new BitField(secondValues);

            bf.And(bf2);

            Assert.AreEqual(new BitField(secondValues), bf2, "#1: bf2 should be unmodified");
            for (int i = 0; i < bf.Length; i++)
            {
                Assert.AreEqual(initalValues[i] && secondValues[i], bf[i], "#2");
            }

            int count = 0;

            for (int i = 0; i < initalValues.Length; i++)
            {
                if (initalValues[i] && secondValues[i])
                {
                    count++;
                }
            }

            Assert.AreEqual(count, bf.TrueCount, "#3");
        }