예제 #1
0
        public void ParserDoesntReturnEmptyGtfsFeedProperties()
        {
            GtfsFeed feed = _sut.Parse(FEED_PATH);

            Assert.NotNull(feed.Agencies);
            Assert.NotNull(feed.Calendars);
            Assert.NotNull(feed.CalendarDates);
            Assert.NotNull(feed.FareAttributes);
            Assert.NotNull(feed.FareRules);
            Assert.NotNull(feed.FeedInfos);
            Assert.NotNull(feed.Frequencies);
            Assert.NotNull(feed.Routes);
            Assert.NotNull(feed.Shapes);
            Assert.NotNull(feed.Stops);
            Assert.NotNull(feed.StopTimes);
            Assert.NotNull(feed.Transfers);
            Assert.NotNull(feed.Trips);
        }
        public void WhenAllFilesAreParsedAllRequiredFilesShoulNotBeEmpty()
        {
            var parser = new GtfsFeedParser();
            var feed   = parser.Parse(_visitorPathFixture.GoodFeedPath);
            RequiredFileVisitor sut = new RequiredFileVisitor();

            feed.Accept(sut);

            Assert.True(sut.IsValid);
        }
        public void WhenFeedPathMissesRequiredFilesThenValidatorReportsNotValid()
        {
            var parser = new GtfsFeedParser();
            var feed   = parser.Parse(_visitorPathFixture.BadFeedPath);
            RequiredFileVisitor sut = new RequiredFileVisitor();

            feed.Accept(sut);
            PrintUnparsedFiles(sut);

            Assert.False(sut.IsValid);
        }
        public void GoodFeedPathreturnsNoUnparsedFileAndIsValid()
        {
            var parser = new GtfsFeedParser();
            var feed   = parser.Parse(_visitorPathFixture.GoodFeedPath);
            RequiredFileVisitor sut = new RequiredFileVisitor();

            feed.Accept(sut);
            PrintUnparsedFiles(sut);

            Assert.True(sut.UnparsedFiles.Count == 0);
            Assert.True(sut.IsValid);
        }
        public void VisitorShouldReportMissingRequiredFileNames()
        {
            var parser = new GtfsFeedParser();
            var feed   = parser.Parse(_visitorPathFixture.NonExistingFeedPath);
            RequiredFileVisitor sut = new RequiredFileVisitor();

            feed.Accept(sut);
            PrintUnparsedFiles(sut);

            Assert.Contains(SupportedFileNames.Agency, sut.UnparsedFiles);
            Assert.Contains(SupportedFileNames.Stops, sut.UnparsedFiles);
            Assert.Contains(SupportedFileNames.Routes, sut.UnparsedFiles);
            Assert.Contains(SupportedFileNames.Trips, sut.UnparsedFiles);
            Assert.Contains(SupportedFileNames.StopTimes, sut.UnparsedFiles);
            Assert.Contains(SupportedFileNames.Calendar, sut.UnparsedFiles);
        }