Salome HOME
CCAR: correction d'un probleme de mise a jour de contexte lors d'une insertion
[tools/eficas.git] / Validation / V_AU_MOINS_UN.py
1 #@ MODIF V_AU_MOINS_UN Validation  DATE 14/09/2004   AUTEUR MCOURTOI M.COURTOIS 
2 # -*- coding: iso-8859-1 -*-
3 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
6 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
8 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
9 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10 #
11 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
14 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15 #
16 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19 #                                                                       
20 #                                                                       
21 # ======================================================================
22
23
24
25 class AU_MOINS_UN:
26    """
27       La règle AU_MOINS_UN vérifie que l'on trouve au moins un des mots-clés
28       de la règle parmi les arguments d'un OBJECT.
29
30       Ces arguments sont transmis à la règle pour validation sous la forme 
31       d'une liste de noms de mots-clés ou d'un dictionnaire dont 
32       les clés sont des noms de mots-clés.
33    """
34    def verif(self,args):
35       """
36           La méthode verif vérifie que l'on trouve au moins un des mos-clés
37           de la liste self.mcs parmi les éléments de args
38
39           args peut etre un dictionnaire ou une liste. Les éléments de args
40           sont soit les éléments de la liste soit les clés du dictionnaire.
41       """
42       #  on compte le nombre de mots cles presents
43       text =''
44       count=0
45       args = self.liste_to_dico(args)
46       for mc in self.mcs:
47         if args.has_key(mc):count=count+1
48       if count == 0:
49           text =  "- Il faut au moins un mot-clé parmi : "+`self.mcs`+'\n'
50           return text,0
51       return text,1
52