示例#1
0
        public void TestAddTransfer()
        {
            var db = new TransfersDb(256);

            db.AddTransfer(0, 1, 60);

            var enumeration = db.GetTransferEnumerator();

            Assert.IsTrue(enumeration.MoveTo(0));
            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(60, enumeration.Seconds);
            Assert.AreEqual(1, enumeration.Stop);
            Assert.IsTrue(enumeration.MoveTo(1));
            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(60, enumeration.Seconds);
            Assert.AreEqual(0, enumeration.Stop);

            db.AddTransfer(0, 2, 61);
            db.AddTransfer(1, 2, 62);
            db.AddTransfer(2, 4, 63);
            db.AddTransfer(2, 3, 64);
            db.AddTransfer(4, 5, 65);

            enumeration = db.GetTransferEnumerator();

            Assert.IsTrue(enumeration.MoveTo(0));
            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(60, enumeration.Seconds);
            Assert.AreEqual(1, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(61, enumeration.Seconds);
            Assert.AreEqual(2, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveTo(1));
            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(60, enumeration.Seconds);
            Assert.AreEqual(0, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(62, enumeration.Seconds);
            Assert.AreEqual(2, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveTo(2));
            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(61, enumeration.Seconds);
            Assert.AreEqual(0, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(62, enumeration.Seconds);
            Assert.AreEqual(1, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(63, enumeration.Seconds);
            Assert.AreEqual(4, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(64, enumeration.Seconds);
            Assert.AreEqual(3, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveTo(4));
            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(63, enumeration.Seconds);
            Assert.AreEqual(2, enumeration.Stop);

            Assert.IsTrue(enumeration.MoveNext());
            Assert.AreEqual(65, enumeration.Seconds);
            Assert.AreEqual(5, enumeration.Stop);
        }