diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/forms_common.py | 2 | ||||
| -rw-r--r-- | ishtar_common/tests.py | 30 | ||||
| -rw-r--r-- | ishtar_common/wizards.py | 9 | 
3 files changed, 36 insertions, 5 deletions
diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py index 61e9f1a88..44af3a588 100644 --- a/ishtar_common/forms_common.py +++ b/ishtar_common/forms_common.py @@ -595,7 +595,7 @@ class AccountForm(forms.Form):          if 'person' in kwargs:              person = kwargs.pop('person')          super(AccountForm, self).__init__(*args, **kwargs) -        if person: +        if person and person.raw_name:              self.fields['username'].initial = \                  person.raw_name.lower().replace(' ', '.') diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index 174918dd4..536d6d4a8 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -129,15 +129,45 @@ class WizardTestFormData(object):          accepting two parameters: the current test object and the final step          response          """ +        self.name = name          self.form_datas = form_datas          self.ignored = ignored[:]          self.pre_tests = pre_tests          self.extra_tests = extra_tests +    def set(self, form_name, field_name, value): +        """ +        Set data value. + +        :param form_name: form name without wizard name +        :param field_name: field name +        :param value: value +        :return: None +        """ +        self.form_datas[form_name][field_name] = value + +    def append(self, form_name, value): +        """ +        Add data value to formset. + +        :param form_name: form name without wizard name +        :param value: value +        :return: None +        """ +        self.form_datas[form_name].append(value) +      def inits(self, test_object):          """          Initialisations before the wizard.          """ + +        suffix = '-' + test_object.url_name +        # if form names are defined without url_name fix it +        for form_name in self.form_datas.keys(): +            if suffix in form_name: +                continue +            self.form_datas[form_name + suffix] = self.form_datas.pop(form_name) +          for pre in self.pre_tests:              pre(test_object) diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index 8d787d733..3f90f8c48 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -1232,10 +1232,11 @@ class DeletionWizard(Wizard):      def done(self, form_list, **kwargs):          obj = self.get_current_object() -        try: -            obj.delete() -        except ObjectDoesNotExist: -            pass +        if obj: +            try: +                obj.delete() +            except ObjectDoesNotExist: +                pass          return render_to_response(              'ishtar/wizard/wizard_delete_done.html', {},              context_instance=RequestContext(self.request))  | 
