Используя оболочку, я могу сделать это:
>>> from django.test.client import Client
>>> from django.test.utils import setup_test_environment
>>> setup_test_environment()
>>> c = Client()
>>> c.login(username="dev", password="password")
True
>>> r = c.get('/')
>>> r.status_code
200
Теперь с этим в файле test.py:
from django.test.client import Client
__test__ = {"doctest": """
>>> c = Client()
>>> c.login(username='dev', password='password')
True
>>> r = c.get('/')
>>> r.status_code
200
"""}
Я получаю этот вывод:
Failed example:
c.login(username="dev", password="password")
Expected:
True
Got:
False
------------------------------------------------------
Failed example:
r.status_code
Expected:
200
Got:
302
Я просмотрел весь интернет и не могу найти ничего, что помогло бы в этой ситуации.Есть идеи?
В аналогичной заметке я прокомментировал: from django.views.decorators.debug import sensitive_post_parameters
и все @sensitive_post_parameters()
декораторы из моего кода, потому что каждый раз, когда я запускаю ./manage.py test app
, django жалуется:
Could not import app.views. Error was: No module named debug
Удаление этого декоратора и оператора import позволяет ему двигаться вперед.
Я очень потерян, и мне нужен StackOverflow!Спасибо всем.