class SmtpMock::Server::Process
Constants
- SIGKILL
- SIGNULL
- SIGTERM
- TMP_LOG_PATH
- WARMUP_DELAY
Public Class Methods
alive?(pid)
click to toggle source
# File lib/smtp_mock/server/process.rb, line 21 def alive?(pid) ::Process.kill(SmtpMock::Server::Process::SIGNULL, pid) true rescue ::Errno::ESRCH false end
create(command)
click to toggle source
# File lib/smtp_mock/server/process.rb, line 13 def create(command) pid = ::Process.spawn(command, err: err_log) ::Kernel.sleep(SmtpMock::Server::Process::WARMUP_DELAY) error_context = ::IO.readlines(err_log)[0] raise SmtpMock::Error::Server, error_context.strip if error_context pid end
kill(signal_number, pid)
click to toggle source
# File lib/smtp_mock/server/process.rb, line 28 def kill(signal_number, pid) ::Process.detach(pid) ::Process.kill(signal_number, pid) true rescue ::Errno::ESRCH false end
Private Class Methods
err_log()
click to toggle source
# File lib/smtp_mock/server/process.rb, line 38 def err_log @err_log ||= ::File.expand_path(SmtpMock::Server::Process::TMP_LOG_PATH, ::File.dirname(__FILE__)) end