示例#1
0
        public void GetRailQueryJason()
        {
            //Arrange
            var route = new Route()
            {
                FromStation = _stoneleigh
            };
            var networkRailRetriever = new NationalRailQuery(route);

            //Assert
            networkRailRetriever.CompletedAsynchCall += () =>
            {
                try
                {
                    Assert.IsTrue(
                        networkRailRetriever.RetrievedScheduleSuccessfully,
                        "Failed to retrieve JSON from Uri");
                    Assert.IsTrue(networkRailRetriever.StationQueryDetails.Trains.Count > 0, "Invalid data returned for Stoneleigh station from network rail");
                    Assert.IsTrue(networkRailRetriever.StationQueryDetails.QueryStation == _stoneleigh, "Invalid query station returned");
                }
                finally
                {
                    EnqueueTestComplete();
                }
            };
            //Act
            networkRailRetriever.UpdateScheduleData();
        }
 public void ThrowErrorOnInvalidStationInputNotOnList()
 {
     //Arrange
     var invalidStation = new Station()
     {
         Name = "Test", Code = "Test"
     };
     //Act
     var nationalRailQuery = new NationalRailQuery(invalidStation, null);
 }
            public void ThrowErrorOnInvalidStationInputGreaterThan3Chars()
            {
                //Arrange
                const string invalidStation = "$%$123";

                NationalRailQuery.Stations.First().Code = invalidStation;
                //Act
                var nationalRailQuery = new NationalRailQuery(_stoneleigh, null);

                NationalRailQuery.Stations.First().Code = invalidStation;
            }
            public void ParseJsonReponseAndCreateTimeTable()
            {
                //Arrange
                var query = new NationalRailQuery();

                //Act
                query.BuildTimeTableData(_jsonData);
                //Assert
                Assert.IsNotNull(query.StationQueryDetails, "Time Table not created correctly");
                Assert.IsTrue(query.StationQueryDetails.Trains.Count == 17, "Train count from sample data is incorrect");
            }
            public void ReadStationXmlandHaveStoneleighStationPresent()
            {
                //Arrange
                NationalRailQuery.BuildStationList();
                IEnumerable <Station> stationQuery =
                    from station in NationalRailQuery.Stations
                    where station.Code == StoneleighRailCode
                    select station;

                //Act
                _stoneleigh = stationQuery.First();
                //Assert
                Assert.IsTrue(NationalRailQuery.Stations.Count == 1, "No Stations have been loaded");
                Assert.IsTrue(_stoneleigh.Code == StoneleighRailCode, "Invalid station loaded in unit test data");
            }
            public void Setup()
            {
                NationalRailQuery.BuildStationList();

                IEnumerable <Station> stationQuery =
                    from station in NationalRailQuery.Stations
                    where station.Code == StoneleighRailCode
                    select station;

                _stoneleigh = stationQuery.First();
                if (_stoneleigh.Code != StoneleighRailCode)
                {
                    throw new ArgumentException("Invaild data loaded in test setup");
                }
            }