public void ReadItems_Should_Return_0_News_Items_From_Unknown_Feed_Type() { // Arrange XmlDocument xmlDoc = FakeXMLFeed.GetFakeXMLFeed("unknown"); RSSFeedReader rssFeedReader = new RSSFeedReader(xmlDoc); // Act var items = rssFeedReader.ReadItems(); // Assert Assert.AreEqual(0, items.Count); }
public Feed CreateFeedFromXmlDoc(XmlDocument xmlDoc, string userName) { Feed feed = null; if (xmlDoc != null) { RSSFeedReader feedReader = new RSSFeedReader(xmlDoc); feed = feedReader.ReadFeedDetails(); } if (feed != null) { feed.Url = xmlDoc.BaseURI; feed.UserName = userName; Save(feed); } return feed; }
private FeedReaderViewModel CreateViewModel(int? Id, string userName) { FeedReaderViewModel viewModel = new FeedReaderViewModel(); viewModel.Feeds = FeedService.GetUsersFeeds(userName) .OrderBy(f => f.Name) .ToList(); viewModel.CurrentFeed = viewModel.Feeds.Find(f => f.FeedId == Id); if (viewModel.CurrentFeedId == 0 && viewModel.Feeds.Count > 0) // if feed wasn't specified or found then set current feed to first in list { viewModel.CurrentFeed = viewModel.Feeds[0]; } if (viewModel.CurrentFeedId > 0) { XmlDocument xmlDoc = FeedLoader.LoadXML(viewModel.CurrentFeed.Url); if (xmlDoc != null) { RSSFeedReader feedReader = new RSSFeedReader(xmlDoc); viewModel.NewsItems = feedReader.ReadItems(); } } return viewModel; }