]> SALOME platform Git repositories - modules/yacs.git/blobdiff - src/yacsloader_swig/Test/testSaveLoadRun.py
Salome HOME
Use /tmp for temporary files needed by salome tests.
[modules/yacs.git] / src / yacsloader_swig / Test / testSaveLoadRun.py
index 33babb3c490e9940a6f730d072cdd88d19bbd04a..bbbb58acbb615f5bd7e1c817eadf509fe8fed579 100755 (executable)
@@ -18,6 +18,9 @@
 #
 
 import unittest
+import tempfile
+import os
+
 import pilot
 import SALOMERuntime
 import loader
@@ -28,11 +31,12 @@ class TestSaveLoadRun(unittest.TestCase):
   def setUp(self):
     SALOMERuntime.RuntimeSALOME.setRuntime()
     self.r=SALOMERuntime.getSALOMERuntime()
+    self.workdir = tempfile.mkdtemp(suffix=".yacstest")
     pass
 
   def test0(self):
     """First test of HP Container no loop here only the 3 sorts of python nodes (the Distributed is it still used and useful ?) """
-    fname="TestSaveLoadRun0.xml"
+    fname=os.path.join(self.workdir, "TestSaveLoadRun0.xml")
     nbOfNodes=8
     sqrtOfNumberOfTurn=1000 # 3000 -> 3.2s/Node, 1000 -> 0.1s/Node
     l=loader.YACSLoader()
@@ -125,7 +129,7 @@ print("coucou from script1-%i  -> %s"%(dbg,str(datetime.datetime.now()-ref)))
 
   def test1(self):
     """ HP Container again like test0 but the initialization key of HPContainer is used here."""
-    fname="TestSaveLoadRun1.xml"
+    fname=os.path.join(self.workdir, "TestSaveLoadRun1.xml")
     nbOfNodes=8
     sqrtOfNumberOfTurn=1000 # 3000 -> 3.2s/Node, 1000 -> 0.1s/Node
     l=loader.YACSLoader()
@@ -234,7 +238,7 @@ o3=0
 """
     script2="""o9=sum(i8)
 """
-    fname="TestSaveLoadRun2.xml"
+    fname=os.path.join(self.workdir, "TestSaveLoadRun2.xml")
     nbOfNodes=8
     sqrtOfNumberOfTurn=1000 # 3000 -> 3.2s/Node, 1000 -> 0.1s/Node
     l=loader.YACSLoader()
@@ -331,7 +335,7 @@ o3=0
 """
     script2="""o9=sum(i8)
 """
-    fname="TestSaveLoadRun3.xml"
+    fname=os.path.join(self.workdir, "TestSaveLoadRun3.xml")
     nbOfNodes=8
     sqrtOfNumberOfTurn=10
     l=loader.YACSLoader()
@@ -408,7 +412,7 @@ o3=0
   
   def test4(self):
     """Non regression test of multi pyScriptNode, pyFuncNode sharing the same HPContainer instance."""
-    fname="TestSaveLoadRun4.xml"
+    fname=os.path.join(self.workdir, "TestSaveLoadRun4.xml")
     script1="""nb=7
 ii=0
 o1=nb*[None]
@@ -493,7 +497,7 @@ for i in range(nb):
 
   def test5(self):
     """Non regression test 2 of multi pyNode, pyFuncNode sharing the same HPContainer instance."""
-    fname="TestSaveLoadRun5.xml"
+    fname=os.path.join(self.workdir, "TestSaveLoadRun5.xml")
     script1="""nb=7
 ii=0
 o1=nb*[None]
@@ -579,7 +583,7 @@ for i in range(nb):
     pass
 
   def test6(self):
-    fname="test6.xml"
+    fname=os.path.join(self.workdir, "test6.xml")
     p=self.r.createProc("prTest0")
     td=p.createType("double","double")
     ti=p.createType("int","int")
@@ -626,7 +630,7 @@ for i in range(nb):
     pass
 
   def test7(self):
-    fname="test7.xml"
+    fname=os.path.join(self.workdir, "test7.xml")
     p=self.r.createProc("prTest1")
     cont=p.createContainer("gg","Salome")
     cont.setProperty("name","localhost")
@@ -687,7 +691,7 @@ else:
 
   def test8(self):
     from datetime import datetime
-    fname="test8.xml"
+    fname=os.path.join(self.workdir, "test8.xml")
     p=self.r.createProc("prTest2")
     cont=p.createContainer("gg","Salome")
     cont.setProperty("name","localhost")
@@ -773,7 +777,7 @@ else:
 
   def test9(self):
     """ Test of assignation of already computed values for foreach node."""
-    fname="test9.xml"
+    fname=os.path.join(self.workdir, "test9.xml")
     from datetime import datetime
     p=self.r.createProc("prTest2")
     cont=p.createContainer("gg","Salome")
@@ -855,7 +859,7 @@ o2=7*i1
     pass
 
   def test10(self):
-    fname="test10.xml"
+    fname=os.path.join(self.workdir, "test10.xml")
     from datetime import datetime
     p=self.r.createProc("prTest2")
     cont=p.createContainer("gg","Salome")
@@ -945,7 +949,7 @@ else:
 
   def test11(self):
     "test if we do not restart from the begining of the schema after an error in a foreach"
-    fname="test11.xml"
+    fname=os.path.join(self.workdir, "test11.xml")
     from datetime import datetime
     p=self.r.createProc("prTest2")
     cont=p.createContainer("gg","Salome")
@@ -1173,7 +1177,7 @@ for i in i8:
 
   def test14(self):
     """ Non regression EDF11027. Problem after Save/Load of a foreach node with type pyobj with input "SmplsCollection" manually set before. Correction in convertToYacsObjref from XML->Neutral. Objref can hide a string !"""
-    xmlFileName="test14.xml"
+    xmlFileName=os.path.join(self.workdir, "test14.xml")
     SALOMERuntime.RuntimeSALOME_setRuntime()
     r=pilot.getRuntime()
     n0=r.createProc("test23/zeRun")
@@ -1214,7 +1218,7 @@ for i in i8:
     pass
 
   def test15(self):
-    fname="BugInConcurrentLaunchDftCont.xml"
+    #fname=os.path.join(self.workdir, "BugInConcurrentLaunchDftCont.xml")
     p=self.r.createProc("pr")
     ti=p.createType("int","int")
     cont=p.createContainer("DefaultContainer","Salome")
@@ -1318,7 +1322,7 @@ for i in i8:
     
   def test19(self):
     """This test checks the mechanism of YACS that allow PythonNodes to know their DynParaLoop context."""
-    fname="test19.xml"
+    fname=os.path.join(self.workdir, "test19.xml")
     l=loader.YACSLoader()
     #
     p=self.r.createProc("PROC")
@@ -1461,8 +1465,8 @@ dd=range(10)""")
 
   def test21(self):
     "test if we restart from a saved state in a foreach loop"
-    fname="test21.xml"
-    xmlStateFileName="saveState21.xml"
+    fname=os.path.join(self.workdir, "test21.xml")
+    xmlStateFileName=os.path.join(self.workdir, "saveState21.xml")
     from datetime import datetime
     p=self.r.createProc("prTest21")
     cont=p.createContainer("gg","Salome")
@@ -1537,22 +1541,14 @@ o2=5*i1
     p.getChildByName("n1").assignPassedResults(a,b,c)
     p.exUpdateState();
     #
-    startt=datetime.now()
     ex.RunW(p,0,False)
-    t1=datetime.now()-startt
     #
     self.assertEqual(n1.getState(),pilot.DONE)
     self.assertEqual(p.getState(),pilot.DONE)
     self.assertEqual(p.getChildByName("n2").getOutputPort("o4").getPyObj(),[0,2,10,15,20,25])
-    pass
-  pass
 
-  def test22(self):
-    """Restart from a saved state in a foreach loop without using assignPassedResults.
-       This test uses the files test21.xml and saveState21.xml produced by test21.
-    """
-    fname="test21.xml"
-    xmlStateFileName="saveState21.xml"
+    # Restart from a saved state in a foreach loop without using assignPassedResults.
+    # This test uses the files test21.xml and saveState21.xml produced by test21.
 
     ex=pilot.ExecutorSwig()
     l=loader.YACSLoader()
@@ -1582,9 +1578,7 @@ o4=i3
   def test23(self):
     """ test focused on weight attribut after a dump and reload from a xml file
     """
-    fname="test23.xml"
-    xmlStateFileName="saveState23.xml"
-    from datetime import datetime
+    fname=os.path.join(self.workdir, "test23.xml")
     p=self.r.createProc("prTest23")
     cont=p.createContainer("gg","Salome")
     cont.setProperty("name","localhost")
@@ -1757,7 +1751,7 @@ t1.addKeyValueInVarErrorIfAlreadyExistingNow(obj2Str("ef"),obj2Str([11,12]))
     pass
 
   def test25(self):
-    fname="test25.xml"
+    fname=os.path.join(self.workdir, "test25.xml")
     p=self.r.createProc("p0")
     tp=p.createInterfaceTc("python:obj:1.0","pyobj",[])
     n1_0_sc=self.r.createScriptNode("Salome","n1_0_sc")
@@ -1790,7 +1784,7 @@ t1.addKeyValueInVarErrorIfAlreadyExistingNow(obj2Str("ef"),obj2Str([11,12]))
     import os
     content_of_file = b'DDkShXM2PeNCndPqRfnYX5EAt.GaRgPq7dNqtfnYZgvqh=kQf7moXCE2z5lED.tCxgM2RcOqdfl29ePC9YnAx3uaGetqF5lE=.E2D0uS1eM2RcOqdfl2FjPqBYE2pdNq7fl2FjPqBYHoT3.2=.Ew9dsCdUFqVfOaj2Eaxet4BeN2=BOKRWOwF0PqfYMqdYHoT3.2=.EwxYNKHeNa=5O4heOwF4OKBeN2=7Maj2FaZXOaFDFwI.E2=1kibUua=5O4heOwF7Nq9YE2pdNq7fl2ZbMiFDFwI.E2=1nqFZNCdaM2RcOqdfl21dvqFZN2=7Maj2ECbWsKxbNQxYNKL6lo12HoT3.2=.EwneOCfeNqleM2RcOqdfl2BdPC9hcCbjN4Jfd2=APqRWuaRWuwF.uSxYNKFDFwI.E2=1kibUua=5O4heOwFAsiHdNqtYE2pdNq7fl2nWtCZbPaFDFwI.E2=1n4xbMiVdNqdYs2RcOqdfl26eNaVesq9g9qRWu4ZbOaHYFwI.E2=.E2=1kCHjMCdYsibUFqVfOaj2H4xbMiVdNqdYvupdNq7YE2PcMqfeOwFAe4BjOqdYHoT3.2=.E2=.Ew1Yvq1eNC9ds2RcOqdfl2VWsiVgMKdWPuxbPulXPqRdNqtYE2PcMqfeOwF.l2x5lE=.E2=.E2D.tCxUuaHWuS=5O4heOwFAPqRWu4ZbOaHjdqVfOaF.FiVXOidfl2McP49jNCbgeaHauaHYHoT3.2=.E2=.Ew1Yvq1eNC9ds2RcOqdfl2RcOqdYE2PcMqfeOwF1PqlcMq3jPC9YHoT3.2=.EwxAPqRWu4ZbOaHblE=.E2D2MqxgM2RcOqdfl29ePC9YnAx9O4ZbN2T3.2=.E2=.EwFXPqlUFqVfOaj2EidgsiHAnoHetqF5lE=.E2=.E2=.E2D4PqHeO4lVM2RcOqdfl29ePC9YnAx48WF.FqFYu4RgMKj2FAF.EqxjMCueOKtVMij2GoX2E29dsCdfl21dvqFZN2T3.2=.E2=.E2=.E2=.EwZbMqZbOa=5O4heOwF0uanWtAnDFCfbPuZbMidYtqVXN2T3.2=.E2=.E2=.E2=.E2=.EwngNCZUsiT1n4xWOaT1m2qg6WUWe0qjMAj7MAp7OAifdwDDH4xWOaT1nongNCZUsiT3.2=.E2=.E2=.E2=.E2=.EwZbMCxYsi=5O4heOwF7MAF.EibUuaj2ECbjN4JYHoT3.2=.E2=.E2=.E2=.E2=.EwZbMCxYsi=5O4heOwF7OAF.EibUuaj2ECbjN4JYHoT3.2=.E2=.E2=.E2=.E2=.Ewxesi1jNC9UFqVfOaj2Hq12E29dsCdfl21dvqFZN2x5lE=.E2=.E2=.E2=.E2DDGKRXOKReNwI.E2=.E2=.E2=1noNjNCdcP43blE=.E2=.E2=.E2D0O49cMqZbPK=APqRWtCxXOwF4O4BguaF5lE=.E2=.E2=.E2=.E2D4NCxfNqxWOaT0uanWtAnDFWcXnoNYvqhbPq7eNw=1laHjOq1jNC9bmaPcMqmcOq1XOanXnoNYvqhUvqHWtwI.E2=.E2=.E2=.E2=1kixbPq7eNw9ePC9YnAx48WR0uanWtAnDFCfbPuZbMidYtqVXMwx0vqRjMadbk2D0vq1jNC9bmK11no9jMCxYsiT3.2=.E2=.E2=.Ewx0O49cMqZbPKT3.2=.E2=.Ewx2MqxgNwI.E2=.E2=1mKRXOKReM2RcOqdfl29ePC9YnAxAMKdgPKF5lE=.E2=.E2=.E2DAv4HdMC9bkwljMadbkwVBf06c6eUhfqX9mKH9euT1noljMadbkwxAv4HdMC9blE=.E2=.E2=.E2D7Nq1jNC9UFqVfOaj2GKH2E29dsCdfl2BdPC9hcCbjN4Jfd2x5lE=.E2=.E2=.E2DDOi9UvqHWs2RcOqdfl2xcl2=0uS1eOwF1OKnWvO1dvqFZOuFDFwI.E2=.E2=1noZbMqZbOaT3.2=.E2=.EwljNq9YvqBbk2D4NCxfNqxWOaT0uanWtAnDFCfbMwx4NCxfNqxWOaT.Ew9jNqxWOaT0uanWtAnDH43eP4pXno9jNqxWOaT.EwxAPqRWtCxXNwI.E2=.E2=1kaVWu4BdNqpUH4xbMiHjMqj2FaVXPCdYFwI.E2=.E2=.E2=1laHjOqRjMadbkidgsiHAnoHetqR0uanWtAnDFWcbEidgsiHAnoHetqydNq9eNCRcMqDDFaHjOqRjMadbk2D4NCxfMCxYsiTDMADDFaHjOq1jNC9blE=.E2=.E2=.E2D0vqRjMadbkidgsiHAnolVOalhMwx0vqRjMadbk2D0vq1jNC9bmKH1no9jMCxYsiT3.2=.E2=.Ewx0O49cMqZbPKT3.2=.Ewx2MqxgNwI.E2=1kCVYu4heMidYtwI.E2=.E2=1kixbPq7eNw9ePC9YnAx9O4ZbNo9ePC9YnAx2uiRbEidgsiHAnoMe6wx0vqRjMadbkw9jMCxYsiT5N4EYu4RgMKdgswx0vq1jNC9blE=.E2=.E2D4u4BeuaT1mKRWtwH1noZbMiT1noPcMqfeNwI.E2=1no1cNCVfOa9eNCT3.2=.Ew1cNCVfOa9eNCT3.2=.E2=.Ew9jNqxWOaT0uanWtAnDGqVdNqR0uanWtAnDFCfbNo9ePC9YnAx48WDDEixbPq7eNwD0vq1jNC9bn8hUsqng9qBXOalWuKxbMwx0vq1jNC9blE=.E2=.E2D4u4BeuaT1m4HYu4bbkw7cMiVblED4u4BeuaT1nC9YuKRiNwAUkmI5EwxAsiHdNqtbkwx4u4BeuaT3.wPcMqfeNwDAsiHdNqtbkmX17ER1nonWtCZbPaT1noPcMqfeNwI1liVXOidbkwnWtCZbPaT17AAZ=oDDHC9YuKRiNwDDFiVXOidblED4u4BeuaT1nC9YuKRiNwAgkmI5EwxAsiHdNqtbkwx4u4BeuaT3.wPcMqfeNwDAsiHdNqtbkm917ER1nonWtCZbPaT1noPcMqfeNwI1liVXOidbkwnWtCZbPaT18gAZ=oDDHC9YuKRiNwDDFiVXOidblED4u4BeuaT1nC9YuKRiNwAakmI5EwxAsiHdNqtbkwx4u4BeuaT3.wPcMqfeNwDAsiHdNqtbkmv17ER1nonWtCZbPaT1noPcMqfeNwI1liVXOidbkwnWtCZbPaT16QAZ=oDDHC9YuKRiNwDDFiVXOidblED4u4BeuaT1nC9YuKRiNwAdkmI5EwxAsiHdNqtbkwx4u4BeuaT3.wx0O49cNwDDG4HYu4bbkwx4u4BeuaT3.2=.Ewx.u4HcOqdWuaHblE=.E2D.u4HcOqdWuaHblE=.E2=.E2D0vqRjMadbkidgsiHAnohcOKRbEidgsiHAnoHetqR0uanWtAnDFWcbEidgsiHAnoHetqydNq9eNCRcMqDDEixbPq7eNwD0vq1jNC9bmKX1no9jMCxYsiT3.2=.E2=.EwPcMqfeNwDDN4JYuaNbkwVBf06c6eUhcmn17ER9euT1noxYNKHeNaT1noPcMqfeNwI.E2=1no1cNCVfOa9eNCT3.wx.tCxgNwI3'
 
-    fname="test_930.xml"
+    fname=os.path.join(self.workdir, "test_930.xml")
     with open(fname,"wb") as f:
       f.write( pilot.FromBase64Swig(content_of_file) )