public static void Equals___Should_return_false___When_item1_and_item2_have_the_same_Ticks_but_different_Kind() { // Arrange var systemUnderTest = new DateTimeEqualityComparer(); var utcDateTime = DateTime.UtcNow; var localDateTime = new DateTime(utcDateTime.Ticks, DateTimeKind.Local); var unspecifiedDateTime = new DateTime(utcDateTime.Ticks, DateTimeKind.Unspecified); // Act var actual1 = systemUnderTest.Equals(utcDateTime, localDateTime); var actual2 = systemUnderTest.Equals(utcDateTime, unspecifiedDateTime); var actual3 = systemUnderTest.Equals(localDateTime, unspecifiedDateTime); // Assert actual1.Should().BeFalse(); actual2.Should().BeFalse(); actual3.Should().BeFalse(); }
public static void Equals___Should_return_true___When_both_items_are_the_same_object_reference() { // Arrange var systemUnderTest = new DateTimeEqualityComparer(); var utcDateTime = DateTime.UtcNow; var localDateTime = DateTime.Now; var unspecifiedDateTime = new DateTime(DateTime.UtcNow.Ticks, DateTimeKind.Unspecified); // Act var actual1 = systemUnderTest.Equals(utcDateTime, utcDateTime); var actual2 = systemUnderTest.Equals(localDateTime, localDateTime); var actual3 = systemUnderTest.Equals(unspecifiedDateTime, unspecifiedDateTime); // Assert actual1.Should().BeTrue(); actual2.Should().BeTrue(); actual3.Should().BeTrue(); }
public static void Equals___Should_return_false___When_item1_and_item2_have_different_Ticks_and_same_Kind() { // Arrange var systemUnderTest = new DateTimeEqualityComparer(); var utcDateTime1 = DateTime.UtcNow; var localDateTime1 = DateTime.Now; var unspecifiedDateTime1 = new DateTime(DateTime.UtcNow.Ticks, DateTimeKind.Unspecified); var utcDateTime2 = utcDateTime1.AddTicks(1); var localDateTime2 = localDateTime1.AddTicks(1); var unspecifiedDateTime2 = unspecifiedDateTime1.AddTicks(1); // Act var actual1 = systemUnderTest.Equals(utcDateTime1, utcDateTime2); var actual2 = systemUnderTest.Equals(localDateTime1, localDateTime2); var actual3 = systemUnderTest.Equals(unspecifiedDateTime1, unspecifiedDateTime2); // Assert actual1.Should().BeFalse(); actual2.Should().BeFalse(); actual3.Should().BeFalse(); }
public static void Equals___Should_return_true___When_item1_and_item2_have_the_same_Ticks_and_same_Kind() { // Arrange var systemUnderTest = new DateTimeEqualityComparer(); var item1a = DateTime.UtcNow; var item1b = new DateTime(item1a.Ticks, item1a.Kind); var item2a = DateTime.Now; var item2b = new DateTime(item2a.Ticks, item2a.Kind); var item3a = new DateTime(DateTime.UtcNow.Ticks, DateTimeKind.Unspecified); var item3b = new DateTime(item3a.Ticks, item3a.Kind); // Act var actual1 = systemUnderTest.Equals(item1a, item1b); var actual2 = systemUnderTest.Equals(item2a, item2b); var actual3 = systemUnderTest.Equals(item3a, item3b); // Assert actual1.Should().BeTrue(); actual2.Should().BeTrue(); actual3.Should().BeTrue(); }