'Test all forms pass validation'

def test_form_pass(self):

    resp = self.post_step('basics')
    self.assertWizardResponse(resp, 'extra')
    resp = self.post_step('extra', session=list(resp._request.session.items()))
    self.assertIsInstance(resp, HttpResponseRedirect)
    self.assertEqual(resp.status_code, 302)
    self.assertEqual(resp['location'], '/projects/foobar/')
    proj = Project.objects.get(name='foobar')
    self.assertIsNotNone(proj)
    data = self.step_data['basics']
    del data['advanced']
    del self.step_data['extra']['tags']
    six.assertCountEqual(self, [tag.name for tag in proj.tags.all()], [u'bar', u'baz', u'foo'])
    data.update(self.step_data['extra'])
    for (key, val) in list(data.items()):
        self.assertEqual(getattr(proj, key), val)
