def _test__sd_notify(self, getenv_mock, unset_env=False): self.ready = False self.closed = False class FakeSocket(object): def __init__(self, family, type): pass def connect(fs, socket): pass def close(fs): self.closed = True def sendall(fs, data): if data == b'READY=1': self.ready = True with mock.patch.object(socket, 'socket', new=FakeSocket): if unset_env: systemd.notify_once() else: systemd.notify() self.assertTrue(self.ready) self.assertTrue(self.closed)
def test_sd_notify(self): self.ready = False def mock_getenv(key): return '@fake_socket' def mock_socket(cls, *args): class FakeSocket(object): def connect(fs, socket): pass def close(fs): pass def sendall(fs, data): if (data == 'READY=1'): self.ready = True return FakeSocket() self.stubs.Set(os, 'getenv', mock_getenv) self.stubs.Set(socket, 'socket', mock_socket) systemd.notify() self.assertEqual(self.ready, True)