Salome HOME
PR: merge from branch BR_UnitTests tag mergeto_trunk_17oct05
[modules/yacs.git] / src / LifeCycleCORBA / Test / TestLifeCycleCORBA.py
1
2 import sys, os,signal,string,commands
3 import runSalome
4 import orbmodule
5 import TestKiller
6
7 # get SALOME environment :
8
9 args, modules_list, modules_root_dir = runSalome.get_config()
10 runSalome.set_env(args, modules_list, modules_root_dir)
11
12 # set environment for trace in logger
13 # (with file, servers may be killed before the write to the file...)
14
15 #os.environ["SALOME_trace"] = "file:/tmp/traceUnitTest.log"
16 #os.environ["SALOME_trace"] = "local"
17 os.environ["SALOME_trace"] = "with_logger"
18
19 # launch CORBA naming server
20
21 clt=orbmodule.client()
22
23 # launch CORBA logger server
24
25 myServer=runSalome.LoggerServer(args)
26 myServer.run()
27 clt.waitLogger("Logger")
28
29 # launch notify server
30
31 myServer=runSalome.NotifyServer(args,modules_root_dir)
32 myServer.run()
33
34 # launch registry server
35
36 myServer=runSalome.RegistryServer(args)
37 myServer.run()
38 clt.waitNS("/Registry")
39
40 # launch module catalog server
41
42 cataServer=runSalome.CatalogServer(args)
43 cataServer.setpath(modules_list,modules_root_dir)
44 cataServer.run()
45 clt.waitNS("/Kernel/ModulCatalog")
46
47 # launch container manager server
48
49 myCmServer = runSalome.ContainerManagerServer(args)
50 myCmServer.setpath(modules_list,modules_root_dir)
51 myCmServer.run()
52 clt.waitNS("/ContainerManager")
53
54 # execute Unit Test
55
56 command = ['TestLifeCycleCORBA']
57 ret = os.spawnvp(os.P_WAIT, command[0], command)
58
59 # kill containers created by the Container Manager
60
61 import Engines
62 containerManager = clt.waitNS("/ContainerManager",Engines.ContainerManager)
63 containerManager.Shutdown()
64
65 # kill Test process 
66
67 TestKiller.killProcess(runSalome.process_id)