class TestDeleteArticle(unittest.TestCase): """ Test method VimBlogger.create_article """ def setUp(self): """ Create VimBlogger object """ self.vimob = VimBlogger(None, shared.LOGIN, shared.PASS) for bid, bname in {1: 'one', 3: 'test', 7: 'blog_name'}.items(): blog = shared.MockBlog(bname, bid) self.vimob.feed.entry.append(blog) self.vimob._set_blog('test') def test_delete_non_existing_article(self): """ Test removing article without id """ self.assertEqual(self.vimob.delete_article(None), "No article id provided") def test_delete_article(self): """ Test removing article """ html = u"<p>article \xe2\x80\x94 article</p>" labels = "tag with spaces|vim|python|blogger".split("|") attrs = {"title": u'Title \xe2\x80\x94 title', "tags": ", ".join(labels), "date": "2010-12-10T14:18:32+00:00"} self.vimob.draft = False post = self.vimob.create_article(html, attrs) self.assertEqual(self.vimob.delete_article(post.id.text), None)
class TestSetBlog(unittest.TestCase): """ Test method VimBlogger._set_blog """ def setUp(self): """ Create VimBlogger object """ self.vimob = VimBlogger(None, shared.LOGIN, shared.PASS) for bid, bname in {1: 'one', 3: 'test', 7: 'blog_name'}.items(): blog = shared.MockBlog(bname, bid) self.vimob.feed.entry.append(blog) def test_set_blog(self): """ Test setting a blog """ self.vimob._set_blog("no_valid_blog_name") self.assertEqual(self.vimob.blog_id, None) self.assertEqual(self.vimob.blog, None) self.vimob._set_blog("blog_name") self.assertEqual(self.vimob.blog_id, 7) self.assertEqual(self.vimob.blog.get_blog_name(), 'blog_name') self.vimob._set_blog("test") self.assertEqual(self.vimob.blog_id, 3) self.assertEqual(self.vimob.blog.get_blog_name(), 'test') self.vimob._set_blog("one") self.assertEqual(self.vimob.blog_id, 1) self.assertEqual(self.vimob.blog.get_blog_name(), 'one')
class TestUpdateArticle(unittest.TestCase): """ Test method VimBlogger.update_article """ def setUp(self): """ Create VimBlogger object """ self.vimob = VimBlogger(None, shared.LOGIN, shared.PASS) for bid, bname in {1: 'one', 3: 'test', 7: 'blog_name'}.items(): blog = shared.MockBlog(bname, bid) self.vimob.feed.entry.append(blog) self.vimob._set_blog('test') def test_wrong_argument_types(self): """ Test update_article method with wrong argument types """ self.assertRaises(TypeError, self.vimob.update_article, None, None) def test_no_id_in_attrs(self): """ Test update_article method with no id in attrs """ self.assertRaises(Exception, self.vimob.update_article, '<p>update</p>', []) def test_update(self): """ Test update_article method with no id in attrs """ attrs = {'id': 1234567890, 'title': 'update', 'date': '2001-01-01T00:02:19.001+01:00', 'tags': "tag1, tag2, tag3"} post = self.vimob.update_article('<p>update</p>', attrs) self.assertEqual(post.title.text, 'update') self.assertEqual(post.id.text, '1234567890') self.assertEqual(post.content.text, '<p>update</p>') self.assertTrue(post.updated.text is not None)