Как написать модульный тест для представления Django?

У меня проблемы с пониманием того, как модульные тесты должны быть разработаны для Django.

Насколько я понимаю, проверка всего взгляда за один раз кажется невозможной. Нам необходимо различать состояние запроса до и после запроса. Но я понятия не имею, как спроектировать это. Есть ли реальный пример из жизни?

Глядя на документацию, примеры слишком упрощены и ориентированы только на модель.

@login_required
def call_view(request, contact_id):
    profile = request.user.get_profile()
    if request.POST:        
        form = CallsForm(profile.company, request.POST)           
        if form.is_valid()
        return HttpResponseRedirect('/contact/' + contact_id + '/calls/')
    else:        
        form = CallsForm(profile.company, instance=call)              
    variables = RequestContext(request, {'form':form}
    return render_to_response('conversation.html', variables)

update:

пытается сделать успешный тест на работу, но все равно не получается:

def test_contact_view_success(self):
    # same again, but with valid data, then
    self.client.login(username='username1', password='password1')
    response = self.client.post('/contact/add/', {u'last_name': [u'Johnson'], }) 
    self.assertRedirects(response, '/')

error message:

AssertionError: Response didn't redirect as expected: Response code was 200 (expected 302)

Я думаю, это потому, что происходит сбой form.is_valid (), и он не перенаправляет, правильно?

Ответы на вопрос(2)

Ваш ответ на вопрос