Exemple #1
0
 def post_wizard(self, url, step, data=None, raw_data=None, **kwargs):
     from formtools.wizard.views import normalize_name
     name = normalize_name(resolve(reverse(url)).func.__name__)
     step_data = {f'{step}-{k}': v for k, v in data.items()} if data else {}
     step_data[f'{name}-current_step'] = step
     step_data.update(raw_data or {})
     return self.post(url, step_data, **kwargs)
Exemple #2
0
 def post_wizard(self, url, step, data=None, raw_data=None, **kwargs):
     from formtools.wizard.views import normalize_name
     name = normalize_name(resolve(reverse(url)).func.__name__)
     step_data = {'{0}-{1}'.format(step, k): v for k, v in data.iteritems()} if data else {}
     step_data['{0}-current_step'.format(name)] = step
     step_data.update(raw_data or {})
     return self.post(url, step_data, **kwargs)
def submit_step_factory(client, url_name, view_class):
    step_names = iter([name for name, form in view_class.form_list])
    view_name = normalize_name(view_class.__name__)

    def submit_step(data, step_name=None):
        step_name = step_name or next(step_names)
        return client.post(
            reverse(url_name, kwargs={'step': step_name}),
            {
                view_name + '-current_step': step_name,
                **{
                    step_name + '-' + key: value
                    for key, value in data.items()
                }
            },
        )

    return submit_step
Exemple #4
0
def submit_case_study_edit_step(client):
    url_name = 'business-profile-case-study-edit'
    view_class = views.CaseStudyWizardEditView
    view_name = normalize_name(view_class.__name__)
    step_names = iter([name for name, form in view_class.form_list])

    def submit_step(data, step_name=None):
        step_name = step_name or next(step_names)
        url = reverse(url_name, kwargs={'step': step_name, 'id': 1})
        response = client.get(url)
        assert response.status_code == 200
        return client.post(
            url,
            {
                view_name + '-current_step': step_name,
                **{
                    step_name + '-' + key: value
                    for key, value in data.items()
                }
            },
        )

    return submit_step
Exemple #5
0
 def form_name(cls):
     return normalize_name(cls.__name__)
Exemple #6
0
 def form_name(cls):
     return normalize_name(cls.__name__)
 def get_prefix(self, request, *args, **kwargs):
     # share the answers with business view
     return normalize_name(BusinessWizard.__name__)