瀏覽代碼

update unittests

omassot 6 年之前
父節點
當前提交
8f38c62414
共有 4 個文件被更改,包括 20 次插入9 次删除
  1. 2 7
      MnCheck/schemas/mn1_rec.py
  2. 4 2
      MnCheck/schemas/mn2_rec.py
  3. 7 0
      MnCheck/test/test_mn1_rec.py
  4. 7 0
      MnCheck/test/test_mn2_rec.py

+ 2 - 7
MnCheck/schemas/mn1_rec.py

@@ -416,12 +416,7 @@ class Mn1Checker(BaseChecker):
                 self.log_error(f"L'équipement lié '{cable.CA_EQ_A}' n'existe pas", item=cable)
             if cable.equipement_b is None:
                 self.log_error(f"L'équipement lié '{cable.CA_EQ_B}' n'existe pas", item=cable)
-                
-            if cable.CA_STATUT == "REC" and cable.equipement_a.EQ_STATUT in ('PRO', 'EXE'):
-                self.log_error(f"Incohérence de statut entre le cable et son équipement A", item=cable)
-            if cable.CA_STATUT == "REC" and cable.equipement_b.EQ_STATUT in ('PRO', 'EXE'):
-                self.log_error(f"Incohérence de statut entre le cable et son équipement B", item=cable)
-                
+
     def test_constraints_cables_equipements_b(self):
         """ Application des contraintes: Equipements B
         Vérifie que tous les équipements sont l'équipement B d'au moins un cable """
@@ -683,7 +678,7 @@ class Mn1Checker(BaseChecker):
                 self.log_error(f"Incohérence de statut entre le cable et son équipement A", item=cable)
             if cable.equipement_b and cable.CA_STATUT == "REC" and cable.equipement_b.EQ_STATUT in ('PRO', 'EXE'):
                 self.log_error(f"Incohérence de statut entre le cable et son équipement B", item=cable)
-                    
+                                    
     def _za_for_pbo(self, pbo):
         # retourne la ZAPBO correspondant à la PBO en parametre, None si aucune
         if hasattr(pbo, 'zapbo') and pbo.zapbo:

+ 4 - 2
MnCheck/schemas/mn2_rec.py

@@ -808,9 +808,11 @@ class Mn2Checker(BaseChecker):
         """ Cohérence des statuts
         Vérifie que les statuts des éléments sont cohérents """
         for cable in self.cables:
-            if cable.equipement_a and cable.CA_STATUT == "REC" and cable.equipement_a.EQ_STATUT in ('PRO', 'EXE'):
+            if cable.equipement_a and cable.CA_STATUT.upper() == "EN SERVICE" and \
+               cable.equipement_a.EQ_STATUT.upper() in ('EN ETUDE', 'EN REALISATION'):
                 self.log_error(f"Incohérence de statut entre le cable et son équipement A", item=cable)
-            if cable.equipement_b and cable.CA_STATUT == "REC" and cable.equipement_b.EQ_STATUT in ('PRO', 'EXE'):
+            if cable.equipement_b and cable.CA_STATUT.upper() == "EN SERVICE" and \
+               cable.equipement_b.EQ_STATUT.upper() in ('EN ETUDE', 'EN REALISATION'):
                 self.log_error(f"Incohérence de statut entre le cable et son équipement B", item=cable)
                     
     def _za_for_pbo(self, pbo):

+ 7 - 0
MnCheck/test/test_mn1_rec.py

@@ -515,6 +515,13 @@ class Test(SchemaTest):
         self.assertFailure(r)
         self.assertErrorLogged(r, "Le nombre de fourreaux disponibles \(CA_NB_FO_D\) doit être inférieur au nombre total \(CA_NB_FO\)")
              
+    def test_statuts(self):
+        self.checker.cables[0].CA_STATUT = "REC"
+        self.checker.cables[0].equipement_a.EQ_STATUT = "PRO"
+        r = self.run_test("test_statuts", True)
+        self.assertFailure(r)
+        self.assertErrorLogged(r, "Incohérence de statut entre le cable et son équipement A")
+        
     def test_pbos(self):
         
         # cas initial: valide

+ 7 - 0
MnCheck/test/test_mn2_rec.py

@@ -540,6 +540,13 @@ class Test(SchemaTest):
         self.assertErrorLogged(r, "Le nombre de fourreaux disponibles \(AR_FOU_DIS\) doit être inférieur au nombre total \(AR_NB_FOUR\)")
         
         self.checker.arteres[0].AR_FOU_DIS = 0
+             
+    def test_statuts(self):
+        self.checker.cables[0].CA_STATUT = "EN SERVICE"
+        self.checker.cables[0].equipement_a.EQ_STATUT = "EN ETUDE"
+        r = self.run_test("test_statuts", True)
+        self.assertFailure(r)
+        self.assertErrorLogged(r, "Incohérence de statut entre le cable et son équipement A")
         
     def test_pbos(self):