コード例 #1
0
 public void GetHashCodeForwardsCorrectCallToComparer(
     object obj,
     int expected)
 {
     // Fixture setup
     var comparerStub = new DelegatingEqualityComparer
     {
         OnGetHashCode = x => x == obj ? expected : 0
     };
     var sut = new MemberComparer(comparerStub);
     // Exercise system
     var result = sut.GetHashCode(obj);
     // Verify outcome
     Assert.Equal(expected, result);
     // Teardown
 }
コード例 #2
0
        public void GetHashCodeForwardsCorrectCallToComparer(
            object obj,
            int expected)
        {
            // Fixture setup
            var comparerStub = new DelegatingEqualityComparer
            {
                OnGetHashCode = x => x == obj ? expected : 0
            };
            var sut = new MemberComparer(comparerStub);
            // Exercise system
            var result = sut.GetHashCode(obj);

            // Verify outcome
            Assert.Equal(expected, result);
            // Teardown
        }
コード例 #3
0
 public override int GetHashCode()
 {
     return(0x72F10A3D
            + 37 * TargetComparer.GetHashCode(target)
            + 37 * MemberComparer.GetHashCode(member));
 }