public static void GetHashCode___Should_not_be_equal_for_two_UnitOfKind_objects___When_they_are_of_different_kinds_but_have_the_same_granularity_and_same_property_values() { // Arrange var calendarUnbounded = A.Dummy <CalendarUnbounded>(); var fiscalUnbounded = new FiscalUnbounded(); var genericUnbounded = new GenericUnbounded(); var calendarYear = A.Dummy <CalendarYear>(); var fiscalYear = new FiscalYear(calendarYear.Year); var genericYear = new GenericYear(calendarYear.Year); var calendarQuarter = A.Dummy <CalendarQuarter>(); var fiscalQuarter = new FiscalQuarter(calendarQuarter.Year, calendarQuarter.QuarterNumber); var genericQuarter = new GenericQuarter(calendarQuarter.Year, calendarQuarter.QuarterNumber); var calendarMonth = A.Dummy <CalendarMonth>(); var fiscalMonth = new FiscalMonth(calendarMonth.Year, calendarMonth.MonthNumber); var genericMonth = new GenericMonth(calendarMonth.Year, calendarMonth.MonthNumber); // Act var calendarUnboundedHashCode = calendarUnbounded.GetHashCode(); var fiscalUnboundedHashCode = fiscalUnbounded.GetHashCode(); var genericUnboundedHashCode = genericUnbounded.GetHashCode(); var calendarYearHashCode = calendarYear.GetHashCode(); var fiscalYearHashCode = fiscalYear.GetHashCode(); var genericYearHashCode = genericYear.GetHashCode(); var calendarQuarterHashCode = calendarQuarter.GetHashCode(); var fiscalQuarterHashCode = fiscalQuarter.GetHashCode(); var genericQuarterHashCode = genericQuarter.GetHashCode(); var calendarMonthHashCode = calendarMonth.GetHashCode(); var fiscalMonthHashCode = fiscalMonth.GetHashCode(); var genericMonthHashCode = genericMonth.GetHashCode(); // Assert calendarUnboundedHashCode.Should().NotBe(fiscalUnboundedHashCode); calendarUnboundedHashCode.Should().NotBe(genericUnboundedHashCode); fiscalUnboundedHashCode.Should().NotBe(genericUnboundedHashCode); calendarYearHashCode.Should().NotBe(fiscalYearHashCode); calendarYearHashCode.Should().NotBe(genericYearHashCode); fiscalYearHashCode.Should().NotBe(genericYearHashCode); calendarQuarterHashCode.Should().NotBe(fiscalQuarterHashCode); calendarQuarterHashCode.Should().NotBe(genericQuarterHashCode); fiscalQuarterHashCode.Should().NotBe(genericQuarterHashCode); calendarMonthHashCode.Should().NotBe(fiscalMonthHashCode); calendarMonthHashCode.Should().NotBe(genericMonthHashCode); fiscalMonthHashCode.Should().NotBe(genericMonthHashCode); }
public static void GetHashCode___Should_be_equal_for_two_GenericQuarters___When_both_objects_have_the_same_property_values() { // Arrange var systemUnderTest1 = A.Dummy <GenericQuarter>(); var systemUnderTest2 = new GenericQuarter(systemUnderTest1.Year, systemUnderTest1.QuarterNumber); // Act var hash1 = systemUnderTest1.GetHashCode(); var hash2 = systemUnderTest2.GetHashCode(); // Assert hash1.Should().Be(hash2); }