public void ShouldCreateDateTimeWithDateTime() { var dateTime = new DateTime(1947, 12, 17, 23, 49, 54, 120, DateTimeKind.Local); var cypherDateTime = new CypherDateTime(dateTime); cypherDateTime.ToDateTime().Should().Be(dateTime); }
public void ShouldBeEqual() { var dateTime1 = new CypherDateTime(1947, 12, 17, 15, 12, 01, 789000000); var dateTime2 = new CypherDateTime(new DateTime(1947, 12, 17, 15, 12, 01, 789, DateTimeKind.Local)); dateTime1.Equals(dateTime2).Should().BeTrue(); }
public void ShouldNotBeEqualToNull() { var dateTime = new CypherDateTime(1947, 12, 17, 15, 12, 01, 789000000); var other = (object)null; dateTime.Equals(other).Should().BeFalse(); }
public void ShouldNotBeEqualToAnotherType() { var dateTime = new CypherDateTime(1947, 12, 17, 15, 12, 01, 789000000); var other = "some string"; dateTime.Equals(other).Should().BeFalse(); }
public void ShouldNotBeEqual() { var dateTime1 = new CypherDateTime(1947, 12, 17, 15, 12, 01, 789000000); var dateTime2 = new CypherDateTime(new DateTime(1947, 12, 17, 15, 12, 01, 788)); dateTime1.Equals(dateTime2).Should().BeFalse(); }
public void ShouldGenerateDifferentHashcode() { var dateTime1 = new CypherDateTime(1947, 12, 17, 15, 12, 01, 789000000); var dateTime2 = new CypherDateTime(new DateTime(1947, 12, 17, 15, 12, 01, 790)); var dateTime3 = new CypherDateTime(-695551678, 788000000); dateTime1.GetHashCode().Should().NotBe(dateTime2.GetHashCode()).And.NotBe(dateTime3.GetHashCode()); }
public void ShouldGenerateSameHashcode() { var dateTime1 = new CypherDateTime(1947, 12, 17, 15, 12, 01, 789000000); var dateTime2 = new CypherDateTime(new DateTime(1947, 12, 17, 15, 12, 01, 789, DateTimeKind.Local)); var dateTime3 = new CypherDateTime(-695551679, 789000000); dateTime1.GetHashCode().Should().Be(dateTime2.GetHashCode()).And.Be(dateTime3.GetHashCode()); }
public void ShouldCreateDateTimeWithRawValues() { var dateTime = new DateTime(1947, 12, 17, 23, 49, 54).AddTicks(1927945); var cypherDateTime = new CypherDateTime(TemporalHelpers.SecondsSinceEpoch(dateTime.Ticks), TemporalHelpers.NanosOfSecond(dateTime.Ticks)); cypherDateTime.ToDateTime().Should().Be(dateTime); }
public void ShouldGenerateCorrectString() { var cypherDateTime = new CypherDateTime(1947, 12, 17, 23, 49, 54, 192794500); var cypherDateTimeStr = cypherDateTime.ToString(); cypherDateTimeStr.Should() .Be( $"DateTime{{epochSeconds: {cypherDateTime.EpochSeconds}, nanosOfSecond: {cypherDateTime.NanosOfSecond}}}"); }
public void ShouldWriteDateTime() { var dateTime = new CypherDateTime(1978, 12, 16, 12, 35, 59, 128000987); var writerMachine = CreateWriterMachine(); var writer = writerMachine.Writer(); writer.Write(dateTime); var readerMachine = CreateReaderMachine(writerMachine.GetOutput()); var reader = readerMachine.Reader(); reader.PeekNextType().Should().Be(PackStream.PackType.Struct); reader.ReadStructHeader().Should().Be(2); reader.ReadStructSignature().Should().Be((byte)'d'); reader.Read().Should().Be(dateTime.EpochSeconds); reader.Read().Should().Be((long)dateTime.NanosOfSecond); }
public void ShouldSendAndReceiveDateTime() { var data = new CypherDateTime(1976, 6, 13, 12, 34, 56, 789012587); TestSendAndReceiveData( "CYPHER runtime=interpreted WITH $x AS x RETURN x, x.year, x.month, x.day, x.hour, x.minute, x.second, x.millisecond, x.microsecond, x.nanosecond", data, new object[] { data, 1976L, 6L, 13L, 12L, 34L, 56L, 789L, 789012L, 789012587L }); }
public void ShouldCreateDateTimeWithDateTimeComponentsWithNanoseconds() { var cypherDateTime = new CypherDateTime(1947, 12, 17, 23, 49, 54, 192794500); cypherDateTime.ToDateTime().Should().Be(new DateTime(1947, 12, 17, 23, 49, 54).AddTicks(1927945)); }
public void ShouldCreateDateTimeWithDateTimeComponents() { var cypherDateTime = new CypherDateTime(1947, 12, 17, 23, 49, 54); cypherDateTime.ToDateTime().Should().Be(new DateTime(1947, 12, 17, 23, 49, 54)); }