def test_loop_reload_pidchange_signals(self, open_mock, process_mock, sleep_mock): proc1 = MagicMock() proc2 = MagicMock() proc1.pid = 123 proc2.pid = 456 h = Herder() open_mock.return_value.read.return_value = '123\n' process_mock.return_value = proc1 ret = h._loop_inner() assert_equal(ret, True) # Simulate SIGHUP h._handle_HUP(signal.SIGHUP, None) open_mock.return_value.read.return_value = '456\n' process_mock.return_value = proc2 ret = h._loop_inner() assert_equal(ret, True) sleep_mock.assert_any_call(120) # Check for the default overlap expected_calls = [call.send_signal(signal.SIGUSR2), call.send_signal(signal.SIGWINCH), call.send_signal(signal.SIGQUIT)] assert_equal(proc1.mock_calls, expected_calls)
def test_loop_reload_pidchange_signals(self, open_mock, process_mock, sleep_mock): proc1 = MagicMock() proc2 = MagicMock() proc1.pid = 123 proc2.pid = 456 h = Herder() open_mock.return_value.read.return_value = '123\n' process_mock.return_value = proc1 ret = h._loop_inner() assert_equal(ret, True) # Simulate SIGHUP h._handle_HUP(signal.SIGHUP, None) open_mock.return_value.read.return_value = '456\n' process_mock.return_value = proc2 ret = h._loop_inner() assert_equal(ret, True) expected_calls = [ call.send_signal(signal.SIGUSR2), call.send_signal(signal.SIGWINCH), call.send_signal(signal.SIGQUIT) ] assert_equal(proc1.mock_calls, expected_calls)
def test_configurable_overlap(self, open_mock, process_mock, sleep_mock): h = Herder(overlap=17) # Set up an initial dummy master process for the herder to kill later open_mock.return_value.read.return_value = '123\n' process_mock.return_value = MagicMock(pid=123) h._loop_inner() # Simulate a reloaded Unicorn open_mock.return_value.read.return_value = '456\n' process_mock.return_value = MagicMock(pid=456) # Simulate SIGHUP, so the Herder thinks it's reloading h._handle_HUP(signal.SIGHUP, None) h._loop_inner() sleep_mock.assert_any_call(17)
def test_configurable_overlap(self, open_mock, process_mock, sleep_mock): h = Herder(overlap=17) # Set up an initial dummy master process for the herder to kill later open_mock.return_value.read.return_value = '123\n' process_mock.return_value = MagicMock(pid=123) h._loop_inner() # Simulate a reloaded Unicorn open_mock.return_value.read.return_value = '456\n' process_mock.return_value = MagicMock(pid=456) # Simulate SIGHUP, so the Herder thinks it's reloading h._handle_HUP(signal.SIGHUP, None) h._loop_inner() sleep_mock.assert_any_call(17)
def test_handle_hup_nomaster(self): h = Herder() h._handle_HUP(signal.SIGHUP, None)
def test_handle_hup_nomaster(self): h = Herder() h._handle_HUP(signal.SIGHUP, None)