diff options
Diffstat (limited to 'ishtar_common/tests.py')
| -rw-r--r-- | ishtar_common/tests.py | 48 | 
1 files changed, 47 insertions, 1 deletions
| diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index c736a8769..596cbf9f6 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -35,6 +35,7 @@ from django.test.client import Client  from django.test.runner import DiscoverRunner  from ishtar_common import models +from ishtar_common import views  from ishtar_common.utils import post_save_point @@ -87,7 +88,7 @@ class WizardTestFormData(object):      """      Test set to simulate wizard steps      """ -    def __init__(self, name, form_datas, ignored=[], pre_tests=[], +    def __init__(self, name, form_datas={}, ignored=[], pre_tests=[],                   extra_tests=[]):          """          :param name: explicit name of the test @@ -114,6 +115,8 @@ class WizardTestFormData(object):          :param value: value          :return: None          """ +        if form_name not in self.form_datas: +            self.form_datas[form_name] = {}          self.form_datas[form_name][field_name] = value      def append(self, form_name, value): @@ -124,6 +127,8 @@ class WizardTestFormData(object):          :param value: value          :return: None          """ +        if form_name not in self.form_datas: +            self.form_datas[form_name] = {}          self.form_datas[form_name].append(value)      def inits(self, test_object): @@ -1044,3 +1049,44 @@ class GeomaticTest(TestCase):          post_save_point(None, instance=obj)          self.assertIsNotNone(obj.point_2d)          self.assertIsNotNone(obj.point) + + +class AccountWizardTest(WizardTest, TestCase): +    fixtures = [settings.ROOT_PATH + +                '../fixtures/initial_data-auth-fr.json', +                settings.ROOT_PATH + +                '../ishtar_common/fixtures/initial_data-fr.json',] +    url_name = 'account_management' +    wizard_name = 'account_wizard' +    steps = views.account_wizard_steps +    form_datas = [ +        WizardTestFormData( +            "Add an account", +            form_datas={ +                'account': { +                    'username': "My username", +                    'email': "test@example.com", +                    'hidden_password': "my_pass", +                    'hidden_password_confirm': "my_pass", +                } +            }, +        ), +    ] + +    def pre_wizard(self): +        self.person = models.Person.objects.create( +            name='Boule', surname=' ', +        ) +        self.form_datas[0].set('selec', 'pk', self.person.pk) +        self.form_datas[0].set('account', 'pk', self.person.pk) + +        self.account_number = models.IshtarSiteProfile.objects.count() +        super(AccountWizardTest, self).pre_wizard() + +    def post_wizard(self): +        person = models.Person.objects.get(pk=self.person.pk) +        user = person.ishtaruser.user_ptr +        self.assertEqual(user.username, "My username") +        self.assertEqual(user.email, "test@example.com") +        self.assertEqual(models.IshtarUser.objects.count(), +                         self.account_number + 1) | 
