Salome HOME
Join modifications from BR_Dev_For_4_0 tag V4_1_1.
[modules/kernel.git] / src / LifeCycleCORBA_SWIG / Test / TestLifeCycleCORBA_SWIG.py
1 #
2 #  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
3 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
4
5 #  This library is free software; you can redistribute it and/or 
6 #  modify it under the terms of the GNU Lesser General Public 
7 #  License as published by the Free Software Foundation; either 
8 #  version 2.1 of the License. 
9
10 #  This library is distributed in the hope that it will be useful, 
11 #  but WITHOUT ANY WARRANTY; without even the implied warranty of 
12 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
13 #  Lesser General Public License for more details. 
14
15 #  You should have received a copy of the GNU Lesser General Public 
16 #  License along with this library; if not, write to the Free Software 
17 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
18
19 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 #
21 #
22 #
23 #  File   : TestLifeCycleCORBA_SWIG.py
24 #  Author : Paul RASCLE, EDF
25 #  Module : SALOME
26 #  $Header$
27
28
29 import sys, os,signal,string,commands
30 import runSalome
31 import setenv
32 import orbmodule
33 import TestKiller
34 import addToKillList
35
36 # get SALOME environment :
37
38 args, modules_list, modules_root_dir = setenv.get_config()
39 setenv.set_env(args, modules_list, modules_root_dir)
40
41 # set environment for trace in logger
42 # (with file, servers may be killed before the write to the file...)
43
44 #os.environ["SALOME_trace"] = "file:/tmp/traceUnitTest.log"
45 #os.environ["SALOME_trace"] = "local"
46 os.environ["SALOME_trace"] = "with_logger"
47
48 # launch CORBA naming server
49
50 clt=orbmodule.client()
51
52 # launch CORBA logger server
53
54 myServer=runSalome.LoggerServer(args)
55 myServer.run()
56 clt.waitLogger("Logger")
57
58 # launch notify server
59
60 myServer=runSalome.NotifyServer(args,modules_root_dir)
61 myServer.run()
62
63 # launch registry server
64
65 myServer=runSalome.RegistryServer(args)
66 myServer.run()
67 clt.waitNS("/Registry")
68
69 # launch module catalog server
70
71 cataServer=runSalome.CatalogServer(args)
72 cataServer.setpath(modules_list,modules_root_dir)
73 cataServer.run()
74 clt.waitNS("/Kernel/ModulCatalog")
75
76 # launch container manager server
77
78 myCmServer = runSalome.LauncherServer(args)
79 myCmServer.setpath(modules_list,modules_root_dir)
80 myCmServer.run()
81 clt.waitNS("/SalomeLauncher")
82
83 # execute Unit Test
84
85 command = ['TestLifeCycleCORBA']
86 ret = os.spawnvp(os.P_WAIT, command[0], command)
87
88 import LifeCycleCORBA_SWIGTest
89 import unittest
90 unittest.TextTestRunner(verbosity=2).run(LifeCycleCORBA_SWIGTest.suite())
91
92 # kill containers created by the Container Manager
93
94 import Engines
95 launcher = clt.waitNS("/SalomeLauncher",Engines.SalomeLauncher)
96 launcher.Shutdown()
97
98 # kill Test process
99
100 addToKillList.killList()
101
102 TestKiller.killProcess(runSalome.process_id)