Example #1
0
        public void DoubleLongEcsSignature_WhenDisableBit_DisablesBit()
        {
            // Arrange
            var signature1 = new DoubleLongEcsSignature();
            var signature2 = new DoubleLongEcsSignature();

            signature1.EnableBit(100);
            signature2.EnableBit(100);
            Assert.IsTrue(signature1.IsMatching(signature2));

            // Act
            signature1.DisableBit(100);

            // Assert
            Assert.IsFalse(signature1.IsMatching(signature2));
        }
Example #2
0
        public void DoubleLongEcsSignature_WhenEnableBit_SetsBit()
        {
            // Arrange
            var signature1 = new DoubleLongEcsSignature();
            var signature2 = new DoubleLongEcsSignature();
            var signature3 = new DoubleLongEcsSignature();

            // Act
            signature1.EnableBit(127);
            signature2.EnableBit(63);
            signature3.EnableBit(127);

            // Assert
            Assert.IsTrue(signature1.IsMatching(signature3));
            Assert.IsFalse(signature1.IsMatching(signature2));
        }
Example #3
0
        public void DoubleLongEcsSignature_WhenEnableBit_CreatesUniqueSignature()
        {
            // Arrange
            var signatures = new DoubleLongEcsSignature[128];

            // Act
            for (var index = 0; index < signatures.Length; ++index)
            {
                var signature = new DoubleLongEcsSignature();
                signature.EnableBit(index);
                signatures[index] = signature;
            }

            // Assert
            int i = 0;
            var matchingSignatures = signatures.Where(x =>
            {
                ++i;
                return(i < signatures.Length && x.IsMatching(signatures[i]));
            });

            Assert.AreEqual(0, matchingSignatures.Count());
        }