示例#1
0
        public void WithOffset_CrossDates()
        {
            OffsetDateTime noon          = new OffsetDateTime(new LocalDateTime(2017, 8, 22, 12, 0, 0), Offset.FromHours(0));
            OffsetDateTime previousNight = noon.WithOffset(Offset.FromHours(-14));
            OffsetDateTime nextMorning   = noon.WithOffset(Offset.FromHours(14));

            Assert.AreEqual(new LocalDateTime(2017, 8, 21, 22, 0, 0), previousNight.LocalDateTime);
            Assert.AreEqual(new LocalDateTime(2017, 8, 23, 2, 0, 0), nextMorning.LocalDateTime);
        }
示例#2
0
        public void WithOffset()
        {
            LocalDateTime  morning   = new LocalDateTime(2014, 1, 31, 9, 30);
            OffsetDateTime original  = new OffsetDateTime(morning, Offset.FromHours(-8));
            LocalDateTime  evening   = new LocalDateTime(2014, 1, 31, 19, 30);
            Offset         newOffset = Offset.FromHours(2);
            OffsetDateTime expected  = new OffsetDateTime(evening, newOffset);

            Assert.AreEqual(expected, original.WithOffset(newOffset));
        }
        public void localdatetime_to_offset() {
            var localDateTime = new LocalDateTime(2016, 1, 21, 20, 6).WithOffset(Offset.FromHours(-5));
            //var tz = DateTimeZoneProviders.Tzdb["America/New_York"];
            var sourceOffsetDateTime = new OffsetDateTime(new LocalDateTime(2016, 1, 21, 20, 6), Offset.FromHours(-5));
            var targetOffset = Offset.FromHours(-10);
            var targetDateTime = sourceOffsetDateTime.WithOffset(targetOffset);

            Assert.Equal("2016-01-21T20:06:00-05", sourceOffsetDateTime.ToString());
            Assert.Equal("2016-01-21T15:06:00-10", targetDateTime.ToString());
        }
示例#4
0
        public void WithOffset()
        {
            LocalDateTime  localDateTime = new LocalDateTime(1985, 10, 26, 1, 18);
            Offset         offset        = Offset.FromHours(-3);
            OffsetDateTime original      = new OffsetDateTime(localDateTime, offset);
            OffsetDateTime updated       = Snippet.For(original.WithOffset(Offset.FromHours(-2)));

            Assert.AreEqual(new LocalDateTime(1985, 10, 26, 2, 18), updated.LocalDateTime);
            Assert.AreEqual(Offset.FromHours(-2), updated.Offset);
        }
示例#5
0
        public void WithOffset_TwoDaysForwardAndBack()
        {
            // Go from UTC-18 to UTC+18
            OffsetDateTime night   = new OffsetDateTime(new LocalDateTime(2017, 8, 21, 18, 0, 0), Offset.FromHours(-18));
            OffsetDateTime morning = night.WithOffset(Offset.FromHours(18));

            Assert.AreEqual(new LocalDateTime(2017, 8, 23, 6, 0, 0), morning.LocalDateTime);
            OffsetDateTime backAgain = morning.WithOffset(Offset.FromHours(-18));

            Assert.AreEqual(night, backAgain);
        }
        public void localdatetime_to_offset()
        {
            var localDateTime = new LocalDateTime(2016, 1, 21, 20, 6).WithOffset(Offset.FromHours(-5));
            //var tz = DateTimeZoneProviders.Tzdb["America/New_York"];
            var sourceOffsetDateTime = new OffsetDateTime(new LocalDateTime(2016, 1, 21, 20, 6), Offset.FromHours(-5));
            var targetOffset         = Offset.FromHours(-10);
            var targetDateTime       = sourceOffsetDateTime.WithOffset(targetOffset);

            Assert.Equal("2016-01-21T20:06:00-05", sourceOffsetDateTime.ToString());
            Assert.Equal("2016-01-21T15:06:00-10", targetDateTime.ToString());
        }
示例#7
0
 public OffsetDateTime WithOffset_SameLocalDay() => SampleEarlier.WithOffset(LargePositiveOffset);
 public OffsetDateTime WithOffset_SameLocalDay()
 {
     // This just about stays within the same local day
     return(SampleEarlier.WithOffset(LargePositiveOffset));
 }
示例#9
0
 public void WithOffset()
 {
     LocalDateTime morning = new LocalDateTime(2014, 1, 31, 9, 30);
     OffsetDateTime original = new OffsetDateTime(morning, Offset.FromHours(-8));
     LocalDateTime evening = new LocalDateTime(2014, 1, 31, 19, 30);
     Offset newOffset = Offset.FromHours(2);
     OffsetDateTime expected = new OffsetDateTime(evening, newOffset);
     Assert.AreEqual(expected, original.WithOffset(newOffset));
 }
 public void WithOffset_SameLocalDay()
 {
     // This just about stays within the same local day
     SampleEarlier.WithOffset(LargePositiveOffset).Consume();
 }