X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FTools%2FblocFissure%2FCasTests%2Fexecution_Cas.py;h=2213dbce75d8edcb75207a400cb018eb3263474b;hp=1cc38ba060e7cb2dd1da31025e18715afa54abd5;hb=efd80806341c984a697dee12b53383cc0895712c;hpb=81adb7985f3c35fa2a7778eb4d2346832536ddc9 diff --git a/src/Tools/blocFissure/CasTests/execution_Cas.py b/src/Tools/blocFissure/CasTests/execution_Cas.py index 1cc38ba06..2213dbce7 100644 --- a/src/Tools/blocFissure/CasTests/execution_Cas.py +++ b/src/Tools/blocFissure/CasTests/execution_Cas.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright (C) 2014-2020 EDF R&D +# Copyright (C) 2014-2021 EDF R&D # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -17,238 +17,255 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +"""Lancement des cas-tests de blocFissure""" -import sys, traceback import logging -from blocFissure import gmu +import os +import tempfile +import traceback + from blocFissure.gmu import initLog +from blocFissure.gmu.casStandard import casStandard # ----------------------------------------------------------------------------------------------- -#initLog.setDebug() -#initLog.setVerbose() -#initLog.setRelease() -#initLog.setPerfTests() +LOGFILE = os.path.join(tempfile.gettempdir(),"blocFissure.log") +#initLog.setDebug(LOGFILE) # debug = 10 +#initLog.setVerbose(LOGFILE) # info = 20 +#initLog.setRelease(LOGFILE) # warning = 30 +#initLog.setPerfTests(LOGFILE) # critical = 50 +#initLog.setAlways(LOGFILE) # critical = 50 # ---tous les cas en séquence, ou les cas sélectionnés ... -torunOK = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0] # OK +TORUNOK = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 ] # OK 19/04/2021 +# 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28 +#RUNALL = False +RUNALL = True +if RUNALL: + TORUN = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] # 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28 -runall = False -runall = True -if runall: - torun = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] -# 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28 + TORUN = TORUNOK else: - torunPB = list() - for iaux in torunOK: - torunPB.append((iaux+1)%2) - print ("torun = {} # OK".format(torunOK)) - print ("torun = {} # PB".format(torunPB)) - torun = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + TORUNPB = list() + for IAUX in TORUNOK: + TORUNPB.append((IAUX+1)%2) + print ("TORUN = {} # OK".format(TORUNOK)) + print ("TORUN = {} # PB".format(TORUNPB)) +# genereMateriel + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0] # aucun + TORUN = [ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # cubeAngle + TORUN = [ 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # cubeFin + TORUN = [ 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # decoupeCylindre + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # disque_perce + ellipse_disque + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # ellipse + fissureGauche2 + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # ellipse_probleme + fissureGauche2 + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # eprouvetteCourbe + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # eprouvetteDroite + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # fissureGauche + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # fissureGauche2 + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0] # vis + TORUN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1] # tube # 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28 + TORUN = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0] # OK # ----------------------------------------------------------------------------------------------- -from blocFissure.gmu import geomsmesh -from blocFissure.gmu.casStandard import casStandard - -d_aux = dict() -problemes = list() - -n_cas = 0 -# matériel : cubeAngle -from blocFissure.CasTests.cubeAngle import cubeAngle -problemes.append(cubeAngle(n_cas)) - -n_cas = 1 -# matériel : cubeAngle -from blocFissure.CasTests.cubeAngle2 import cubeAngle2 -problemes.append(cubeAngle2(n_cas)) - -n_cas = 2 -# matériel : cubeFin -from blocFissure.CasTests import cubeCoin -problemes.append(casStandard(cubeCoin.dicoParams, cubeCoin.referencesMaillageFissure, n_cas)) -d_aux[n_cas] = "cubeCoin" - -n_cas = 3 -# matériel : cubeFin -from blocFissure.CasTests import cubeMilieu -problemes.append(casStandard(cubeMilieu.dicoParams, cubeMilieu.referencesMaillageFissure, n_cas)) -d_aux[n_cas] = "cubeMilieu" - -n_cas = 4 -# matériel : cubeFin -from blocFissure.CasTests import cubeTransverse -problemes.append(casStandard(cubeTransverse.dicoParams, cubeTransverse.referencesMaillageFissure, n_cas)) -d_aux[n_cas] = "cubeTransverse" - -n_cas = 5 -# matériel : decoupeCylindre -from blocFissure.CasTests.cylindre import cylindre -problemes.append(cylindre(n_cas)) - -n_cas = 6 -# matériel : decoupeCylindre -from blocFissure.CasTests.cylindre_2 import cylindre_2 -problemes.append(cylindre_2(n_cas)) - -n_cas = 7 -# matériel : disque_perce -# matériel : ellipse_disque -from blocFissure.CasTests import disquePerce -problemes.append(casStandard(disquePerce.dicoParams, disquePerce.referencesMaillageFissure, n_cas)) -d_aux[n_cas] = "disquePerce" - -n_cas = 8 -from blocFissure.CasTests.ellipse_1 import ellipse_1 -problemes.append(ellipse_1(n_cas)) - -n_cas = 9 -from blocFissure.CasTests.ellipse_2 import ellipse_2 -problemes.append(ellipse_2(n_cas)) - -n_cas = 10 -from blocFissure.CasTests.eprouvetteCourbe import eprouvetteCourbe -problemes.append(eprouvetteCourbe(n_cas)) - -n_cas = 11 -from blocFissure.CasTests.eprouvetteDroite import eprouvetteDroite -problemes.append(eprouvetteDroite(n_cas)) - -n_cas = 12 -from blocFissure.CasTests.eprouvetteDroite_2 import eprouvetteDroite_2 -problemes.append(eprouvetteDroite_2(n_cas)) - -n_cas = 13 -from blocFissure.CasTests.faceGauche import faceGauche -problemes.append(faceGauche(n_cas)) - -n_cas = 14 -# matériel : fissureGauche2 -from blocFissure.CasTests.faceGauche_2 import faceGauche_2 -problemes.append(faceGauche_2(n_cas)) -#"boiteDefaut" has not been computed: -#- "algo3d_boiteDefaut" failed. Error: Algorithm failed. Presumably, the surface mesh is not compatible with the domain being processed (warning). -#An edge is unique (i.e., bounds a hole in the surface). -#The surface mesh includes at least one hole. The domain is not well defined. -#See /tmp/GHS3D_18605_10269264.log for more information -#Traceback (most recent call last): - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/CasTests/execution_Cas.py", line 222, in - #ok_maillage = cas.executeProbleme() - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/gmu/fissureGenerique.py", line 122, in executeProbleme - #self.maillageFissureParams, elementsDefaut, step) - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/CasTests/faceGauche_2.py", line 108, in genereMaillageFissure - #maillageFissureParams, elementsDefaut, step) - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/gmu/construitFissureGenerale.py", line 330, in construitFissureGenerale - #raise Exception(text) -#Exception: Erreur au calcul du maillage. - -n_cas = 15 -from blocFissure.CasTests.fissureCoude_1 import fissureCoude_1 -problemes.append(fissureCoude_1(n_cas)) - -n_cas = 16 -from blocFissure.CasTests.fissureCoude_10 import fissureCoude_10 -problemes.append(fissureCoude_10(n_cas)) - -n_cas = 17 -from blocFissure.CasTests.fissureCoude_2 import fissureCoude_2 -problemes.append(fissureCoude_2(n_cas)) - -n_cas = 18 -from blocFissure.CasTests.fissureCoude_3 import fissureCoude_3 -problemes.append(fissureCoude_3(n_cas)) - -n_cas = 19 -from blocFissure.CasTests.fissureCoude_4 import fissureCoude_4 -problemes.append(fissureCoude_4(n_cas)) - -n_cas = 20 -from blocFissure.CasTests.fissureCoude_5 import fissureCoude_5 -problemes.append(fissureCoude_5(n_cas)) - -n_cas = 21 -from blocFissure.CasTests.fissureCoude_6 import fissureCoude_6 -problemes.append(fissureCoude_6(n_cas)) - -n_cas = 22 -from blocFissure.CasTests.fissureCoude_7 import fissureCoude_7 -problemes.append(fissureCoude_7(n_cas)) - -n_cas = 23 -# matériel : fissureGauche2 -from blocFissure.CasTests.fissureCoude_8 import fissureCoude_8 -problemes.append(fissureCoude_8(n_cas)) - -n_cas = 24 -from blocFissure.CasTests.fissureCoude_9 import fissureCoude_9 -problemes.append(fissureCoude_9(n_cas)) - -n_cas = 25 -from blocFissure.CasTests.fissure_Coude import fissure_Coude -problemes.append(fissure_Coude(n_cas)) - -n_cas = 26 -from blocFissure.CasTests.fissure_Coude_4 import fissure_Coude_4 -problemes.append(fissure_Coude_4(n_cas)) - -n_cas = 27 -from blocFissure.CasTests.vis_1 import vis_1 -problemes.append(vis_1(n_cas)) -#"Mesh_22" has not been computed: -#- "algo2d_faceFiss" failed on FACE #2. Error: Algorithm failed. NgException at Surface meshing: Problem in Surface mesh generation -#- "algo1d_edgeFissPeau" failed on EDGE #9. Error: Algorithm failed. Source elements don't cover totally the geometrical edge -#Traceback (most recent call last): - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/CasTests/execution_Cas.py", line 233, in - #ok_maillage = cas.executeProbleme() - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/gmu/fissureGenerique.py", line 122, in executeProbleme - #self.maillageFissureParams, elementsDefaut, step) - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/CasTests/vis_1.py", line 116, in genereMaillageFissure - #maillageFissureParams, elementsDefaut, step) - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/gmu/construitFissureGenerale.py", line 282, in construitFissureGenerale - #meshPipeGroups, areteFaceFissure, rayonPipe, nbsegRad) - #File "/home/D68518/salome-dev/DEV_package/appli_DEV_package/lib/python3.6/site-packages/salome/blocFissure/gmu/mailleFacesFissure.py", line 69, in mailleFacesFissure - #raise Exception(text) -#Exception: Erreur au calcul du maillage. - -n_cas = 28 -from blocFissure.CasTests.tube import tube -problemes.append(tube(n_cas)) -#"Mesh_13" has not been computed: -#- "algo2d_facePeau_0" failed on "FACE_12 to mesh". Error: Algorithm failed. NgException at Surface meshing: Problem in Surface mesh generation -#- "algo1d_cercle1_0" failed on EDGE #20. Error: Algorithm failed. Source elements don't cover totally the geometrical edge -#- "algo1d_cercle1_0" failed on EDGE #17. Error: Algorithm failed. Source elements don't cover totally the geometrical edge -#- "algo1d_cercle1_0" failed on EDGE #15. Error: Algorithm failed. Source elements don't cover totally the geometrical edge -#- "algo1d_cercle1_0" failed on EDGE #12. Error: Algorithm failed. Source elements don't cover totally the geometrical edge - +def caract_l_problemes (): + """Caractérisation des problèmes""" + d_aux = dict() + l_problemes = list() + + n_cas = 0 + # genereMateriel : cubeAngle + from blocFissure.CasTests.cubeAngle import cubeAngle + l_problemes.append(cubeAngle(n_cas)) + + n_cas = 1 + # genereMateriel : cubeAngle + from blocFissure.CasTests.cubeAngle2 import cubeAngle2 + l_problemes.append(cubeAngle2(n_cas)) + + n_cas = 2 + # genereMateriel : cubeFin + from blocFissure.CasTests import cubeCoin + l_problemes.append(casStandard(cubeCoin.dicoParams, cubeCoin.referencesMaillageFissure, n_cas)) + d_aux[n_cas] = "cubeCoin" + + n_cas = 3 + # genereMateriel : cubeFin + from blocFissure.CasTests import cubeMilieu + l_problemes.append(casStandard(cubeMilieu.dicoParams, cubeMilieu.referencesMaillageFissure, n_cas)) + d_aux[n_cas] = "cubeMilieu" + + n_cas = 4 + # genereMateriel : cubeFin + from blocFissure.CasTests import cubeTransverse + l_problemes.append(casStandard(cubeTransverse.dicoParams, cubeTransverse.referencesMaillageFissure, n_cas)) + d_aux[n_cas] = "cubeTransverse" + + n_cas = 5 + # genereMateriel : decoupeCylindre + from blocFissure.CasTests.cylindre import cylindre + l_problemes.append(cylindre(n_cas)) + + n_cas = 6 + # genereMateriel : decoupeCylindre + from blocFissure.CasTests.cylindre_2 import cylindre_2 + l_problemes.append(cylindre_2(n_cas)) + + n_cas = 7 + # genereMateriel : disque_perce + # genereMateriel : ellipse_disque + from blocFissure.CasTests import disquePerce + l_problemes.append(casStandard(disquePerce.dicoParams, disquePerce.referencesMaillageFissure, n_cas)) + d_aux[n_cas] = "disquePerce" + + n_cas = 8 + # genereMateriel: ellipse + # genereMateriel : fissureGauche2 + from blocFissure.CasTests.ellipse_1 import ellipse_1 + l_problemes.append(ellipse_1(n_cas)) + + n_cas = 9 + # genereMateriel: ellipse_probleme + # genereMateriel : fissureGauche2 + from blocFissure.CasTests.ellipse_2 import ellipse_2 + l_problemes.append(ellipse_2(n_cas)) + + n_cas = 10 + # genereMateriel : eprouvetteCourbe + from blocFissure.CasTests.eprouvetteCourbe import eprouvetteCourbe + l_problemes.append(eprouvetteCourbe(n_cas)) + + n_cas = 11 + # genereMateriel : eprouvetteDroite + from blocFissure.CasTests.eprouvetteDroite import eprouvetteDroite + l_problemes.append(eprouvetteDroite(n_cas)) + + n_cas = 12 + # genereMateriel : eprouvetteDroite + from blocFissure.CasTests.eprouvetteDroite_2 import eprouvetteDroite_2 + l_problemes.append(eprouvetteDroite_2(n_cas)) + + n_cas = 13 + # genereMateriel : fissureGauche + from blocFissure.CasTests.faceGauche import faceGauche + l_problemes.append(faceGauche(n_cas)) + + n_cas = 14 + # genereMateriel : fissureGauche2 + from blocFissure.CasTests.faceGauche_2 import faceGauche_2 + l_problemes.append(faceGauche_2(n_cas)) + + n_cas = 15 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_1 import fissureCoude_1 + l_problemes.append(fissureCoude_1(n_cas)) + + n_cas = 16 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_2 import fissureCoude_2 + l_problemes.append(fissureCoude_2(n_cas)) + + n_cas = 17 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_3 import fissureCoude_3 + l_problemes.append(fissureCoude_3(n_cas)) + + n_cas = 18 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_4 import fissureCoude_4 + l_problemes.append(fissureCoude_4(n_cas)) + + n_cas = 19 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_5 import fissureCoude_5 + l_problemes.append(fissureCoude_5(n_cas)) + + n_cas = 20 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_6 import fissureCoude_6 + l_problemes.append(fissureCoude_6(n_cas)) + + n_cas = 21 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_7 import fissureCoude_7 + l_problemes.append(fissureCoude_7(n_cas)) + + n_cas = 22 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_8 import fissureCoude_8 + l_problemes.append(fissureCoude_8(n_cas)) + + n_cas = 23 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_9 import fissureCoude_9 + l_problemes.append(fissureCoude_9(n_cas)) + + n_cas = 24 + # genereMateriel : aucun + from blocFissure.CasTests.fissureCoude_10 import fissureCoude_10 + l_problemes.append(fissureCoude_10(n_cas)) + + n_cas = 25 + # genereMateriel : aucun + from blocFissure.CasTests.fissure_Coude import fissure_Coude + l_problemes.append(fissure_Coude(n_cas)) + + n_cas = 26 + # genereMateriel : aucun + from blocFissure.CasTests.fissure_Coude_4 import fissure_Coude_4 + l_problemes.append(fissure_Coude_4(n_cas)) + + n_cas = 27 + # genereMateriel : vis + from blocFissure.CasTests.vis_1 import vis_1 + l_problemes.append(vis_1(n_cas)) + + n_cas = 28 + # genereMateriel : tube + from blocFissure.CasTests.tube import tube + l_problemes.append(tube(n_cas)) + #"Mesh_13" has not been computed: + #- "algo2d_facePeau_0" failed on "FACE_12 to mesh". Error: Algorithm failed. NgException at Surface meshing: Problem in Surface mesh generation + #- "algo1d_cercle1_0" failed on EDGE #20. Error: Algorithm failed. Source elements don't cover totally the geometrical edge + #- "algo1d_cercle1_0" failed on EDGE #17. Error: Algorithm failed. Source elements don't cover totally the geometrical edge + #- "algo1d_cercle1_0" failed on EDGE #15. Error: Algorithm failed. Source elements don't cover totally the geometrical edge + #- "algo1d_cercle1_0" failed on EDGE #12. Error: Algorithm failed. Source elements don't cover totally the geometrical edge + + return l_problemes, d_aux #============================================================= -while True: - - if ( len(problemes) != len(torun) ): - texte = "\nNombre de problèmes définis : {}\n".format(len(problemes)) - texte += "Longueur de la liste 'torun' : {}\n".format(len(torun)) - texte += "\t==> Incohérence de programmation à corriger." - print (texte) - break +def calcul_cas (n_cas, cas, d_aux, ligne): + """Calcul d'un cas""" + texte = "" + if n_cas in d_aux: + nom = d_aux[n_cas] + else: + nom = cas.nomProbleme + texte_a = "\n=== Exécution du cas n° {}, '{}'".format(n_cas,nom) + logging.critical(ligne+texte_a) + + try: + ok_maillage = cas.executeProbleme() + except: + traceback.print_exc() + ok_maillage = False + if not ok_maillage: + texte = "Problème avec le cas n° {}, '{}'\n".format(n_cas,nom) + print(ligne) + + return ok_maillage, texte +#============================================================= +def calcul_tout (l_problemes, d_aux): + """Calcul de tous les cas""" ligne = "---------------------------------------------------------------------" - texte = "" + texte = "\n" nb_cas_ok = 0 nb_cas_nook = 0 - for n_cas, cas in enumerate(problemes): + for n_cas, cas in enumerate(l_problemes): #print ("Cas n° {}, '{}'".format(n_cas,cas.nomProbleme)) - if torun[n_cas]: - if n_cas in d_aux: - nom = d_aux[n_cas] - else: - nom = cas.nomProbleme - texte_a = "\n=== Exécution du cas n° {}, '{}'".format(n_cas,nom) - logging.critical(ligne+texte_a) - try: - ok_maillage = cas.executeProbleme() - except: - traceback.print_exc() - texte += "Problème avec le cas n° {}, '{}'\n".format(n_cas,nom) - ok_maillage = False + if TORUN[n_cas]: + ok_maillage, texte_a = calcul_cas (n_cas, cas, d_aux, ligne) + texte += texte_a if ok_maillage: nb_cas_ok += 1 else: @@ -263,6 +280,23 @@ while True: else: texte += "Les {} tests se sont bien passés.\n".format(nb_cas) print (texte+ligne) + logging.critical(ligne+texte) - break + return +#============================================================= +#============================================================= + +while True: + L_PROBLEMES, D_AUX = caract_l_problemes() + + if ( len(L_PROBLEMES) != len(TORUN) ): + TEXTE = "\nNombre de problèmes définis : {}\n".format(len(L_PROBLEMES)) + TEXTE += "Longueur de la liste 'TORUN' : {}\n".format(len(TORUN)) + TEXTE += "\t==> Incohérence de programmation à corriger dans {}".format(__name__) + print (TEXTE) + break + + calcul_tout (L_PROBLEMES, D_AUX) + + break