Salome HOME
AY a ajouté l'interception de l'exception levée lorsque la chaine passée
[tools/eficas.git] / Exemples / ex7 / main.py
1 """
2    Cet exemple construit un objet de définition (cata) de type FACT
3    qui est composé de 3 objets de définition de type FACT et
4    d'une règle AU_MOINS_UN.
5
6    Dans un premier temps on vérifie la conformite de l'objet 
7    de définition ::
8
9       cr=cata.report()
10       if cr.estvide(): ...
11
12    Dans un deuxième temps, on construit deux objets de type 
13    MCFACT dont la définition est cata et on vérifie la conformité
14    de ces objets.
15 """
16
17 import sys
18 sys.path[:0]=['../..']
19
20 from Accas import SIMP,FACT
21 from Accas import AU_MOINS_UN
22
23 # Construction objet de définition
24
25 cata= FACT(sect1=FACT(a=SIMP(typ='I'),b=SIMP(typ='I')),
26            sect2=FACT(c=SIMP(typ='I'),d=SIMP(typ='I')),
27            sect3=FACT(c=SIMP(typ='I'),d=SIMP(typ='I')),
28            regles=AU_MOINS_UN('sect3')
29           )
30
31 # Vérification objet de définition
32
33 cr=cata.report()
34 if cr.estvide():
35    print "L'objet de définition est valide "
36 else:
37    print cr
38
39 # Création de l'objet MCFACT de nom mcf1
40
41 d={'sect1':{'a':1},'sect2':{'c':3}}
42 o=cata(d,'mcf1',None)
43
44 # Vérification objet MCFACT
45
46 cr= o.report()
47 if cr.estvide():
48    print "L'objet MCFACT basé sur le dictionnaire %s est valide " % d
49 else:
50    print "L'objet MCFACT basé sur le dictionnaire %s n'est pas valide " % d
51    print cr
52
53 d={'sect1':{'a':1},'sect3':{'c':3}}
54 o=cata(d,'mcf1',None)
55 cr= o.report()
56 if cr.estvide():
57    print "L'objet MCFACT basé sur le dictionnaire %s est valide " % d
58 else:
59    print "L'objet MCFACT basé sur le dictionnaire %s n'est pas valide " % d
60    print cr