diff options
author | 2020-06-29 18:08:19 -0700 | |
---|---|---|
committer | 2020-06-29 18:24:06 -0700 | |
commit | 1d6b0491a75687553fa9c37b68cd5f71aa6fee6e (patch) | |
tree | 94d37bdba69085fe0c45a7ece5faa56e9b330649 /reader/rss/parser_test.go | |
parent | c70bebb2aa686dc534da98bf059f998ba939d0f5 (diff) | |
download | v2-1d6b0491a75687553fa9c37b68cd5f71aa6fee6e.tar.gz v2-1d6b0491a75687553fa9c37b68cd5f71aa6fee6e.tar.zst v2-1d6b0491a75687553fa9c37b68cd5f71aa6fee6e.zip |
Ignore <media:title> in RSS 2.0 feeds
In the vast majority of cases, the default entry title is correct.
Ignoring <media:title> avoid overriding the default title if they are different.
Diffstat (limited to 'reader/rss/parser_test.go')
-rw-r--r-- | reader/rss/parser_test.go | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/reader/rss/parser_test.go b/reader/rss/parser_test.go index e41eec88..16dd1c2d 100644 --- a/reader/rss/parser_test.go +++ b/reader/rss/parser_test.go @@ -136,6 +136,51 @@ func TestParseEntryWithoutTitle(t *testing.T) { } } +func TestParseEntryWithMediaTitle(t *testing.T) { + data := `<?xml version="1.0" encoding="utf-8"?> + <rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/"> + <channel> + <link>https://example.org/</link> + <item> + <title>Entry Title</title> + <link>https://example.org/item</link> + <media:title>Media Title</media:title> + </item> + </channel> + </rss>` + + feed, err := Parse(bytes.NewBufferString(data)) + if err != nil { + t.Fatal(err) + } + + if feed.Entries[0].Title != "Entry Title" { + t.Errorf("Incorrect entry title, got: %q", feed.Entries[0].Title) + } +} + +func TestParseEntryWithDCTitleOnly(t *testing.T) { + data := `<?xml version="1.0" encoding="utf-8"?> + <rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:dc="http://purl.org/dc/elements/1.1/"> + <channel> + <link>https://example.org/</link> + <item> + <dc:title>Entry Title</dc:title> + <link>https://example.org/item</link> + </item> + </channel> + </rss>` + + feed, err := Parse(bytes.NewBufferString(data)) + if err != nil { + t.Fatal(err) + } + + if feed.Entries[0].Title != "Entry Title" { + t.Errorf("Incorrect entry title, got: %q", feed.Entries[0].Title) + } +} + func TestParseEntryWithoutLink(t *testing.T) { data := `<?xml version="1.0" encoding="utf-8"?> <rss version="2.0"> |