public void TestJoin()
        {
            TimeNode tn;
            TimeNode tn1 = new TimeNode ();
            TimeNode tn2 = new TimeNode ();
            tn1.Start = new Time (1000);
            tn1.Stop = new Time (2000);

            /* Lower outbound join */
            tn2.Start = new Time (0);
            tn2.Stop = new Time (900);
            Assert.IsNull (tn1.Join (tn2));

            /* Upper limit join */
            tn2.Start = new Time (2100);
            tn2.Stop = new Time (3000);
            Assert.IsNull (tn1.Join (tn2));

            /* Lower limit join */
            tn2.Start = new Time (0);
            tn2.Stop = new Time (1000);
            tn = tn1.Join (tn2);
            Assert.AreEqual (tn.Start, tn2.Start);
            Assert.AreEqual (tn.Stop, tn1.Stop);

            /* Upper limit join */
            tn2.Start = new Time (2000);
            tn2.Stop = new Time (2100);
            tn = tn1.Join (tn2);
            Assert.AreEqual (tn.Start, tn1.Start);
            Assert.AreEqual (tn.Stop, tn2.Stop);

            /* Upper Join */
            tn2.Start = new Time (1900);
            tn = tn1.Join (tn2);
            Assert.AreEqual (tn.Start, tn1.Start);
            Assert.AreEqual (tn.Stop, tn2.Stop);

            /* Lower Join */
            tn2.Start = new Time (500);
            tn2.Stop = new Time (1500);
            tn = tn1.Join (tn2);
            Assert.AreEqual (tn.Start, tn2.Start);
            Assert.AreEqual (tn.Stop, tn1.Stop);

            /* Whole Join */
            tn2.Start = new Time (500);
            tn2.Stop = new Time (2500);
            tn = tn1.Join (tn2);
            Assert.AreEqual (tn.Start, tn2.Start);
            Assert.AreEqual (tn.Stop, tn2.Stop);
        }
Exemple #2
0
        public void TestJoin()
        {
            TimeNode tn;
            TimeNode tn1 = new TimeNode();
            TimeNode tn2 = new TimeNode();

            tn1.Start = new Time(1000);
            tn1.Stop  = new Time(2000);

            /* Lower outbound join */
            tn2.Start = new Time(0);
            tn2.Stop  = new Time(900);
            Assert.IsNull(tn1.Join(tn2));

            /* Upper limit join */
            tn2.Start = new Time(2100);
            tn2.Stop  = new Time(3000);
            Assert.IsNull(tn1.Join(tn2));

            /* Lower limit join */
            tn2.Start = new Time(0);
            tn2.Stop  = new Time(1000);
            tn        = tn1.Join(tn2);
            Assert.AreEqual(tn.Start, tn2.Start);
            Assert.AreEqual(tn.Stop, tn1.Stop);

            /* Upper limit join */
            tn2.Start = new Time(2000);
            tn2.Stop  = new Time(2100);
            tn        = tn1.Join(tn2);
            Assert.AreEqual(tn.Start, tn1.Start);
            Assert.AreEqual(tn.Stop, tn2.Stop);

            /* Upper Join */
            tn2.Start = new Time(1900);
            tn        = tn1.Join(tn2);
            Assert.AreEqual(tn.Start, tn1.Start);
            Assert.AreEqual(tn.Stop, tn2.Stop);

            /* Lower Join */
            tn2.Start = new Time(500);
            tn2.Stop  = new Time(1500);
            tn        = tn1.Join(tn2);
            Assert.AreEqual(tn.Start, tn2.Start);
            Assert.AreEqual(tn.Stop, tn1.Stop);

            /* Whole Join */
            tn2.Start = new Time(500);
            tn2.Stop  = new Time(2500);
            tn        = tn1.Join(tn2);
            Assert.AreEqual(tn.Start, tn2.Start);
            Assert.AreEqual(tn.Stop, tn2.Stop);
        }