diff options
Diffstat (limited to 'reader/atom/atom_10_test.go')
-rw-r--r-- | reader/atom/atom_10_test.go | 59 |
1 files changed, 58 insertions, 1 deletions
diff --git a/reader/atom/atom_10_test.go b/reader/atom/atom_10_test.go index 1e763ca4..ad897440 100644 --- a/reader/atom/atom_10_test.go +++ b/reader/atom/atom_10_test.go @@ -359,7 +359,7 @@ func TestParseEntrySummaryWithPlainText(t *testing.T) { t.Fatal(err) } - if feed.Entries[0].Content != "<Some text.>" { + if feed.Entries[0].Content != "<Some text.>" { t.Errorf("Incorrect entry content, got: %s", feed.Entries[0].Content) } } @@ -599,6 +599,63 @@ func TestParseInvalidXml(t *testing.T) { } } +func TestParseTitleWithSingleQuote(t *testing.T) { + data := ` + <?xml version="1.0" encoding="utf-8"?> + <feed xmlns="http://www.w3.org/2005/Atom"> + <title>' or ’</title> + <link href="http://example.org/"/> + </feed> + ` + + feed, err := Parse(bytes.NewBufferString(data)) + if err != nil { + t.Fatal(err) + } + + if feed.Title != "' or ’" { + t.Errorf(`Incorrect title, got: %q`, feed.Title) + } +} + +func TestParseTitleWithEncodedSingleQuote(t *testing.T) { + data := ` + <?xml version="1.0" encoding="utf-8"?> + <feed xmlns="http://www.w3.org/2005/Atom"> + <title type="html">Test's Blog</title> + <link href="http://example.org/"/> + </feed> + ` + + feed, err := Parse(bytes.NewBufferString(data)) + if err != nil { + t.Fatal(err) + } + + if feed.Title != "Test's Blog" { + t.Errorf(`Incorrect title, got: %q`, feed.Title) + } +} + +func TestParseTitleWithSingleQuoteAndHTMLType(t *testing.T) { + data := ` + <?xml version="1.0" encoding="utf-8"?> + <feed xmlns="http://www.w3.org/2005/Atom"> + <title type="html">O’Hara</title> + <link href="http://example.org/"/> + </feed> + ` + + feed, err := Parse(bytes.NewBufferString(data)) + if err != nil { + t.Fatal(err) + } + + if feed.Title != "O’Hara" { + t.Errorf(`Incorrect title, got: %q`, feed.Title) + } +} + func TestParseWithHTMLEntity(t *testing.T) { data := ` <?xml version="1.0" encoding="utf-8"?> |