예제 #1
0
        public void GetAllStation()
        {
            IDatabase      metroWebDatabase = new MetroWebDatabase();
            List <Station> stationList      = metroWebDatabase.Table <Station>().Select();

            Assert.AreEqual(stationList.Find(station => station.StationId == 101).StationName, "莘庄");
        }
예제 #2
0
        public void InsertUpdateAndDeleteMetroTransfer()
        {
            int       randomInterChangeId = 990000 + new Random().Next(10000);
            IDatabase metroWebDatabase    = new MetroWebDatabase();
            bool      inserted            = metroWebDatabase.Table <MetroTransfer>().Insert(
                new MetroTransfer
            {
                TransferId        = randomInterChangeId,
                FromStationLineId = 10115,
                ToStationLineId   = 20109,
                TimeTransfer      = new TimeSpan(1, 0, 0),
                InterChange       = true
            });

            Assert.IsTrue(inserted);

            List <MetroTransfer> metroTransferList = metroWebDatabase.Table <MetroTransfer>().Select(new MetroTransfer {
                TransferId = randomInterChangeId
            });

            Assert.AreEqual(metroTransferList.Count, 1);
            Assert.AreEqual(metroTransferList[0].TransferId, randomInterChangeId);
            Assert.AreEqual(metroTransferList[0].FromStationLineId, 10115);
            Assert.AreEqual(metroTransferList[0].ToStationLineId, 20109);
            Assert.AreEqual(metroTransferList[0].TimeTransfer, new TimeSpan(1, 0, 0));
            Assert.AreEqual(metroTransferList[0].InterChange, true);

            bool updated = metroWebDatabase.Table <MetroTransfer>().Update(
                new MetroTransfer {
                TransferId = randomInterChangeId
            },
                new MetroTransfer {
                FromStationLineId = 20109, ToStationLineId = 10115, InterChange = false
            }
                );

            Assert.IsTrue(updated);

            metroTransferList = metroWebDatabase.Table <MetroTransfer>().Select(new MetroTransfer {
                TransferId = randomInterChangeId
            });
            Assert.AreEqual(metroTransferList.Count, 1);
            Assert.AreEqual(metroTransferList[0].TransferId, randomInterChangeId);
            Assert.AreEqual(metroTransferList[0].FromStationLineId, 20109);
            Assert.AreEqual(metroTransferList[0].ToStationLineId, 10115);
            Assert.AreEqual(metroTransferList[0].TimeTransfer, new TimeSpan(1, 0, 0));
            Assert.AreEqual(metroTransferList[0].InterChange, false);

            bool deleted = metroWebDatabase.Table <MetroTransfer>().Delete(new MetroTransfer {
                TransferId = randomInterChangeId
            });

            Assert.IsTrue(deleted);

            metroTransferList = metroWebDatabase.Table <MetroTransfer>().Select(new MetroTransfer {
                TransferId = randomInterChangeId
            });
            Assert.AreEqual(metroTransferList.Count, 0);
        }
예제 #3
0
        public void InsertUpdateAndDeleteLine()
        {
            int       randomLineId     = 990000 + new Random().Next(10000);
            IDatabase metroWebDatabase = new MetroWebDatabase();
            bool      inserted         = metroWebDatabase.Table <Line>().Insert(
                new Line
            {
                LineId            = randomLineId,
                LineName          = "专线",
                LineFromStationId = 128,
                LineToStationId   = 101
            });

            Assert.IsTrue(inserted);

            List <Line> lineList = metroWebDatabase.Table <Line>().Select(new Line {
                LineId = randomLineId
            });

            Assert.AreEqual(lineList.Count, 1);
            Assert.AreEqual(lineList[0].LineId, randomLineId);
            Assert.AreEqual(lineList[0].LineName, "专线");
            Assert.AreEqual(lineList[0].LineFromStationId, 128);
            Assert.AreEqual(lineList[0].LineToStationId, 101);

            bool updated = metroWebDatabase.Table <Line>().Update(
                new Line {
                LineId = randomLineId
            },
                new Line {
                LineName = "不是专线"
            }
                );

            Assert.IsTrue(updated);

            lineList = metroWebDatabase.Table <Line>().Select(new Line {
                LineId = randomLineId
            });
            Assert.AreEqual(lineList.Count, 1);
            Assert.AreEqual(lineList[0].LineId, randomLineId);
            Assert.AreEqual(lineList[0].LineName, "不是专线");
            Assert.AreEqual(lineList[0].LineFromStationId, 128);
            Assert.AreEqual(lineList[0].LineToStationId, 101);

            bool deleted = metroWebDatabase.Table <Line>().Delete(new Line {
                LineId = randomLineId
            });

            Assert.IsTrue(deleted);

            lineList = metroWebDatabase.Table <Line>().Select(new Line {
                LineId = randomLineId
            });
            Assert.AreEqual(lineList.Count, 0);
        }
예제 #4
0
        public void GetStation101莘庄()
        {
            IDatabase      metroWebDatabase = new MetroWebDatabase();
            List <Station> stationList      = metroWebDatabase.Table <Station>().Select(new Station {
                StationId = 101, StationName = "莘庄"
            });

            Assert.AreEqual(stationList.Count, 1);
            Assert.AreEqual(stationList[0].StationId, 101);
            Assert.AreEqual(stationList[0].StationName, "莘庄");
        }
예제 #5
0
        public void GetLine101()
        {
            IDatabase   metroWebDatabase = new MetroWebDatabase();
            List <Line> lineList         = metroWebDatabase.Table <Line>().Select(new Line {
                LineId = 101
            });

            Assert.AreEqual(lineList.Count, 1);
            Assert.AreEqual(lineList[0].LineId, 101);
            Assert.AreEqual(lineList[0].LineName, "1号线");
            Assert.AreEqual(lineList[0].LineFromStationId, 128);
            Assert.AreEqual(lineList[0].LineToStationId, 101);
        }
예제 #6
0
        public void GetMetroTransfer101020101()
        {
            IDatabase            metroWebDatabase  = new MetroWebDatabase();
            List <MetroTransfer> metroTransferList = metroWebDatabase.Table <MetroTransfer>().Select(new MetroTransfer {
                TransferId = 101020101
            });

            Assert.AreEqual(metroTransferList.Count, 1);
            Assert.AreEqual(metroTransferList[0].TransferId, 101020101);
            Assert.AreEqual(metroTransferList[0].FromStationLineId, 10116);
            Assert.AreEqual(metroTransferList[0].ToStationLineId, 20111);
            Assert.AreEqual(metroTransferList[0].TimeTransfer, new TimeSpan(0, 3, 0));
            Assert.AreEqual(metroTransferList[0].InterChange, true);
        }
예제 #7
0
        public void GetStationLine10101()
        {
            IDatabase          metroWebDatabase = new MetroWebDatabase();
            List <StationLine> stationLineList  = metroWebDatabase.Table <StationLine>().Select(new StationLine {
                StationLineId = 10101
            });

            Assert.AreEqual(stationLineList.Count, 1);
            Assert.AreEqual(stationLineList[0].StationLineId, 10101);
            Assert.AreEqual(stationLineList[0].StationId, 128);
            Assert.AreEqual(stationLineList[0].LineId, 101);
            Assert.AreEqual(stationLineList[0].TimeWait, new TimeSpan(0, 4, 5));
            Assert.AreEqual(stationLineList[0].TimeArrived, new TimeSpan(0, 0, 0));
            Assert.AreEqual(stationLineList[0].StartTime, DateTime.Today.Add(new TimeSpan(5, 30, 0)));
            Assert.AreEqual(stationLineList[0].EndTime, DateTime.Today.Add(new TimeSpan(22, 30, 0)));
        }
예제 #8
0
        public void InsertUpdateAndDeleteStation()
        {
            int       randomStationId  = 990000 + new Random().Next(10000);
            IDatabase metroWebDatabase = new MetroWebDatabase();
            bool      inserted         = metroWebDatabase.Table <Station>().Insert(new Station {
                StationId = randomStationId, StationName = "我家"
            });

            Assert.IsTrue(inserted);

            List <Station> stationList = metroWebDatabase.Table <Station>().Select(new Station {
                StationId = randomStationId
            });

            Assert.AreEqual(stationList.Count, 1);
            Assert.AreEqual(stationList[0].StationId, randomStationId);
            Assert.AreEqual(stationList[0].StationName, "我家");

            bool updated = metroWebDatabase.Table <Station>().Update(
                new Station {
                StationId = randomStationId
            },
                new Station {
                StationId = randomStationId + 1, StationName = "不是我家"
            }
                );

            Assert.IsTrue(updated);

            stationList = metroWebDatabase.Table <Station>().Select(new Station {
                StationId = randomStationId + 1
            });
            Assert.AreEqual(stationList.Count, 1);
            Assert.AreEqual(stationList[0].StationId, randomStationId + 1);
            Assert.AreEqual(stationList[0].StationName, "不是我家");

            bool deleted = metroWebDatabase.Table <Station>().Delete(new Station {
                StationId = randomStationId + 1
            });

            Assert.IsTrue(deleted);

            stationList = metroWebDatabase.Table <Station>().Select(new Station {
                StationId = randomStationId + 1
            });
            Assert.AreEqual(stationList.Count, 0);
        }
예제 #9
0
        public void InsertUpdateAndDeleteStationLine()
        {
            int       randomStationLineId = 990000 + new Random().Next(10000);
            IDatabase metroWebDatabase    = new MetroWebDatabase();
            bool      inserted            = metroWebDatabase.Table <StationLine>().Insert(
                new StationLine
            {
                StationLineId = randomStationLineId,
                StationId     = 128,
                LineId        = 101,
                TimeWait      = new TimeSpan(1, 0, 0),
                TimeArrived   = new TimeSpan(2, 0, 0),
                StartTime     = DateTime.Today.Add(new TimeSpan(1, 00, 0)),
                EndTime       = DateTime.Today.Add(new TimeSpan(3, 0, 0))
            });

            Assert.IsTrue(inserted);

            List <StationLine> stationLineList = metroWebDatabase.Table <StationLine>().Select(new StationLine {
                StationLineId = randomStationLineId
            });

            Assert.AreEqual(stationLineList.Count, 1);
            Assert.AreEqual(stationLineList[0].StationLineId, randomStationLineId);
            Assert.AreEqual(stationLineList[0].StationId, 128);
            Assert.AreEqual(stationLineList[0].LineId, 101);
            Assert.AreEqual(stationLineList[0].TimeWait, new TimeSpan(1, 0, 0));
            Assert.AreEqual(stationLineList[0].TimeArrived, new TimeSpan(2, 0, 0));
            Assert.AreEqual(stationLineList[0].StartTime, DateTime.Today.Add(new TimeSpan(1, 00, 0)));
            Assert.AreEqual(stationLineList[0].EndTime, DateTime.Today.Add(new TimeSpan(3, 0, 0)));

            bool updated = metroWebDatabase.Table <StationLine>().Update(
                new StationLine {
                StationLineId = randomStationLineId
            },
                new StationLine {
                EndTime = DateTime.Today.Add(new TimeSpan(23, 0, 0))
            }
                );

            Assert.IsTrue(updated);

            stationLineList = metroWebDatabase.Table <StationLine>().Select(new StationLine {
                StationLineId = randomStationLineId
            });
            Assert.AreEqual(stationLineList.Count, 1);
            Assert.AreEqual(stationLineList[0].StationLineId, randomStationLineId);
            Assert.AreEqual(stationLineList[0].StationId, 128);
            Assert.AreEqual(stationLineList[0].LineId, 101);
            Assert.AreEqual(stationLineList[0].TimeWait, new TimeSpan(1, 0, 0));
            Assert.AreEqual(stationLineList[0].TimeArrived, new TimeSpan(2, 0, 0));
            Assert.AreEqual(stationLineList[0].StartTime, DateTime.Today.Add(new TimeSpan(1, 00, 0)));
            Assert.AreEqual(stationLineList[0].EndTime, DateTime.Today.Add(new TimeSpan(23, 0, 0)));

            bool deleted = metroWebDatabase.Table <StationLine>().Delete(new StationLine {
                StationLineId = randomStationLineId
            });

            Assert.IsTrue(deleted);

            stationLineList = metroWebDatabase.Table <StationLine>().Select(new StationLine {
                StationLineId = randomStationLineId
            });
            Assert.AreEqual(stationLineList.Count, 0);
        }
예제 #10
0
 internal MetroWebEntity()
 {
     this.metroWebDatabase = new MetroWebDatabase();
 }