def test_entry_authors_added_on_update(session, feed): entry = Entry( title="Title", feed=feed, link="http://test.com/entry1", guid="qwertyuiop" ) authorstring = entry.create_author_string() assert authorstring == "" assert len(entry.authors) == 0 author = dict(name="Test Author2", email="*****@*****.**") item = dict(authors=[author], title="Title 2", link=entry.link) assert entry.title != item["title"] e, a = RssItemParser(item, feed, entry=entry).parse() assert e is not None assert len(e.authors) == 1 assert e.authors[0].name == author["name"] assert e.authors[0].email == author["email"] new_authorstring = entry.create_author_string() assert new_authorstring == author["name"] assert entry.title == item["title"]
def test_entry_authors_updated(session, feed): author1 = AuthorFactory() entry = Entry(title="Title", feed=feed, link="http://test.com", guid="asdfghjkl") entry.authors.append(author1) authorstring = entry.create_author_string() author2 = dict(name="Jane Doe", email="*****@*****.**") item = dict(authors=[author2], title="Title 2", link=entry.link) e, a = RssItemParser(item, feed, entry=entry).parse() assert e is not None assert len(e.authors) == 2 assert e.authors[0] == author1 assert e.authors[1].name == author2["name"] assert len(entry.authors) == 2 new_authorstring = entry.create_author_string() assert new_authorstring == authorstring + " and " + author2["name"] assert entry.title == item["title"]