Salome HOME
CCAR: merge de la branche de développement V1_11a1 dans la branche
[tools/eficas.git] / Tests / testelem / testjdc4.py
1 # coding=utf-8
2 import os
3 import unittest
4 import difflib
5 import compare
6
7 import prefs
8 from Editeur import appli
9 from Accas import AsException
10
11 def add_param(j,pos,nom,valeur):
12     co=j.addentite("PARAMETRE",pos)
13     co.set_nom(nom)
14     co.set_valeur(valeur)
15     return co
16
17 def add_mcsimp(obj,nom,valeur):
18     mcs=obj.get_child(nom,restreint='oui')
19     if mcs is None:
20        pos=obj.get_index_child(nom)
21        mcs=obj.addentite(nom,pos)
22     mcs.set_valeur(mcs.eval_val(valeur))
23     return mcs
24
25 def cdiff(text1,text2):
26     return " ".join(difflib.context_diff(text1.splitlines(1),text2.splitlines(1)))
27
28 version='v8'
29
30 class TestCase(unittest.TestCase):
31    def setUp(self):
32       pass
33
34    def tearDown(self):
35       CONTEXT.unset_current_step()
36
37    i=0
38    for f in ("params.comm",):
39       file=os.path.join(prefs.INSTALLDIR,"Tests/testelem",f)
40       i=i+1
41       exec """def test%s(self,file="%s"):
42                   "fichier : %s"
43                   self.commtest(file)
44 """ % (i,file,f)
45    del i
46
47    def commtest(self,file):
48       """ Test de lecture/ecriture de fichier .comm"""
49       #print file
50       app=appli.STANDALONE(version=version)
51       j=app.openJDC(file=file)
52       assert j.isvalid(),j.report()
53
54       text1=app.get_text_JDC(j,'python')
55       f=open(file)
56       text2=f.read()
57       f.close()
58       assert text1 == text2 , cdiff(text2,text1)
59