|
|
@@ -397,6 +397,131 @@ class Test(SchemaTest):
|
|
|
r = self.run_test("test_artere_cable", True)
|
|
|
self.assertFailure(r)
|
|
|
self.assertErrorLogged(r, "Artère ou portion d'artère sans cable")
|
|
|
+
|
|
|
+ def test_boites(self):
|
|
|
+
|
|
|
+ # cas initial: valide
|
|
|
+ r = self.run_test("test_boites")
|
|
|
+
|
|
|
+ self.assertEqual(r.title, 'Données des boites')
|
|
|
+ self.assertSuccess(r)
|
|
|
+ self.assertEqual(len(r.errors), 0)
|
|
|
+
|
|
|
+ # erreur topo
|
|
|
+ self.checker.equipements[0].EQ_TYPE = "PBO"
|
|
|
+ self.checker.equipements[0].EQ_DATE_IN = "01/01/2019"
|
|
|
+
|
|
|
+ del self.checker.equipements[0].__dict__["EQ_CAPFO"]
|
|
|
+ self.checker.equipements[0].EQ_NBMXEQ = ""
|
|
|
+
|
|
|
+ r = self.run_test("test_boites", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "Le champs est obligatoire: EQ_CAPFO")
|
|
|
+ self.assertErrorLogged(r, "Le champs doit être renseigné: EQ_NBMXEQ")
|
|
|
+
|
|
|
+ self.checker.equipements[0].EQ_CAPFO = 1
|
|
|
+ self.checker.equipements[0].EQ_NBMXEQ = 1
|
|
|
+
|
|
|
+ self.checker.equipements[0].EQ_TYPE = "BPE"
|
|
|
+ self.checker.equipements[0].noeud.NO_TYPE_PH = "POTEAU"
|
|
|
+
|
|
|
+ r = self.run_test("test_boites", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "Une BPE ne peut pas être sur un poteau")
|
|
|
+
|
|
|
+ self.checker.equipements[0].EQ_TYPE = "PBO"
|
|
|
+ self.checker.equipements[0].noeud.NO_TYPE_PH = "POTEAU"
|
|
|
+ self.checker.equipements[0].EQ_HAUT = 1
|
|
|
+
|
|
|
+ r = self.run_test("test_boites", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "PBO sur poteau: La hauteur doit être comprise entre 2.40m et 4.00m")
|
|
|
+
|
|
|
+ def test_arteres_enterrees(self):
|
|
|
+
|
|
|
+ # cas initial: valide
|
|
|
+ r = self.run_test("test_arteres_enterrees")
|
|
|
+
|
|
|
+ self.assertEqual(r.title, 'Données des artères enterrées')
|
|
|
+ self.assertSuccess(r)
|
|
|
+ self.assertEqual(len(r.errors), 0)
|
|
|
+
|
|
|
+ self.checker.arteres[0].AR_TYPE_FO = "PVC"
|
|
|
+
|
|
|
+ del self.checker.arteres[0].__dict__["AR_NB_FOUR"]
|
|
|
+ self.checker.arteres[0].AR_FOU_DIS = ""
|
|
|
+
|
|
|
+ r = self.run_test("test_arteres_enterrees", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "Le champs est obligatoire: AR_NB_FOUR")
|
|
|
+ self.assertErrorLogged(r, "Le champs doit être renseigné: AR_FOU_DIS")
|
|
|
+
|
|
|
+ def test_dates_install(self):
|
|
|
+ """ Dates d'installation
|
|
|
+ Vérifie que les dates d'installation sont renseignées pour les équipements en service """
|
|
|
+
|
|
|
+ # cas initial: valide
|
|
|
+ r = self.run_test("test_dates_install")
|
|
|
+
|
|
|
+ self.assertEqual(r.title, "Dates d'installation")
|
|
|
+ self.assertSuccess(r)
|
|
|
+ self.assertEqual(len(r.errors), 0)
|
|
|
+
|
|
|
+ self.checker.cables[0].CA_STATUT = "EN SERVICE"
|
|
|
+ self.checker.cables[0].CA_DATE_IN = ""
|
|
|
+
|
|
|
+ r = self.run_test("test_dates_install", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "Date d'installation \(CA_DATE_IN\) manquante")
|
|
|
+
|
|
|
+ def test_largeur_tranchees(self):
|
|
|
+
|
|
|
+ # cas initial: valide
|
|
|
+ r = self.run_test("test_largeur_tranchees")
|
|
|
+
|
|
|
+ self.assertEqual(r.title, "Tranchées: Dimensions")
|
|
|
+ self.assertSuccess(r)
|
|
|
+ self.assertEqual(len(r.errors), 0)
|
|
|
+
|
|
|
+ self.checker.tranchees[0].TR_MOD_POS = "TRANCHEE"
|
|
|
+ self.checker.tranchees[0].TR_LARG = 0
|
|
|
+
|
|
|
+ r = self.run_test("test_largeur_tranchees", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "La largeur de la tranchée doit être supérieure à 0")
|
|
|
+
|
|
|
+ def test_prop_gest(self):
|
|
|
+
|
|
|
+ # cas initial: valide
|
|
|
+ r = self.run_test("test_prop_gest")
|
|
|
+
|
|
|
+ self.assertEqual(r.title, "Propriétaires / Gestionnaires")
|
|
|
+ self.assertSuccess(r)
|
|
|
+ self.assertEqual(len(r.errors), 0)
|
|
|
+
|
|
|
+ self.checker.arteres[0].AR_PRO_FOU = "ORANGE"
|
|
|
+ self.checker.arteres[0].AR_GEST_FO = "ERDF"
|
|
|
+
|
|
|
+ r = self.run_test("test_prop_gest", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "Propriétaire: ORANGE, gestionnaire\(s\) possible\(s\): ORANGE \(renseigné: ERDF\)")
|
|
|
+
|
|
|
+
|
|
|
+ def test_comments(self):
|
|
|
+
|
|
|
+ # cas initial: valide
|
|
|
+ r = self.run_test("test_comments")
|
|
|
+
|
|
|
+ self.assertEqual(r.title, "Présence de commentaires")
|
|
|
+ self.assertSuccess(r)
|
|
|
+ self.assertEqual(len(r.errors), 0)
|
|
|
+
|
|
|
+ self.checker.equipements[0].EQ_STATUT = "EN ETUDE"
|
|
|
+ self.checker.equipements[0].EQ_COMMENT = ""
|
|
|
+
|
|
|
+ r = self.run_test("test_comments", True)
|
|
|
+ self.assertFailure(r)
|
|
|
+ self.assertErrorLogged(r, "L'equipement n'est pas en REC, un commentaire devrait en préciser la raison")
|
|
|
|
|
|
def test_dimensions_fourreaux(self):
|
|
|
|
|
|
@@ -430,7 +555,7 @@ class Test(SchemaTest):
|
|
|
eq.EQ_CODE = "%__#123456789#__%"
|
|
|
r = self.run_test("test_pbos", True)
|
|
|
self.assertFailure(r)
|
|
|
- self.assertErrorLogged(r, "Le nom du PBO ne coincide avec le nom d'aucune des ZAPBO qui le contiennent")
|
|
|
+ self.assertErrorLogged(r, "Le nom de la PBO ne coincide avec le nom d'aucune des ZAPBO qui le contiennent")
|
|
|
|
|
|
# equipement hors zapbo
|
|
|
_ini_geom = eq.noeud._feature.geometry()
|