匿名用户的所有url_pattern的Django测试用例循环

时间:2019-01-05 19:35:31

标签: django python-3.x unit-testing django-testing

我的Web应用程序需要登录,我想测试Django应用badges中的所有url_patterns重定向到登录名/主页。

我这里有一个可以处理简单网址的循环:

class ViewTests(TestCase):

    def test_all_badge_page_status_codes_for_anonymous(self):
        ''' If not logged in then all views should redirect to home page '''
        for path in urlpatterns:
            name = 'badges:%s' % path.name
            self.assertRedirects(
                response=self.client.get(reverse(name)),
                expected_url='%s?next=%s' % (reverse('home'), reverse(name)),
            )

但是,对于需要关键字参数的任何路径,例如:

path('<int:badge_id>', views.detail, name='badge_detail'),

如何自动为路径插入参数,这样我就不必为path中的每个url_patterns单独写一行?

0 个答案:

没有答案