HCE Project Python language Distributed Tasks Manager Application, Distributed Crawler Application and client API bindings.  2.0.0-chaika
Hierarchical Cluster Engine Python language binding
ftest_ResourcesStateMonitor.py
Go to the documentation of this file.
1 '''
2 HCE project, Python bindings, Distributed Tasks Manager application.
3 ResourcesStateMonitor object functional tests.
4 
5 @package: dtm
6 @author bgv bgv.hce@gmail.com
7 @link: http://hierarchical-cluster-engine.com/
8 @copyright: Copyright © 2013-2014 IOIX Ukraine
9 @license: http://hierarchical-cluster-engine.com/license/
10 @since: 0.1
11 '''
12 
13 
14 import ConfigParser
15 import logging
16 import logging.config
17 import os
18 import time
19 import sys
20 
21 from app.BaseServerManager import BaseServerManager
23 from transport.ConnectionBuilderLight import ConnectionBuilderLight
24 
25 import dtm.Constants as DTM_CONSTS
26 import transport.Consts as TRANSPORT_CONSTS
27 
28 
29 #Logger init
30 if __name__ == "__main__":
31  logger = logging.getLogger(DTM_CONSTS.LOGGER_NAME)
32  ch = logging.StreamHandler(sys.stdout)
33  ch.setLevel(logging.DEBUG)
34  logger.setLevel(logging.DEBUG)
35  formatter = logging.Formatter('%(asctime)s - %(thread)ld - %(threadName)s - %(name)s - %(funcName)s - %(levelname)s - %(message)s')
36  ch.setFormatter(formatter)
37  logger.addHandler(ch)
38  #logging.config.fileConfig('/home/bgv/workspace_py/zmq_test/src/0/log1.cfg')
39 
40 
41 
42 
43  TEST_TITLE = "Test "
44  TEST_TITLE_OBJECT = " object:\n"
45  TTL = 7
46 
47  #Test ExecutionEnvironmentManager instantiation
48  CONFIG_SECTION = "ResourcesStateMonitor"
49  config = ConfigParser.RawConfigParser()
50  config.add_section(CONFIG_SECTION)
51  config.set(CONFIG_SECTION, "clientResourcesManager", "ResourcesManager")
52  config.set(CONFIG_SECTION, "HCENodeAdminTimeout", "10000")
53  config.set(CONFIG_SECTION, "PollingTimeout", "5000")
54  config.set(CONFIG_SECTION, "FetchResourcesStateDRCEJsonFile", "../../ini/res_fetch_drce.json")
55  config.set(CONFIG_SECTION, "HCEClusterSchemaFile", "../../ini/hce_cluster_schema.json")
56 
57 
58  print os.path.abspath(os.curdir)
59 
60  connectionBuilderLight = ConnectionBuilderLight()
61 
62  #Admin server connection sumulator
63  adminServerConnection = connectionBuilderLight.build(TRANSPORT_CONSTS.SERVER_CONNECT,
64  BaseServerManager.ADMIN_CONNECT_ENDPOINT)
65  #ResourceManager object server connection simulator
66  resourceManagerConnection = connectionBuilderLight.build(TRANSPORT_CONSTS.SERVER_CONNECT, "ResourcesManager")
67 
68  #time.sleep(1)
69 
70  #Create instance
72 
73  print TEST_TITLE + rsm.__class__.__name__ + TEST_TITLE_OBJECT, vars(rsm)
74 
75  rsm.setName(rsm.__class__.__name__)
76  rsm.start()
77 
78  time.sleep(TTL)
79 
80  rsm.exit_flag = True
81 
82  print "Stopped after" + str(TTL) + " sec of run!"
Class hides routines of bulding connection objects.