Commit f7e30123 authored by Mukund Sivaraman's avatar Mukund Sivaraman
Browse files

[2353] Make DummySession() return a real message in group_recvmsg()

parent 4f806512
......@@ -1649,16 +1649,33 @@ class TestBossComponents(unittest.TestCase):
def test_start_cfgmgr(self):
'''Test that b10-cfgmgr is started.'''
class DummySession():
def __init__(self):
self._tries = 0
def group_recvmsg(self):
return (None, None)
self._tries += 1
# return running on the 3rd try onwards
if self._tries >= 3:
return ({'running': 'ConfigManager'}, None)
else:
return ({}, None)
bob = MockBobSimple()
bob.c_channel_env = {}
bob.cc_session = DummySession()
bob.run_under_unittests = True
bob.run_under_unittests = False
bob.wait_time = 5
# use the MockProcessInfo creator
bob._make_process_info = bob._make_mock_process_info
global attempts
attempts = 0
self._tmp_sleep = time.sleep
def _my_sleep(nsec):
global attempts
attempts += 1
time.sleep = _my_sleep
# defaults
pi = bob.start_cfgmgr()
self.assertEqual('b10-cfgmgr', pi.name)
......@@ -1668,6 +1685,10 @@ class TestBossComponents(unittest.TestCase):
# this is set by ProcessInfo.spawn()
self.assertEqual(42147, pi.pid)
# check that 2 attempts were made. on the 3rd attempt,
# process_running() returns that ConfigManager is running.
self.assertEqual(attempts, 2)
# data_path is specified
bob.data_path = '/var/lib/test'
pi = bob.start_cfgmgr()
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment