From 776cf64d816d8844fcf63aadc3cd481c1a4d215a Mon Sep 17 00:00:00 2001 From: Okhin Date: Thu, 23 May 2019 17:04:08 +0200 Subject: [PATCH] Fixing the redirect loop --- apps/rp/tests/test_article.py | 18 ++++++++++++++---- apps/rp/views/articles.py | 3 ++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/apps/rp/tests/test_article.py b/apps/rp/tests/test_article.py index ee395fd..501599b 100644 --- a/apps/rp/tests/test_article.py +++ b/apps/rp/tests/test_article.py @@ -122,7 +122,9 @@ class TestArticleViews(TestCase): def test_search_view(self): article = ArticleFactory(title=u'Zog Zog chez les schtroumphs', - lang='FR') + lang='FR', + archive=False, + status='PUBLISHED') article.save() r = self.client.get('/rp/', {'q': 'Zog Zog'}) @@ -131,7 +133,9 @@ class TestArticleViews(TestCase): assert len(r.context['article_list']) == 0 def test_search_view_archived(self): - archive = ArticleFactory(archive=True, lang='FR') + archive = ArticleFactory(archive=True, + lang='FR', + status='PUBLISHED') r = self.client.get('/rp/', {'q': '', 'archive': 'true'}) assert len(r.context['article_list']) == 1 @@ -141,7 +145,10 @@ class TestArticleViews(TestCase): assert len(r.context['article_list']) == 0 def test_search_view_speaks(self): - speak = ArticleFactory(speak=True, lang='FR') + speak = ArticleFactory(speak=True, + archive=False, + lang='FR', + status='PUBLISHED') r = self.client.get('/rp/', {'q': '', 'speak': 'true'}) assert len(r.context['article_list']) == 1 @@ -151,7 +158,10 @@ class TestArticleViews(TestCase): assert len(r.context['article_list']) == 0 def test_search_view_quoted(self): - quote = ArticleFactory(quote=True, lang='FR') + quote = ArticleFactory(quote=True, + archive=False, + lang='FR', + status='PUBLISHED') r = self.client.get('/rp/', {'q': '', 'quote': 'true'}) assert len(r.context['article_list']) == 1 diff --git a/apps/rp/views/articles.py b/apps/rp/views/articles.py index d3807a0..1352fc2 100644 --- a/apps/rp/views/articles.py +++ b/apps/rp/views/articles.py @@ -138,9 +138,10 @@ class ArticleDetailView(LoginRequiredMixin, DetailView): return context -class ArticleEdit(PermissionRequiredMixin, UpdateView): +class ArticleEdit(LoginRequiredMixin, PermissionRequiredMixin, UpdateView): model = Article permission_required = 'rp.can_edit' + raise_exception = True fields = ['screenshot', 'url', 'lang', 'title', 'tags', 'extracts', 'quote', 'speak', 'archive'] -- GitLab