]> SALOME platform Git repositories - tools/eficas.git/blob - Tests/testelem/testsimp3.py
Salome HOME
ajout 2 tests
[tools/eficas.git] / Tests / testelem / testsimp3.py
1 # coding=utf-8
2 from Accas import SIMP,ASSD
3 from Extensions.formula import Variable,cos
4
5 import unittest
6
7 class TestSimpCase(unittest.TestCase):
8    def setUp(self):
9        pass
10
11    def tearDown(self):
12        pass
13
14    def test001(self):
15        a=Variable("n",25.6)
16        self.assertEqual(repr(a),"Variable('n',25.6)")
17        self.assertEqual(str(a),"n")
18        self.assertEqual(a.eval(),25.6)
19        b=-a
20        self.assertEqual(str(b),"-(n)")
21        self.assertEqual(b.eval(),-25.6)
22        b=-a*100+3/2
23        self.assertEqual(str(b),'((-(n) * 100) + 1)')
24        self.assertEqual(b.eval(),-2559)
25        b=a/10
26        self.assertEqual(str(b),'(n / 10)')
27        self.assertEqual(b.eval(),2.56)
28        c=Variable('q',[1,a,3])
29        d=c[1]/3
30        self.assertEqual(str(d),'((q[1]) / 3)')
31        self.assertEqual(d.eval(),25.6/3)
32        f=cos(d)
33        self.assertEqual(str(f),'cos(((q[1]) / 3))')
34        self.assertEqual(f.eval(),-0.628288791022798)
35        g=a**2
36        self.assertEqual(str(g),'(n ** 2)')
37        self.assertEqual(g.eval(),655.36000000000013)
38        h=2*Variable("x",2)
39        g=a**h
40        self.assertEqual(str(g),'(n ** (2 * x))')
41        self.assertEqual(g.eval(),429496.72960000008)
42
43    def test003(self):
44        cata=SIMP(statut='o',typ='R',max=3)
45        liste=((1,1),(Variable('x',(0.,1.)),1), (1.,1),(Variable('x',(0.,1.)),1), (('RI',1,0),0),
46               (1+0j,0), ("('RI',1,0)",0), ("toto",0), (None,0),
47              )
48        for valeur,valid in liste:
49            o=cata(valeur,'mcs',None)
50            print o.val,o.valeur
51            msg="erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report())
52            self.assertEqual(o.isvalid(),valid,msg=msg)