def test_article_exist(self): key = Article(title='title', body='body').put() self.users_login('admin@localhost', is_admin=True) url = reverse('article_admin_delete', kwargs={'id': key.id()}) resp = self.client.get(url) self.assertRedirects(resp, reverse('index')) self.assertEqual(Article.all().count(), 0)
class TestUpdateArticle(AppEngineTestCase): def setUp(self): create_blog() self.key = Article(title='title123', body='body123').put() self.url = reverse('article_admin_update', kwargs={'id': self.key.id()}) def test_user_not_admin(self): self.users_login('user@localhost', is_admin=False) resp = self.client.get(self.url) self.assertEqual(resp.status_code, 302) def test_user_not_authenticated(self): resp = self.client.get(self.url) self.assertEqual(resp.status_code, 302) def test_form_contains_article_title_and_body(self): self.users_login('admin@localhost', is_admin=True) resp = self.client.get(self.url) self.assertContains(resp, 'title123') self.assertContains(resp, 'body123') def test_post_no_body(self): self.users_login('admin@localhost', is_admin=True) data = {'title': 'new_title'} self.client.post(self.url, data) article = Article.get(self.key) self.assertEqual(article.title, 'title123') self.assertEqual(article.body, 'body123') def test_post_no_title(self): self.users_login('admin@localhost', is_admin=True) data = {'body': 'new_body'} self.client.post(self.url, data) article = Article.get(self.key) self.assertEqual(article.title, 'title123') self.assertEqual(article.body, 'body123') def test_post_valid(self): self.users_login('admin@localhost', is_admin=True) data = {'body': 'new_body', 'title': 'new_title'} self.client.post(self.url, data) article = Article.get(self.key) self.assertEqual(article.title, 'new_title') self.assertEqual(article.body, 'new_body')
def test_get_by_id_or_404_article_found(self): key = Article(title='title', body='body').put() result = Article.get_by_id_or_404(key.id()) self.assertEqual(key, result.key())
def test_get_by_id_or_404_no_article(self): key = Article(title='title', body='body').put() free_key = key.id() + 1 with self.assertRaises(Http404): Article.get_by_id_or_404(free_key)