Beispiel #1
0
        public void Equality_and_hashcode_tests()
        {
            var a = new Arr04();
            var b = new Arr04();

            Assert.True(a == b);
            Assert.True(Equals(a, b));
            Assert.Equal(a.GetHashCode(), b.GetHashCode());

            for (var i = 0; i < N; i++)
            {
                a[i] = (byte)(i + 1);
                Assert.True(a != b);
                Assert.False(Equals(a, b));
                Assert.NotEqual(a.GetHashCode(), b.GetHashCode());
                b[i] = (byte)(i + 1);
                Assert.True(a == b);
                Assert.True(Equals(a, b));
                Assert.Equal(a.GetHashCode(), b.GetHashCode());
            }

            Assert.True(new Arr04().Equals((object)new Arr04()));
            Assert.False(a.Equals(0));
        }