module SmtpMock::Dependency

Constants

BINARY_SHORTCUT
VERSION_REGEX_PATTERN

Public Class Methods

compose_command(command_line_args) click to toggle source
# File lib/smtp_mock/dependency.rb, line 25
def compose_command(command_line_args)
  "#{SmtpMock::Dependency::BINARY_SHORTCUT} #{command_line_args}".strip
end
smtpmock?() click to toggle source
# File lib/smtp_mock/dependency.rb, line 14
def smtpmock?
  !smtpmock_path_by_symlink.empty?
end
verify_dependencies() click to toggle source
# File lib/smtp_mock/dependency.rb, line 18
def verify_dependencies
  raise SmtpMock::Error::Dependency, SmtpMock::Error::Dependency::SMTPMOCK_NOT_INSTALLED unless smtpmock?
  current_version = version
  raise SmtpMock::Error::Dependency, SmtpMock::Error::Dependency::SMTPMOCK_MIN_VERSION unless minimal_version?(current_version)
  current_version
end

Private Class Methods

minimal_version?(current_version) click to toggle source
# File lib/smtp_mock/dependency.rb, line 38
def minimal_version?(current_version)
  !!current_version && current_version >= SmtpMock::SMTPMOCK_MIN_VERSION
end
version() click to toggle source
# File lib/smtp_mock/dependency.rb, line 31
def version
  ::Kernel.public_send(
    :`,
    "#{SmtpMock::Dependency::BINARY_SHORTCUT} -v"
  )[SmtpMock::Dependency::VERSION_REGEX_PATTERN, 1]
end