def test_deletion(self):
        """blogs.tests.testapp.Article: deletion works correctly"""
        article = Article(title='foo', body='bar')
        article.full_clean()
        article.save()

        num = Article.objects.all().count()
        article.delete()
        self.assertEqual(Article.objects.all().count(), num - 1)
    def test_creation(self):
        """blogs.tests.testapp.Article: creation works correctly"""
        article = Article(title='foo', body='bar')
        article.full_clean()
        self.assertEqual(article.title, 'foo')
        self.assertEqual(article.body, 'bar')

        article.save()
        article = Article.objects.get(pk=article.pk)
        self.assertEqual(article.title, 'foo')
        self.assertEqual(article.body, 'bar')
    def test_validation(self):
        """blogs.tests.testapp.Article: validation works correctly"""
        from django.core.exceptions import ValidationError
        article = Article(title='foo', body='bar')
        article.full_clean()
        article.save()

        article.title = ''
        self.assertRaises(ValidationError, article.full_clean)

        article.body = ''
        self.assertRaises(ValidationError, article.full_clean)

        article.title = '*' * 100
        self.assertRaises(ValidationError, article.full_clean)