From 18e5a3a3aba5d79dc62401416f86774840c15c8a Mon Sep 17 00:00:00 2001 From: Jean-Philippe ARGAUD Date: Fri, 11 Nov 2016 21:25:38 +0100 Subject: [PATCH] Updating tests and version management --- bin/module_version.py | 2 +- resources/SalomeApp.xml | 2 +- src/daComposant/daCore/ExtendedLogging.py | 6 -- ...oV8_1_0.py => traduitADAO8_1_0ToV8_2_0.py} | 2 +- ...V8_1_0.py => traduitADAOV7_4_0ToV8_2_0.py} | 2 +- ...V8_1_0.py => traduitADAOV7_5_0ToV8_2_0.py} | 2 +- ...V8_1_0.py => traduitADAOV7_5_1ToV8_2_0.py} | 2 +- ...V8_1_0.py => traduitADAOV7_6_0ToV8_2_0.py} | 2 +- ...V8_1_0.py => traduitADAOV7_7_0ToV8_2_0.py} | 2 +- src/daEficas/traduitADAOV7_8_0ToV8_2_0.py | 98 +++++++++++++++++++ ...ToV8_1_0.py => traduitADAOsansToV8_2_0.py} | 2 +- test/test1002/CTestTestfile.cmake | 2 +- test/test1002/HelloWorld.py | 3 - test/test1002/Performances.py | 87 ++++++++++++++++ 14 files changed, 195 insertions(+), 19 deletions(-) rename src/daEficas/{traduitADAOV7_7_0ToV8_1_0.py => traduitADAO8_1_0ToV8_2_0.py} (99%) rename src/daEficas/{traduitADAOV7_4_0ToV8_1_0.py => traduitADAOV7_4_0ToV8_2_0.py} (99%) rename src/daEficas/{traduitADAOV7_5_0ToV8_1_0.py => traduitADAOV7_5_0ToV8_2_0.py} (99%) rename src/daEficas/{traduitADAOV7_5_1ToV8_1_0.py => traduitADAOV7_5_1ToV8_2_0.py} (99%) rename src/daEficas/{traduitADAOV7_8_0ToV8_1_0.py => traduitADAOV7_6_0ToV8_2_0.py} (99%) rename src/daEficas/{traduitADAOV7_6_0ToV8_1_0.py => traduitADAOV7_7_0ToV8_2_0.py} (99%) create mode 100644 src/daEficas/traduitADAOV7_8_0ToV8_2_0.py rename src/daEficas/{traduitADAOsansToV8_1_0.py => traduitADAOsansToV8_2_0.py} (99%) delete mode 100644 test/test1002/HelloWorld.py create mode 100644 test/test1002/Performances.py diff --git a/bin/module_version.py b/bin/module_version.py index d4202d3..b509a00 100644 --- a/bin/module_version.py +++ b/bin/module_version.py @@ -23,6 +23,6 @@ # Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D name = "ADAO" -version = "V8_1_0" # Version pour catalogue, avec des "_" entre les numeros +version = "V8_2_0" # Version pour catalogue, avec des "_" entre les numeros date = "" year = "2016" # Annee de copyright diff --git a/resources/SalomeApp.xml b/resources/SalomeApp.xml index a0b75f4..d59e4bb 100644 --- a/resources/SalomeApp.xml +++ b/resources/SalomeApp.xml @@ -28,7 +28,7 @@ - +
diff --git a/src/daComposant/daCore/ExtendedLogging.py b/src/daComposant/daCore/ExtendedLogging.py index 7a78715..afc3387 100644 --- a/src/daComposant/daCore/ExtendedLogging.py +++ b/src/daComposant/daCore/ExtendedLogging.py @@ -110,12 +110,6 @@ class ExtendedLogging(object): logging.info( "- Scipy "+p.getScipyVersion() ) logging.info( "" ) -# def setLogfileLevel(self, level=logging.NOTSET ): -# """ -# Permet de changer globalement le niveau des messages disponibles. -# """ -# logging.getLogger().setLevel(level) -# def setLogfile(self, filename=LOGFILE, filemode="w", level=logging.NOTSET): """ Permet de disposer des messages dans un fichier EN PLUS de la console. diff --git a/src/daEficas/traduitADAOV7_7_0ToV8_1_0.py b/src/daEficas/traduitADAO8_1_0ToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOV7_7_0ToV8_1_0.py rename to src/daEficas/traduitADAO8_1_0ToV8_2_0.py index a252c68..cc82022 100644 --- a/src/daEficas/traduitADAOV7_7_0ToV8_1_0.py +++ b/src/daEficas/traduitADAO8_1_0ToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/src/daEficas/traduitADAOV7_4_0ToV8_1_0.py b/src/daEficas/traduitADAOV7_4_0ToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOV7_4_0ToV8_1_0.py rename to src/daEficas/traduitADAOV7_4_0ToV8_2_0.py index 6709ed7..d6909af 100644 --- a/src/daEficas/traduitADAOV7_4_0ToV8_1_0.py +++ b/src/daEficas/traduitADAOV7_4_0ToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/src/daEficas/traduitADAOV7_5_0ToV8_1_0.py b/src/daEficas/traduitADAOV7_5_0ToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOV7_5_0ToV8_1_0.py rename to src/daEficas/traduitADAOV7_5_0ToV8_2_0.py index 6709ed7..d6909af 100644 --- a/src/daEficas/traduitADAOV7_5_0ToV8_1_0.py +++ b/src/daEficas/traduitADAOV7_5_0ToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/src/daEficas/traduitADAOV7_5_1ToV8_1_0.py b/src/daEficas/traduitADAOV7_5_1ToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOV7_5_1ToV8_1_0.py rename to src/daEficas/traduitADAOV7_5_1ToV8_2_0.py index 6709ed7..d6909af 100644 --- a/src/daEficas/traduitADAOV7_5_1ToV8_1_0.py +++ b/src/daEficas/traduitADAOV7_5_1ToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/src/daEficas/traduitADAOV7_8_0ToV8_1_0.py b/src/daEficas/traduitADAOV7_6_0ToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOV7_8_0ToV8_1_0.py rename to src/daEficas/traduitADAOV7_6_0ToV8_2_0.py index a252c68..cc82022 100644 --- a/src/daEficas/traduitADAOV7_8_0ToV8_1_0.py +++ b/src/daEficas/traduitADAOV7_6_0ToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/src/daEficas/traduitADAOV7_6_0ToV8_1_0.py b/src/daEficas/traduitADAOV7_7_0ToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOV7_6_0ToV8_1_0.py rename to src/daEficas/traduitADAOV7_7_0ToV8_2_0.py index a252c68..cc82022 100644 --- a/src/daEficas/traduitADAOV7_6_0ToV8_1_0.py +++ b/src/daEficas/traduitADAOV7_7_0ToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/src/daEficas/traduitADAOV7_8_0ToV8_2_0.py b/src/daEficas/traduitADAOV7_8_0ToV8_2_0.py new file mode 100644 index 0000000..cc82022 --- /dev/null +++ b/src/daEficas/traduitADAOV7_8_0ToV8_2_0.py @@ -0,0 +1,98 @@ +#-*-coding:iso-8859-1-*- +# +# Copyright (C) 2008-2016 EDF R&D +# +# This file is part of SALOME ADAO module +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D + +import optparse +import sys +import re + +import Traducteur.log as log +from Traducteur.load import getJDC, getJDCFromTexte +from Traducteur.mocles import parseKeywords +from Traducteur.dictErreurs import GenereErreurPourCommande +from Traducteur.inseremocle import * +from Traducteur.movemocle import * +from Traducteur.renamemocle import * + +version_out = "V8_2_0" + +usage="""Usage: python %prog [options] + +Typical use is: + python %prog --infile=xxxx.comm --outfile=yyyy.comm""" + +atraiter = ( + ) + +dict_erreurs = { + } + +sys.dict_erreurs=dict_erreurs + +def traduc(infile=None,outfile=None,texte=None,flog=None): + hdlr = log.initialise(flog) + if infile is not None: + jdc = getJDC(infile,atraiter) + elif texte is not None: + jdc = getJDCFromTexte(texte,atraiter) + else: + raise ValueError("Traduction du JDC impossible") + # ========================================================================== + + + # ========================================================================== + fsrc = jdc.getSource() + fsrc = re.sub( "#VERSION_CATALOGUE:.*:FIN VERSION_CATALOGUE", "#VERSION_CATALOGUE:%s:FIN VERSION_CATALOGUE"%version_out, fsrc) + fsrc = re.sub( "#CHECKSUM.*FIN CHECKSUM", "", fsrc ) + # + log.ferme(hdlr) + if outfile is not None: + f=open(outfile,'w') + f.write( fsrc ) + f.close() + else: + return fsrc + +class MonTraducteur: + def __init__(self,texte): + self.__texte = str(texte) + def traduit(self): + return traduc(infile=None,outfile=None,texte=self.__texte,flog=None) + +def main(): + parser = optparse.OptionParser(usage=usage) + + parser.add_option('-i','--infile', dest="infile", + help="Le fichier COMM en entree, a traduire") + parser.add_option('-o','--outfile', dest="outfile", default='out.comm', + help="Le fichier COMM en sortie, traduit") + + options, args = parser.parse_args() + if len(options.infile) == 0: + print + parser.print_help() + print + sys.exit(1) + + traduc(options.infile,options.outfile) + +if __name__ == '__main__': + main() diff --git a/src/daEficas/traduitADAOsansToV8_1_0.py b/src/daEficas/traduitADAOsansToV8_2_0.py similarity index 99% rename from src/daEficas/traduitADAOsansToV8_1_0.py rename to src/daEficas/traduitADAOsansToV8_2_0.py index 6709ed7..d6909af 100644 --- a/src/daEficas/traduitADAOsansToV8_1_0.py +++ b/src/daEficas/traduitADAOsansToV8_2_0.py @@ -32,7 +32,7 @@ from Traducteur.inseremocle import * from Traducteur.movemocle import * from Traducteur.renamemocle import * -version_out = "V8_1_0" +version_out = "V8_2_0" usage="""Usage: python %prog [options] diff --git a/test/test1002/CTestTestfile.cmake b/test/test1002/CTestTestfile.cmake index 71189e9..782f115 100644 --- a/test/test1002/CTestTestfile.cmake +++ b/test/test1002/CTestTestfile.cmake @@ -20,7 +20,7 @@ # SET(TEST_NAMES - HelloWorld + Performances ) FOREACH(tfile ${TEST_NAMES}) diff --git a/test/test1002/HelloWorld.py b/test/test1002/HelloWorld.py deleted file mode 100644 index b5ca5cb..0000000 --- a/test/test1002/HelloWorld.py +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env python - -print "Hello world 2!" diff --git a/test/test1002/Performances.py b/test/test1002/Performances.py new file mode 100644 index 0000000..f2b9be5 --- /dev/null +++ b/test/test1002/Performances.py @@ -0,0 +1,87 @@ +#-*-coding:iso-8859-1-*- +# +# Copyright (C) 2008-2016 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D +"Test de fonctionnement et de performances de Numpy et Scipy" + +# ============================================================================== +import numpy, time +numpy.set_printoptions(precision=5) + +def testSysteme(): + print " Les caracteristiques des applications et outils systeme :" + import sys ; v=sys.version.split() ; print " - Python systeme....: %s"%v[0] + import numpy ; print " - Numpy.............: %s"%numpy.version.version + try: + import scipy ; print " - Scipy.............: %s"%scipy.version.version + except: + print " - Scipy.............: %s"%("absent",) + try: + import numpy.distutils.system_info as sysinfo ; la = sysinfo.get_info('lapack') ; print " - Lapack............: %s/lib%s.so"%(la['library_dirs'][0],la['libraries'][0]) + except: + print " - Lapack............: %s"%("absent",) + print + return True + +def testNumpy01(dimension = 3, precision = 1.e-17, repetitions = 10): + "Test Numpy" + __d = int(dimension) + print " Taille du test..................................: %.0e"%__d + t_init = time.time() + A = numpy.array([numpy.arange(dimension)+1.,]*__d) + x = numpy.arange(__d)+1. + print " La duree elapsed moyenne de l'initialisation est: %4.1f s"%(time.time()-t_init) + # + t_init = time.time() + for i in range(repetitions): + b = numpy.dot(A,x) + print " La duree elapsed pour %3i produits est de.......: %4.1f s"%(repetitions, time.time()-t_init) + r = [__d*(__d+1.)*(2.*__d+1.)/6.,]*__d + if max(abs(b-r)) > precision: + raise ValueError("Resultat du test errone (1)") + else: + print " Test correct, erreur maximale inferieure a %s"%precision + print + del A, x, b + +def testNumpy02(dimension = 3, precision = 1.e-17, repetitions = 100): + "Test Numpy" + __d = int(dimension) + print " Taille du test..................................: %.0e"%__d + t_init = time.time() + A = numpy.random.normal(0.,1.,size=(__d,__d)) + x = numpy.random.normal(0.,1.,size=(__d,)) + print " La duree elapsed moyenne de l'initialisation est: %4.1f s"%(time.time()-t_init) + # + t_init = time.time() + for i in range(repetitions): + b = numpy.dot(A,x) + print " La duree elapsed pour %3i produits est de.......: %4.1f s"%(repetitions, time.time()-t_init) + print + del A, x, b + +# ============================================================================== +if __name__ == "__main__": + print '\n AUTODIAGNOSTIC \n' + testSysteme() + numpy.random.seed(1000) + testNumpy01(dimension = 1.e4) + testNumpy02(dimension = 3.e3) + print -- 2.39.2