Exemplo n.º 1
0
        public void CompareTo_SameCalendarAndZone()
        {
            ZonedDateTime value1 = SampleZone.AtStrictly(new LocalDateTime(2011, 1, 2, 10, 30, 0));
            ZonedDateTime value2 = SampleZone.AtStrictly(new LocalDateTime(2011, 1, 2, 10, 30, 0));
            ZonedDateTime value3 = SampleZone.AtStrictly(new LocalDateTime(2011, 1, 2, 10, 45, 0));

            Assert.That(value1.CompareTo(value2), Is.EqualTo(0));
            Assert.That(value1.CompareTo(value3), Is.LessThan(0));
            Assert.That(value3.CompareTo(value2), Is.GreaterThan(0));
        }
Exemplo n.º 2
0
        public void CompareTo_DifferentCalendars_OnlyInstantMatters()
        {
            CalendarSystem islamic = CalendarSystem.GetIslamicCalendar(IslamicLeapYearPattern.Base15, IslamicEpoch.Astronomical);
            ZonedDateTime  value1  = SampleZone.AtStrictly(new LocalDateTime(2011, 1, 2, 10, 30));
            ZonedDateTime  value2  = SampleZone.AtStrictly(new LocalDateTime(1500, 1, 1, 10, 30, islamic));
            ZonedDateTime  value3  = SampleZone.AtStrictly(value1.LocalDateTime.WithCalendar(islamic));

            Assert.That(value1.CompareTo(value2), Is.LessThan(0));
            Assert.That(value2.CompareTo(value1), Is.GreaterThan(0));
            Assert.That(value1.CompareTo(value3), Is.EqualTo(0));
        }
Exemplo n.º 3
0
        public void CompareTo_DifferentZones_OnlyInstantMatters()
        {
            var otherZone = new FixedDateTimeZone(Offset.FromHours(-20));

            ZonedDateTime value1 = SampleZone.AtStrictly(new LocalDateTime(2011, 1, 2, 10, 30));
            // Earlier local time, but later instant
            ZonedDateTime value2 = otherZone.AtStrictly(new LocalDateTime(2011, 1, 2, 5, 30));
            ZonedDateTime value3 = value1.WithZone(otherZone);

            Assert.That(value1.CompareTo(value2), Is.LessThan(0));
            Assert.That(value2.CompareTo(value1), Is.GreaterThan(0));
            Assert.That(value1.CompareTo(value3), Is.EqualTo(0));
        }
Exemplo n.º 4
0
        public void ShouldReportLargerOnCompareToNull()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 17, 0, 0, 0, 0, Zone.Of("Europe/Amsterdam"));

            var comp = dateTime1.CompareTo(null);

            comp.Should().BeGreaterThan(0);
        }
Exemplo n.º 5
0
        public void ShouldThrowOnCompareToOtherType()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 17, 0, 0, 0, 0, Zone.Of("Europe/Amsterdam"));

            var ex = Record.Exception(() => dateTime1.CompareTo(new DateTime(1947, 12, 17)));

            ex.Should().NotBeNull().And.BeOfType <ArgumentException>();
        }
Exemplo n.º 6
0
        public void ShouldReportSmallerOnCompareToDiffOffset()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999900, Zone.Of("Europe/Amsterdam"));
            var dateTime2 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999900, Zone.Of("Europe/London"));

            var comp = dateTime1.CompareTo(dateTime2);

            comp.Should().BeLessThan(0);
        }
Exemplo n.º 7
0
        public void ShouldReportEqualOnCompareTo()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999900, Zone.Of("Europe/Amsterdam"));
            var dateTime2 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999900, Zone.Of("Europe/Amsterdam"));

            var comp = dateTime1.CompareTo(dateTime2);

            comp.Should().Be(0);
        }
Exemplo n.º 8
0
        public void ShouldReportSmallerOnCompareToDiffOffset()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999999, Zone.Of(1800));
            var dateTime2 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999999, Zone.Of(-1799));

            var comp = dateTime1.CompareTo(dateTime2);

            comp.Should().BeLessThan(0);
        }
Exemplo n.º 9
0
        public void ShouldReportEqualOnCompareToDiffOffset()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999999, Zone.Of(1800));
            var dateTime2 = new ZonedDateTime(1947, 12, 17, 0, 59, 59, 999999999, Zone.Of(5400));

            var comp = dateTime1.CompareTo(dateTime2);

            comp.Should().Be(0);
        }
Exemplo n.º 10
0
        public void ShouldReportLargerOnCompareToDiffOffset()
        {
            var dateTime1 = new ZonedDateTime(1947, 12, 17, 23, 59, 59, 999999999, Zone.Of(1800));
            var dateTime2 = new ZonedDateTime(1947, 12, 16, 23, 59, 59, 999999999, Zone.Of(1750));

            var comp = dateTime1.CompareTo(dateTime2);

            comp.Should().BeGreaterThan(0);
        }