Get AtomParserTests running and passing.

This commit is contained in:
Brent Simmons
2024-09-14 15:03:34 -07:00
parent e1f3da7b09
commit 96cbc51d26
4 changed files with 102 additions and 102 deletions

View File

@@ -40,11 +40,11 @@ public struct FeedParser {
case .rss:
let feed = RSSParser.parsedFeed(with: parserData)
return RSSFeedTransformer.parsedFeed(with: feed)
return RSSFeedTransformer.parsedFeed(with: feed, feedType: .rss)
case .atom:
let feed = AtomParser.parsedFeed(with: parserData)
return RSSFeedTransformer.parsedFeed(with: feed)
return RSSFeedTransformer.parsedFeed(with: feed, feedType: .atom)
case .unknown, .notAFeed:
return nil

View File

@@ -35,6 +35,6 @@ final class RSSAuthor {
func isEmpty() -> Bool {
name != nil || url != nil || avatarURL != nil || emailAddress != nil
name == nil && url == nil && avatarURL == nil && emailAddress == nil
}
}

View File

@@ -11,10 +11,10 @@ import Foundation
struct RSSFeedTransformer {
/// Turn an internal RSSFeed into a public ParsedFeed.
static func parsedFeed(with rssFeed: RSSFeed) -> ParsedFeed {
static func parsedFeed(with feed: RSSFeed, feedType: FeedType) -> ParsedFeed {
let items = parsedItems(rssFeed.articles)
return ParsedFeed(type: .rss, title: rssFeed.title, homePageURL: rssFeed.link, feedURL: rssFeed.urlString, language: rssFeed.language, feedDescription: nil, nextURL: nil, iconURL: nil, faviconURL: nil, authors: nil, expired: false, hubs: nil, items: items)
let items = parsedItems(feed.articles)
return ParsedFeed(type: feedType, title: feed.title, homePageURL: feed.link, feedURL: feed.urlString, language: feed.language, feedDescription: nil, nextURL: nil, iconURL: nil, faviconURL: nil, authors: nil, expired: false, hubs: nil, items: items)
}
}