X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=bin%2Fappliskel%2Fsalome_tester%2Fsalome_instance.py;h=3653d14a94e0c11d89ec52ac20508c169ebe9a3f;hb=a7e425483b5eb6a0491cbad5ef63cc67ccf64f7c;hp=76bd6666276f4eaa40ca035b036e6d34d44713f6;hpb=718e0abe0126e5e53b3ba41fff1028efcf5bc887;p=modules%2Fkernel.git diff --git a/bin/appliskel/salome_tester/salome_instance.py b/bin/appliskel/salome_tester/salome_instance.py index 76bd66662..3653d14a9 100644 --- a/bin/appliskel/salome_tester/salome_instance.py +++ b/bin/appliskel/salome_tester/salome_instance.py @@ -1,4 +1,4 @@ -# Copyright (C) 2015-2016 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2015-2017 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -34,31 +34,34 @@ class SalomeInstance(object): # @staticmethod - def start(shutdown_servers=False): + def start(shutdown_servers=False, with_gui=False, args=[]): import tempfile - log = tempfile.NamedTemporaryFile(suffix='_nsport.log', delete=False) + log = tempfile.NamedTemporaryFile(suffix='_nsport', delete=True) + port_log = log.name log.close() - + port_log = port_log + "-%s.log"%(os.getpid()) instance_args = [ - "--ns-port-log=%s"%log.name, + "--ns-port-log=%s"%port_log, "--shutdown-servers=%d"%shutdown_servers - ] + ] + args + salome_instance = SalomeInstance() - salome_instance.__run(args=instance_args) + salome_instance.__run(args=instance_args, with_gui=with_gui) - with open(log.name) as f: + with open(port_log) as f: salome_instance.port = int(f.readline()) - os.remove(log.name) + os.remove(port_log) return salome_instance # - def __run(self, args=None): + def __run(self, args=None, with_gui=False): if args is None: args = [] + sys.argv = ['runSalome'] + args - if "INGUI" in args: + if with_gui: # :WARNING: NOT TESTED YET sys.argv += ["--gui"] sys.argv += ["--show-desktop=1"] @@ -76,13 +79,14 @@ class SalomeInstance(object): import runSalome runSalome.runSalome() - import salome - salome.salome_init() - session_server = salome.naming_service.Resolve('/Kernel/Session') - if session_server: - session_server.emitMessage("connect_to_study") - session_server.emitMessage("activate_viewer/ParaView") - pass + if not with_gui: + import salome + salome.salome_init() + session_server = salome.naming_service.Resolve('/Kernel/Session') + if session_server: + session_server.emitMessage("connect_to_study") + session_server.emitMessage("activate_viewer/ParaView") + pass # def stop(self): @@ -99,11 +103,11 @@ class SalomeInstance(object): # if __name__ == "__main__": - print "##### Start instance..." + print("##### Start instance...") salome_instance = SalomeInstance.start() port = salome_instance.get_port() - print "##### ...instance started on port %s"%port + print("##### ...instance started on port %s"%port) - print "##### Terminate instance running on port %s"%port + print("##### Terminate instance running on port %s"%port) salome_instance.stop() #