test page add poste
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 26 Jul 2012 18:20:18 +0000 (14:20 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 26 Jul 2012 18:20:18 +0000 (14:20 -0400)
project/dae/test/poste.py

index bd38ec1..0a38b13 100644 (file)
@@ -7,21 +7,17 @@ from project.dae import models as dae
 from project.dae.test.common import DaeTest
 from project.dae.forms import PosteForm
 
-class PosteFormTest(DaeTest):
+class PosteAddTest(DaeTest):
     """
-    Test le le formulaire de poste
+    Test l'ajout d'un poste
     """
-    def test_add(self):
-        """
-        Test PosteForm sans instance
-        """
-
-        class Request:
-            user = None
+    url = reverse('admin:rh_poste_add')
 
-        request = Request()
-        request.user = User.objects.get(email='0@test.auf')
-        post = {
+    def setUp(self):
+        super(PosteAddTest, self).setUp()
+        key = "rh-%s" % self.poste_cnf_ngaoundere.id
+        self.url = reverse('poste', kwargs={'key': key})
+        self.post = {
                 'nom' : 'nom',
                 'regime_travail_nb_heure_semaine' : '35',
                 'indemn_expat_min' : '110',
@@ -47,8 +43,20 @@ class PosteFormTest(DaeTest):
                 'autre_max' : '250',
                 'charges_patronales_min' : '160',
                 'charges_patronales_max' : '260',
+
+                # pour tester la vue
+                'dae_financements-TOTAL_FORMS' : 0,
+                'dae_financements-INITIAL_FORMS': 0,
+                'dae_financements-MAX_NUM_FORMS': '',
+                'dae_pieces-TOTAL_FORMS' : 0,
+                'dae_pieces-INITIAL_FORMS': 0,
+                'dae_pieces-MAX_NUM_FORMS': '',
+                'dae_comparaisons_internes-TOTAL_FORMS' : 0,
+                'dae_comparaisons_internes-INITIAL_FORMS': 0,
+                'dae_comparaisons_internes-MAX_NUM_FORMS': '',
+
                 }
-        expect = {
+        self.expect = {
                 'nom' : 'nom',
                 'regime_travail_nb_heure_semaine' : Decimal('35'),
                 'indemn_expat_min' : Decimal('110'),
@@ -75,26 +83,39 @@ class PosteFormTest(DaeTest):
                 'charges_patronales_min' : Decimal('160'),
                 'charges_patronales_max' : Decimal('260'),
                 }
-        form = PosteForm(post, request=request)
+
+    def test_poste_form(self):
+        """
+        Test PosteForm sans instance
+        """
+
+        class Request:
+            user = None
+
+        request = Request()
+        request.user = User.objects.get(email='0@test.auf')
+        form = PosteForm(self.post, request=request)
         form.is_valid()
         self.assertTrue(form.is_valid())
 
         form.save()
 
-        poste = dae.Poste.objects.get(nom=post['nom'])
-        for k, expect_value in expect.items():
+        poste = dae.Poste.objects.get(nom=self.post['nom'])
+        for k, expect_value in self.expect.items():
             self.assertEqual(getattr(poste, k), expect_value)
 
-class PosteAddFromRHTest(DaeTest):
-    """
-    Test l'ajout d'un poste
-    """
-    url = reverse('admin:rh_poste_add')
+    def test_page_creation_poste(self):
+        """
+        Teste la page de création d'un poste avec un compte DRH
+        """
+        self._test_drh()
+        resp = self.client.post(self.url, self.post)
+        self.assertEqual(resp.status_code, 302)
+
+        poste = dae.Poste.objects.get(nom=self.post['nom'])
+        for k, expect_value in self.expect.items():
+            self.assertEqual(getattr(poste, k), expect_value)
 
-    def setUp(self):
-        super(PosteAddFromRHTest, self).setUp()
-        key = "rh-%s" % self.poste_cnf_ngaoundere.id
-        self.url = reverse('poste', kwargs={'key': key})
 
     def test_anonyme(self):
         """