示例#1
0
        public static void GetHashCode___Should_return_different_hash_code___For_different_Color_objects()
        {
            // Arrange
            var item1 = Color.FromArgb(255, 255, 218, 185);
            var item2 = Color.FromArgb(254, 255, 218, 185);
            var item3 = Color.FromArgb(255, 254, 218, 185);
            var item4 = Color.FromArgb(255, 255, 219, 185);
            var item5 = Color.FromArgb(255, 255, 218, 184);

            var systemUnderTest = new ColorEqualityComparer();

            // Act
            var hash1 = systemUnderTest.GetHashCode(item1);
            var hash2 = systemUnderTest.GetHashCode(item2);
            var hash3 = systemUnderTest.GetHashCode(item3);
            var hash4 = systemUnderTest.GetHashCode(item4);
            var hash5 = systemUnderTest.GetHashCode(item5);

            // Assert
            hash1.Should().NotBe(hash2);
            hash1.Should().NotBe(hash3);
            hash1.Should().NotBe(hash4);
            hash1.Should().NotBe(hash5);
            hash2.Should().NotBe(hash3);
            hash2.Should().NotBe(hash4);
            hash2.Should().NotBe(hash5);
            hash3.Should().NotBe(hash4);
            hash3.Should().NotBe(hash5);
            hash4.Should().NotBe(hash5);
        }
示例#2
0
        public static void GetHashCode___Should_return_same_hash_code___For_Color_objects_that_are_equal()
        {
            // Arrange
            var item1 = Color.FromArgb(255, 255, 218, 185);
            var item2 = Color.FromArgb(255, 218, 185);
            var item3 = Color.PeachPuff;

            var systemUnderTest = new ColorEqualityComparer();

            // Act
            var hash1 = systemUnderTest.GetHashCode(item1);
            var hash2 = systemUnderTest.GetHashCode(item2);
            var hash3 = systemUnderTest.GetHashCode(item3);

            // Assert
            hash1.Should().Be(hash2);
            hash2.Should().Be(hash3);
        }
示例#3
0
        public static void GetHashCode___Should_return_same_hash_code___When_called_twice_on_same_object_reference()
        {
            // Arrange
            var item1 = Color.FromArgb(255, 218, 185);
            var item2 = Color.PeachPuff;

            var systemUnderTest = new ColorEqualityComparer();

            // Act
            var hash1a = systemUnderTest.GetHashCode(item1);
            var hash1b = systemUnderTest.GetHashCode(item1);

            var hash2a = systemUnderTest.GetHashCode(item2);
            var hash2b = systemUnderTest.GetHashCode(item2);

            // Assert
            hash1a.Should().Be(hash1b);
            hash2a.Should().Be(hash2b);
        }