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)
def delete(self): """ Get list of articles, display it to the user, make him choose one and delete """ if not self.password: self.password = \ vim.eval('inputsecret("Enter your gmail password: "******"inputlist([" for index, entries in enumerate(posts): line = "%2d %s %s" % (index + 1, entries[1], entries[2]) msg += u'"' + line.replace('"', '\\"') + u'",' msg = msg[:-1] msg += u"])" msg = unicode(msg).encode(self.vim_encoding) choice = int(vim.eval(msg)) if choice: art = posts[choice - 1] msg = 'confirm("You are about to delete article \'%s\'. ' msg += 'Are you sure?"' msg = unicode(msg % art[1]).encode(self.vim_encoding) msg += ', "&No\n&Yes")' if self.confirm_del: choice = int(vim.eval(msg)) else: choice = 2 if choice == 2: blog.delete_article(art[0]) return "Article deleted" return "No articles deleted"