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