コード例 #1
0
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)
コード例 #2
0
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')
コード例 #3
0
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)