def test_with_locked_pidfile(self, open, geteuid, maybe_drop, signals, pidlock, Pidfile): context = detached(pidfile='/foo/bar/pid') p = Pidfile.return_value p.is_locked.return_value = True assert isinstance(context, DaemonContext) assert context.after_chdir with pytest.raises(SystemExit): context.after_chdir() Pidfile.assert_called_with('/foo/bar/pid') p.is_locked.assert_called_once() pidlock.assert_not_called()
def test_default(self, open, geteuid, maybe_drop, signals, pidlock, Pidfile): geteuid.return_value = 0 context = detached(uid='user', gid='group') assert isinstance(context, DaemonContext) signals.reset.assert_called_with('SIGCLD') maybe_drop.assert_called_with(uid='user', gid='group') open.return_value = Mock() geteuid.return_value = 5001 context = detached(uid='user', gid='group', logfile='/foo/bar') assert isinstance(context, DaemonContext) assert context.after_chdir context.after_chdir() open.assert_called_with('/foo/bar', 'a') open.return_value.close.assert_called_with() context = detached(pidfile='/foo/bar/pid') assert isinstance(context, DaemonContext) assert context.after_chdir context.after_chdir() Pidfile.assert_called_with('/foo/bar/pid') Pidfile.return_value.acquire.assert_not_called() pidlock.assert_not_called()