""" Doctest unit tests for module L{blogger} """ def test_get_blog(): """ get_blog() mimics a singleton by always returning the same object. Function(s) tested: - L{blogger.get_blog} >>> from blogger import get_blog >>> blog1 = get_blog() >>> blog2 = get_blog() >>> id(blog1) == id(blog2) True """ def test_get_feed_title(): """ Can retrieve the feed title. Method(s) tested: - L{blogger.Blogger.get_title} >>> from blogger import get_blog >>> blog = get_blog() >>> print blog.get_title() fitnessetesting """ def test_get_feed_posting_url(): """ Can retrieve the feed posting URL. Method(s) tested: - L{blogger.Blogger.get_feed_posting_url} >>> from blogger import get_blog >>> blog = get_blog() >>> print blog.get_feed_posting_url() http://www.blogger.com/atom/9276918 """ def test_get_feed_posting_host(): """ Can retrieve the feed posting host. Method(s) tested: - L{blogger.Blogger.get_feed_posting_host} >>> from blogger import get_blog >>> blog = get_blog() >>> print blog.get_feed_posting_host() www.blogger.com """ def test_delete_all_entries(): """ Deleting all entries results in no entries in the blog. Method(s) tested: - L{blogger.Blogger.delete_all_entries} - L{blogger.Blogger.get_num_entries} >>> from blogger import get_blog >>> blog = get_blog() >>> blog.delete_all_entries() >>> print blog.get_num_entries() 0 """ def test_delete_single_entry(): """ Deleting a single entry by index results in no entries in the blog. Method(s) tested: - L{blogger.Blogger.delete_all_entries} - L{blogger.Blogger.delete_nth_entry} - L{blogger.Blogger.post_new_entry} - L{blogger.Blogger.get_num_entries} >>> from blogger import get_blog >>> blog = get_blog() >>> blog.delete_all_entries() >>> print blog.get_num_entries() 0 >>> title = "Test delete single entry title" >>> content = "Test delete single entry content" >>> rc = blog.post_new_entry(title, content) >>> print rc True >>> print blog.get_num_entries() 1 >>> rc = blog.delete_nth_entry(1) >>> print rc True >>> print blog.get_num_entries() 0 """ def test_post_new_entry(): """ Posting new entry results in valid entry and increases the number of entries by 1. Method(s) tested: - L{blogger.Blogger.post_new_entry} - L{blogger.Blogger.get_nth_entry_title} - L{blogger.Blogger.get_nth_entry_content_strip_html} - L{blogger.Blogger.get_num_entries} >>> from blogger import get_blog >>> blog = get_blog() >>> init_num_entries = blog.get_num_entries() >>> rc = blog.post_new_entry("Test title", "Test content") >>> print rc True >>> print blog.get_nth_entry_title(1) Test title >>> print blog.get_nth_entry_content_strip_html(1) Test content >>> num_entries = blog.get_num_entries() >>> num_entries == init_num_entries + 1 True """ def test_post_single_entry(): """ Posting single entry results in single valid entry. Method(s) tested: - L{blogger.Blogger.delete_all_entries} - L{blogger.Blogger.post_new_entry} - L{blogger.Blogger.get_num_entries} - L{blogger.Blogger.get_nth_entry_title} - L{blogger.Blogger.get_nth_entry_content_strip_html} >>> from blogger import get_blog >>> blog = get_blog() >>> blog.delete_all_entries() >>> print blog.get_num_entries() 0 >>> rc = blog.post_new_entry("Test post single entry title", "Test post single entry content") >>> print rc True >>> print blog.get_num_entries() 1 >>> print blog.get_nth_entry_title(1) Test post single entry title >>> print blog.get_nth_entry_content_strip_html(1) Test post single entry content """ def test_post_two_entries(): """ Posting two entries results in 2 valid entries ordered most recent first. Method(s) tested: - L{blogger.Blogger.delete_all_entries} - L{blogger.Blogger.post_new_entry} - L{blogger.Blogger.get_num_entries} - L{blogger.Blogger.get_nth_entry_title} - L{blogger.Blogger.get_nth_entry_content_strip_html} >>> from blogger import get_blog >>> blog = get_blog() >>> blog.delete_all_entries() >>> print blog.get_num_entries() 0 >>> title1 = "Test post two entries: first entry title" >>> content1 = "Test post two entries: first entry content" >>> rc = blog.post_new_entry(title1, content1) >>> print rc True >>> print blog.get_num_entries() 1 >>> title2 = "Test post two entries: second entry title" >>> content2 = "Test post two entries: second entry content" >>> rc = blog.post_new_entry(title2, content2) >>> print rc True >>> print blog.get_num_entries() 2 >>> title2 == blog.get_nth_entry_title(1) True >>> content2 == blog.get_nth_entry_content_strip_html(1) True >>> title1 == blog.get_nth_entry_title(2) True >>> content1 == blog.get_nth_entry_content_strip_html(2) True """ def test_delete_first_of_two_entries(): """ Posting two entries and deleting entry with index 1 leaves oldest entry in place. Method(s) tested: - L{blogger.Blogger.delete_all_entries} - L{blogger.Blogger.delete_nth_entry} - L{blogger.Blogger.post_new_entry} - L{blogger.Blogger.get_num_entries} - L{blogger.Blogger.get_nth_entry_title} - L{blogger.Blogger.get_nth_entry_content_strip_html} >>> from blogger import get_blog >>> blog = get_blog() >>> blog.delete_all_entries() >>> print blog.get_num_entries() 0 >>> title1 = "Test delete first of two entries: first entry title" >>> content1 = "Test delete first of two entries: first entry content" >>> rc = blog.post_new_entry(title1, content1) >>> print rc True >>> title2 = "Test delete first of two entries: second entry title" >>> content2 = "Test delete first of two entries: second entry content" >>> rc = blog.post_new_entry(title2, content2) >>> print rc True >>> print blog.get_num_entries() 2 >>> rc = blog.delete_nth_entry(1) True >>> print blog.get_num_entries() 1 >>> title1 == blog.get_nth_entry_title(1) True >>> content1 == blog.get_nth_entry_content_strip_html(1) True """ def test_delete_second_of_two_entries(): """ Posting two entries and deleting entry with index 2 leaves newest entry in place. Method(s) tested: - L{blogger.Blogger.delete_all_entries} - L{blogger.Blogger.delete_nth_entry} - L{blogger.Blogger.post_new_entry} - L{blogger.Blogger.get_num_entries} - L{blogger.Blogger.get_nth_entry_title} - L{blogger.Blogger.get_nth_entry_content_strip_html} >>> from blogger import get_blog >>> blog = get_blog() >>> blog.delete_all_entries() >>> print blog.get_num_entries() 0 >>> title1 = "Test delete first of two entries: first entry title" >>> content1 = "Test delete first of two entries: first entry content" >>> rc = blog.post_new_entry(title1, content1) >>> print rc True >>> title2 = "Test delete first of two entries: second entry title" >>> content2 = "Test delete first of two entries: second entry content" >>> rc = blog.post_new_entry(title2, content2) >>> print rc True >>> print blog.get_num_entries() 2 >>> rc = blog.delete_nth_entry(2) True >>> print blog.get_num_entries() 1 >>> title2 == blog.get_nth_entry_title(1) True >>> content2 == blog.get_nth_entry_content_strip_html(1) True """ if __name__ == "__main__": import doctest doctest.testmod()