Я пытаюсь обновить довольно большой проект Django до недавно выпущенной версии Django 1.4, и у меня возникают некоторые проблемы при запуске теста python manage.py
.
Многие внутренние тесты, пройденные в Django 1.3, теперь терпят неудачу с очень странными сообщениями, которые я не могу исправить. Чаще всего встречается следующее:
NoReverseMatch: u'admin' is not a registered namespace
Это поднято для django.contrib.auth
тестирует, в частности, смену пароля (один из них — test_password_change_fails_with_mismatched_passwords (django.contrib.auth.tests.views.ChangePasswordTest)
. Странно то, что пространство имен зарегистрировано корректно и приложение функционирует просто отлично. Я импортирую администратора «новым» способом:
url(r'^admin/', include(admin.site.urls)),
Когда я гуглил эту ошибку, все, что я мог найти, это люди, импортирующие URL-адреса администратора, используя старую схему, и вообще ничего, относящегося к этой проблеме.
Я пробовал удалять приложения из INSTALLED_APPS
одно за другим, но тесты авторизации просто не проходили, а также когда я загружал интерпретатор Python из оболочки python manage.py
и выполните reverse('admin:index')
URL-адрес разрешается в /admin/
без ошибок. Я подробно прочитал код и не вижу, где это может
Как я упоминал ранее, это не единственная возникающая ошибка. Я также получаю AttributeError: AUTH_P ROFILE_MODULE
из теста test_site_profile_not_available (django.contrib.auth.tests.models.ProfileTestCase)
, хотя AUTH_PROFILE_MODULE
определен в моем settings.py
файл. Как собственные тесты Джанго могут так давать сбои?