Esempio n. 1
0
        public void Union_OverlappingStart()
        {
            var timeline1 = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)));
            var timeline2 = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 5, 0, 0)));

            var actual   = (timeline1 | timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0))).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }
        public void Intersect_Equal()
        {
            var timeline1 = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)));
            var timeline2 = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)));

            var actual   = (timeline1 & timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0))).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }
Esempio n. 3
0
        public void Add_ToEmpty()
        {
            var timeline1 = new TimelinePayload <KeyCountPayload>();
            var timeline2 = new TimelinePayload <KeyCountPayload>(new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 3, 0, 0)).AddPayload(new KeyCountPayload("B", 1.5m)));

            var actual   = (timeline1 + timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new[]
            {
                new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 3, 0, 0)).AddPayload(new KeyCountPayload("B", 1.5m)),
            }).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }
Esempio n. 4
0
        public void Union_Empty()
        {
            var timeline1 = new TimelineMask(TimeZones.Local);
            var timeline2 = new TimelineMask(TimeZones.Local, new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 3, 0, 0)));

            var actual   = (timeline1 | timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new[]
            {
                new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 3, 0, 0)),
            }).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }
        public void Add_TouchingStart()
        {
            var timeline1 = new TimelinePayload <StringPayload>(new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)).AddPayload(new StringPayload("Craft")));
            var timeline2 = new TimelinePayload <StringPayload>(new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 4, 0, 0)).AddPayload(new StringPayload("Craft")));

            var actual   = (timeline1 + timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new[]
            {
                new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)).AddPayload(new StringPayload("Craft")),
            }).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }
Esempio n. 6
0
        public void Add_OverlappingStart()
        {
            var timeline1 = new TimelinePayload <KeyCountPayload>(new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)).AddPayload(new KeyCountPayload("Craft", 1.5m)));
            var timeline2 = new TimelinePayload <KeyCountPayload>(new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 5, 0, 0)).AddPayload(new KeyCountPayload("Craft", 1.5m)));

            var actual   = (timeline1 + timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new[]
            {
                new LocalInterval(new LocalDateTime(2008, 1, 1, 0, 0), new LocalDateTime(2008, 1, 4, 0, 0)).AddPayload(new KeyCountPayload("Craft", 1.5m)),
                new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 5, 0, 0)).AddPayload(new KeyCountPayload("Craft", 3.0m)),
                new LocalInterval(new LocalDateTime(2008, 1, 5, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)).AddPayload(new KeyCountPayload("Craft", 1.5m)),
            }).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }
        public void Add_Outside()
        {
            var timeline1 = new TimelinePayload <StringPayload>(new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)).AddPayload(new StringPayload("A")));
            var timeline2 = new TimelinePayload <StringPayload>(new LocalInterval(new LocalDateTime(2008, 1, 3, 0, 0), new LocalDateTime(2008, 1, 9, 0, 0)).AddPayload(new StringPayload("B")));

            var actual   = (timeline1 + timeline2).GetIntervals();
            var expected = new TimelineMask(TimeZones.Local, new[]
            {
                // TODO: Hmmm....
                new LocalInterval(new LocalDateTime(2008, 1, 3, 0, 0), new LocalDateTime(2008, 1, 4, 0, 0)).AddPayload(new StringPayload("B")),
                new LocalInterval(new LocalDateTime(2008, 1, 4, 0, 0), new LocalDateTime(2008, 1, 8, 0, 0)).AddPayload(new StringPayload("A")),
                new LocalInterval(new LocalDateTime(2008, 1, 8, 0, 0), new LocalDateTime(2008, 1, 9, 0, 0)).AddPayload(new StringPayload("B")),
            }).GetIntervals();

            Assert.That(TimeMath.Equals(expected, actual), Is.True);
        }