Salome HOME
CCAR:ajout d'un repertoire de tests elementaires
[tools/eficas.git] / Tests / testelem / testoper1.py
1 # coding=utf-8
2 import cata1
3 from cata1 import OP1,OP2,OP3,OP4,OP5,OP6
4 from Accas import AsException,ASSD,OPER,SIMP,FACT,BLOC,_F
5
6 class concept(ASSD):pass
7
8 import unittest
9
10 class TestOperCase(unittest.TestCase):
11    def setUp(self):
12       pass
13
14    def tearDown(self):
15       pass
16
17    def test01(self):
18       co1=OP1(a=1)
19       cr=co1.etape.report()
20       self.assert_(cr.estvide())
21       co1.etape.supprime()
22
23    def test02(self):
24       """ Test fonction sd_prod
25       """
26       co1=OP2(TYPE_RESU="TRANS")
27       cr=co1.etape.report()
28       self.assert_(cr.estvide())
29       co1.etape.supprime()
30
31    def test04(self):
32       """ Test fonction sd_prod
33           Test du type d'un argument avec AsType
34       """
35       co1=OP1(a=1)
36       co2=OP3(MATR=co1)
37       cr=co2.etape.report()
38       self.assert_(cr.estvide())
39       co1.etape.supprime()
40       co2.etape.supprime()
41
42    def test05(self):
43       """ Test fonction sd_prod
44           Test sur un mot-clé simple d'un mot-clé facteur : mcf[mcs]
45       """
46       co1=OP4(MESURE={'NOM_PARA':'INST'})
47       cr=co1.etape.report()
48       self.assert_(cr.estvide())
49       co1.etape.supprime()
50
51    def test06(self):
52       """ Test fonction sd_prod
53           Test sur un mot-clé simple d'un mot-clé facteur : mcf.get_child(mcs).get_valeur()
54       """
55       co2=OP1(a=1)
56       co1=OP5(FFT={'FONCTION':co2})
57       cr=co1.etape.report()
58       self.assert_(cr.estvide())
59       co1.etape.supprime()
60       co2.etape.supprime()
61
62    def test07(self):
63       """ Test fonction sd_prod
64           Test sur un mot-clé simple d'un mot-clé facteur : mcf[0][mcs]
65       """
66       co2=OP1(a=1)
67       co1=OP6(FILTRE={'MODE':co2})
68       cr=co1.etape.report()
69       self.assert_(cr.estvide())
70       co1.etape.supprime()
71       co2.etape.supprime()
72
73    def test08(self):
74       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
75                    a=SIMP(typ='I'),
76                    c=SIMP(statut='o',typ='TXM',position='global',
77                            into=("TABLEAU","AGRAF"),
78                          ),
79                    b=FACT(statut='o',max='**',
80                    b_forme=BLOC(condition="c == 'TABLEAU'",
81                                 d=SIMP(statut='f',typ='TXM'),
82                                 ),
83                         ),
84                  )
85
86       co1=OP10(a=1,c="TABLEAU",b=_F(d='rr'))
87       cr=co1.etape.report()
88       self.assertEqual(co1.etape['a'],1)
89       self.assertEqual(co1.etape['c'],'TABLEAU')
90       self.assertEqual(co1.etape['b']['d'],'rr')
91       self.assert_(cr.estvide())
92       co1.etape.supprime()
93
94    def test09(self):
95       co2=OP1(a=1)
96       co1=OP5(FFT={'FONCTION':co2})
97       l= co1.etape.get_sd_utilisees()
98       self.assert_(len(l)==1)
99       self.assert_(co2 in l )
100       d=co1.etape.get_sd_mcs_utilisees()
101       self.assert_(len(d.keys())==1)
102       self.assert_(len(d['FONCTION'])==1)
103       self.assert_(co2 in d['FONCTION'])
104       co1.etape.supprime()
105       co2.etape.supprime()
106
107    def test10(self):
108       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
109                    a=SIMP(statut='o',typ='R',max=5),
110                  )
111       class mylist(list):pass
112       valeur=(0,1)
113       co1=OP10(a=mylist(valeur))
114       #n,v=co1.etape.getvr8("","a",0,1,3)
115       v=tuple(co1.etape["a"])
116       msg="erreur sur le test " +'\n'+str(co1.etape.report())
117       self.assertEqual(v,valeur,msg=msg)
118       co1.etape.supprime()
119
120    def futuretest11(self):
121       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
122                    a=SIMP(statut='o',typ='R',into=(0,1,2),max=5),
123                  )
124       class mylist(list):pass
125       valeur=(2,0,1)
126       co1=OP10(a=mylist(valeur))
127       v=tuple(co1.etape["a"])
128       #n,v=co1.etape.getvr8("","a",0,1,3)
129       msg="erreur sur le test " +'\n'+str(co1.etape.report())
130       self.assertEqual(v,valeur,msg=msg)
131       co1.etape.supprime()
132
133    def futuretest12(self):
134       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
135                    a=SIMP(statut='o',typ='R',into=(2,4,3,5),max=5),
136                  )
137       class mylist(list):pass
138       valeur=(2,0,1)
139       co1=OP10(a=mylist(valeur))
140       msg="erreur sur le test " +'\n'+str(co1.etape.report())
141       self.assertEqual(co1.etape.isvalid(),0,msg=msg)
142       co1.etape.supprime()
143
144    def futuretest13(self):
145       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
146                    a=SIMP(statut='o',typ='R',val_min=0,val_max=3,max=5),
147                  )
148       class mylist(list):pass
149       valeur=(2,0,1)
150       co1=OP10(a=mylist(valeur))
151       msg="erreur sur le test " +'\n'+str(co1.etape.report())
152       self.assertEqual(co1.etape.isvalid(),1,msg=msg)
153       co1.etape.supprime()
154
155    def futuretest14(self):
156       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
157                    a=SIMP(statut='o',typ='R',val_min=0,val_max=1,max=5),
158                  )
159       class mylist(list):pass
160       valeur=(2,0,1)
161       co1=OP10(a=mylist(valeur))
162       msg="erreur sur le test " +'\n'+str(co1.etape.report())
163       self.assertEqual(co1.etape.isvalid(),0,msg=msg)
164       co1.etape.supprime()
165
166    def test15(self):
167       OP10 = OPER(nom='OP10',op=10,sd_prod=concept,
168                    a=SIMP(statut='o',typ='R',val_min=0,val_max=1,max=5),
169                  )
170       valeur=(2,0,1)
171       co1=OP10(a=valeur)
172       msg="erreur sur le test " +'\n'+str(co1.etape.report())
173       self.assertEqual(co1.etape.isvalid(),0,msg=msg)
174       co1.etape.supprime()