-#!/usr/bin/env python
-# Copyright (C) 2006-2016 CEA/DEN, EDF R&D
+#!/usr/bin/env python3
+# Copyright (C) 2006-2024 CEA, EDF
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
import time
import unittest
import threading
+import tempfile
+import os
import SALOMERuntime
import loader
def setUp(self):
SALOMERuntime.RuntimeSALOME_setRuntime(1)
+ self.workdir = tempfile.mkdtemp(suffix=".yacstest")
pass
def test0_saveAndExec(self):
l = loader.YACSLoader()
e = pilot.ExecutorSwig()
for schema in schemaList:
+ print(schema)
fileOrig = "samples/" + schema + ".xml"
- saveSchema1 = "schema1_" + schema
- dumpSchema1 = "dump1_" + schema
- saveSchema2 = "schema2_" + schema
- dumpSchema2 = "dump2_" + schema
+ saveSchema1 = os.path.join(self.workdir, "schema1_" + schema)
+ dumpSchema1 = os.path.join(self.workdir, "dump1_" + schema)
+ saveSchema2 = os.path.join(self.workdir, "schema2_" + schema)
+ dumpSchema2 = os.path.join(self.workdir, "dump2_" + schema)
try:
p = l.load(fileOrig)
s = pilot.SchemaSave(p)
pass
if __name__ == '__main__':
+ import salome
+ import NamingService
import os
- U = os.getenv('USER')
- with open("/tmp/" + U + "/UnitTestsResult", 'a') as f:
+ import subprocess
+ salome.salome_init()
+ ior = NamingService.NamingService.IOROfNS()
+ p = subprocess.Popen(["../yacsloader/echoSrv",ior])
+ import time
+ time.sleep(3)
+ with tempfile.TemporaryDirectory(suffix=".yacstest") as dir_test:
+ file_test = os.path.join(dir_test,"UnitTestsResult")
+ with open(file_test, 'a') as f:
f.write(" --- TEST src/yacsloader: testSave.py\n")
suite = unittest.makeSuite(TestSave)
result=unittest.TextTestRunner(f, descriptions=1, verbosity=1).run(suite)
+ p.terminate()
sys.exit(not result.wasSuccessful())