public void GetPreviousPeriodTest()
        {
            var readOnlyTimeBlock = new TimeBlock(_start, _duration, true);

            Assert.IsTrue(readOnlyTimeBlock.GetPreviousBlock().IsReadOnly);

            var timeBlock = new TimeBlock(_start, _duration);

            Assert.AreEqual(timeBlock.Start, _start);
            Assert.AreEqual(timeBlock.End, _end);
            Assert.AreEqual(timeBlock.Duration, _duration);

            var previousTimeBlock = timeBlock.GetPreviousBlock();

            Assert.AreEqual(previousTimeBlock.Start, _start.Subtract(_duration));
            Assert.AreEqual(previousTimeBlock.End, _start);
            Assert.AreEqual(previousTimeBlock.Duration, _duration);

            var previousOffset          = TimeSpan.FromHours(1).Negate();
            var previousOffsetTimeBlock = timeBlock.GetPreviousBlock(previousOffset);

            previousOffsetTimeBlock.Start.Should().Be(_start.Subtract(_duration).Add(previousOffset));
            previousOffsetTimeBlock.End.Should().Be(_end.Subtract(_duration).Add(previousOffset));
            previousOffsetTimeBlock.Duration.Should().Be(_duration);
        }
Beispiel #2
0
        public void GetPreviousPeriodTest() {
            var readOnlyTimeBlock = new TimeBlock(_start, _duration, true);
            Assert.IsTrue(readOnlyTimeBlock.GetPreviousBlock().IsReadOnly);

            var timeBlock = new TimeBlock(_start, _duration);

            Assert.AreEqual(timeBlock.Start, _start);
            Assert.AreEqual(timeBlock.End, _end);
            Assert.AreEqual(timeBlock.Duration, _duration);

            var previousTimeBlock = timeBlock.GetPreviousBlock();
            Assert.AreEqual(previousTimeBlock.Start, _start.Subtract(_duration));
            Assert.AreEqual(previousTimeBlock.End, _start);
            Assert.AreEqual(previousTimeBlock.Duration, _duration);

            var previousOffset = TimeSpan.FromHours(1).Negate();
            var previousOffsetTimeBlock = timeBlock.GetPreviousBlock(previousOffset);

            previousOffsetTimeBlock.Start.Should().Be(_start.Subtract(_duration).Add(previousOffset));
            previousOffsetTimeBlock.End.Should().Be(_end.Subtract(_duration).Add(previousOffset));
            previousOffsetTimeBlock.Duration.Should().Be(_duration);
        }