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
tests.test_dtm_ClientInterfaceService.TestClientInterfaceService Class Reference
Inheritance diagram for tests.test_dtm_ClientInterfaceService.TestClientInterfaceService:
Collaboration diagram for tests.test_dtm_ClientInterfaceService.TestClientInterfaceService:

Public Member Functions

def setUp (self)
 
def tearDown (self)
 
def test_reading_config_params (self)
 
def test_route_event_to_taskManager (self)
 
def test_route_event_to_eeManager (self)
 
def test_route_response_events (self)
 
def test_add_process_event (self)
 
def test_drop_process_event (self)
 
def test_supress_keyerror_exception (self)
 

Public Attributes

 config
 
 eventBuilder
 
 tcpAddr
 
 connectionBuilderLight
 
 taskFakeServer
 
 eeFakeServer
 
 adminServerFake
 
 clientInterfaceService
 

Detailed Description

Definition at line 20 of file test_dtm_ClientInterfaceService.py.

Member Function Documentation

◆ setUp()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.setUp (   self)

Definition at line 23 of file test_dtm_ClientInterfaceService.py.

23  def setUp(self):
24  self.config = ConfigParser.RawConfigParser()
25  self.eventBuilder = EventBuilder()
26  addr = "127.0.0.1"
27  port = 8899
28  self.tcpAddr = "127.0.0.1:8899"
29  self.config.add_section(CONFIG_SECTION)
30  self.config.set(CONFIG_SECTION, "serverHost", addr)
31  self.config.set(CONFIG_SECTION, "serverPort", port)
32  self.config.set(CONFIG_SECTION, "clientTaskManager", "TaskManager")
33  self.config.set(CONFIG_SECTION, "clientExecutionEnvironmentManager", "ExecutionEnvironmentManager")
34 
35  self.connectionBuilderLight = ConnectionBuilderLight()
36  self.taskFakeServer = self.connectionBuilderLight.build(tr_const.SERVER_CONNECT, "TaskManager")
37  self.eeFakeServer = self.connectionBuilderLight.build(tr_const.SERVER_CONNECT, "ExecutionEnvironmentManager")
38  self.adminServerFake = self.connectionBuilderLight.build(tr_const.SERVER_CONNECT, BaseServerManager.ADMIN_CONNECT_ENDPOINT)
39 
40  self.clientInterfaceService = None
41 
42 

◆ tearDown()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.tearDown (   self)

Definition at line 43 of file test_dtm_ClientInterfaceService.py.

43  def tearDown(self):
44  self.taskFakeServer.close()
45  self.eeFakeServer.close()
46  self.adminServerFake.close()
47  self.clientInterfaceService.connections[self.clientInterfaceService.server].close()
48 
49 

◆ test_add_process_event()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_add_process_event (   self)

Definition at line 124 of file test_dtm_ClientInterfaceService.py.

124  def test_add_process_event(self):
125  self.clientInterfaceService = ClientInterfaceService(self.config, self.connectionBuilderLight)
126 
127  event = self.eventBuilder.build(EVENT_TYPES.NEW_TASK, "data obj")
128  event.connect_identity = "1234"
129  event.connect_name = "testName"
130 
131  self.clientInterfaceService.process(event)
132 
133  self.assertEqual(len(self.clientInterfaceService.processEvents), 1, "")
134  process_event = self.clientInterfaceService.processEvents[event.uid]
135  self.assertEqual(process_event.connect_identity, "1234", "")
136  self.assertEqual(process_event.connect_name, "testName", "")
137  self.assertEqual(process_event.eventObj, None, "")
138 
139 
140 

◆ test_drop_process_event()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_drop_process_event (   self)

Definition at line 141 of file test_dtm_ClientInterfaceService.py.

141  def test_drop_process_event(self):
142  self.clientInterfaceService = ClientInterfaceService(self.config, self.connectionBuilderLight)
143 
144  event = self.eventBuilder.build(EVENT_TYPES.NEW_TASK, "data obj")
145  self.clientInterfaceService.process(event)
146  self.clientInterfaceService.unregisteEvent(event)
147 
148  self.assertEqual(len(self.clientInterfaceService.processEvents), 0, "")
149 
150 

◆ test_reading_config_params()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_reading_config_params (   self)

Definition at line 50 of file test_dtm_ClientInterfaceService.py.

50  def test_reading_config_params(self):
51  connectBuilder_mock = MagicMock(spec = ConnectionBuilderLight)
52 
53  self.clientInterfaceService = ClientInterfaceService(self.config, connectBuilder_mock)
54  expect_connect_calls = [call.build(tr_const.SERVER_CONNECT, self.tcpAddr, tr_const.TCP_TYPE),
55  call.build(tr_const.CLIENT_CONNECT, 'TaskManager'),
56  call.build(tr_const.CLIENT_CONNECT, 'ExecutionEnvironmentManager')]
57 
58  self.assertEqual(expect_connect_calls, connectBuilder_mock.mock_calls, "config parsing is failed")
59 
60 

◆ test_route_event_to_eeManager()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_route_event_to_eeManager (   self)

Definition at line 82 of file test_dtm_ClientInterfaceService.py.

82  def test_route_event_to_eeManager(self):
83  taskManager_mock = MagicMock()
84 
85  transport_events = [EVENT_TYPES.CHECK_TASK_STATE, EVENT_TYPES.FETCH_TASK_RESULTS]
86 
87  self.clientInterfaceService = ClientInterfaceService(self.config, self.connectionBuilderLight)
88 
89  #change handler
90  for evntHandler in self.clientInterfaceService.event_handlers:
91  if self.clientInterfaceService.event_handlers[evntHandler] == self.clientInterfaceService.onEEManagerRoute:
92  self.clientInterfaceService.event_handlers[evntHandler] = taskManager_mock
93 
94  for eventType in transport_events:
95  event = self.eventBuilder.build(eventType, "data obj")
96  self.clientInterfaceService.process(event)
97 
98  self.assertEqual(len(transport_events), taskManager_mock.call_count, "")
99 
100 
101 

◆ test_route_event_to_taskManager()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_route_event_to_taskManager (   self)

Definition at line 61 of file test_dtm_ClientInterfaceService.py.

61  def test_route_event_to_taskManager(self):
62  taskManager_mock = MagicMock()
63 
64  transport_events = [EVENT_TYPES.NEW_TASK, EVENT_TYPES.UPDATE_TASK, EVENT_TYPES.GET_TASK_STATUS,
65  EVENT_TYPES.FETCH_RESULTS_CACHE, EVENT_TYPES.DELETE_TASK]
66 
67  self.clientInterfaceService = ClientInterfaceService(self.config, self.connectionBuilderLight)
68 
69  #change handler
70  for evntHandler in self.clientInterfaceService.event_handlers:
71  if self.clientInterfaceService.event_handlers[evntHandler] == self.clientInterfaceService.onTaskManagerRoute:
72  self.clientInterfaceService.event_handlers[evntHandler] = taskManager_mock
73 
74  for eventType in transport_events:
75  event = self.eventBuilder.build(eventType, "data obj")
76  self.clientInterfaceService.process(event)
77 
78  self.assertEqual(len(transport_events), taskManager_mock.call_count, "")
79 
80 
81 

◆ test_route_response_events()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_route_response_events (   self)

Definition at line 102 of file test_dtm_ClientInterfaceService.py.

102  def test_route_response_events(self):
103  taskManager_mock = MagicMock()
104 
105  transport_events = [EVENT_TYPES.NEW_TASK_RESPONSE, EVENT_TYPES.UPDATE_TASK_RESPONSE,
106  EVENT_TYPES.CHECK_TASK_STATE_RESPONSE, EVENT_TYPES.GET_TASK_STATUS_RESPONSE,
107  EVENT_TYPES.FETCH_TASK_RESULTS_RESPONSE, EVENT_TYPES.DELETE_TASK_RESPONSE]
108 
109  self.clientInterfaceService = ClientInterfaceService(self.config, self.connectionBuilderLight)
110 
111  #change handler
112  for evntHandler in self.clientInterfaceService.event_handlers:
113  if self.clientInterfaceService.event_handlers[evntHandler] == self.clientInterfaceService.onDTMClientRoute:
114  self.clientInterfaceService.event_handlers[evntHandler] = taskManager_mock
115 
116  for eventType in transport_events:
117  event = self.eventBuilder.build(eventType, "data obj")
118  self.clientInterfaceService.process(event)
119 
120  self.assertEqual(len(transport_events), taskManager_mock.call_count, "")
121 
122 
123 

◆ test_supress_keyerror_exception()

def tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.test_supress_keyerror_exception (   self)

Definition at line 151 of file test_dtm_ClientInterfaceService.py.

151  def test_supress_keyerror_exception(self):
152  self.clientInterfaceService = ClientInterfaceService(self.config, self.connectionBuilderLight)
153  event = self.eventBuilder.build(EVENT_TYPES.NEW_TASK, "data obj")
154 
155  self.clientInterfaceService.onDTMClientRoute(event)

Member Data Documentation

◆ adminServerFake

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.adminServerFake

Definition at line 38 of file test_dtm_ClientInterfaceService.py.

◆ clientInterfaceService

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.clientInterfaceService

Definition at line 40 of file test_dtm_ClientInterfaceService.py.

◆ config

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.config

Definition at line 24 of file test_dtm_ClientInterfaceService.py.

◆ connectionBuilderLight

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.connectionBuilderLight

Definition at line 35 of file test_dtm_ClientInterfaceService.py.

◆ eeFakeServer

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.eeFakeServer

Definition at line 37 of file test_dtm_ClientInterfaceService.py.

◆ eventBuilder

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.eventBuilder

Definition at line 25 of file test_dtm_ClientInterfaceService.py.

◆ taskFakeServer

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.taskFakeServer

Definition at line 36 of file test_dtm_ClientInterfaceService.py.

◆ tcpAddr

tests.test_dtm_ClientInterfaceService.TestClientInterfaceService.tcpAddr

Definition at line 28 of file test_dtm_ClientInterfaceService.py.


The documentation for this class was generated from the following file: