class RemindMe::Reminder::GemVersionReminder

Public Instance Methods

conditions_met?() click to toggle source
# File lib/remind_me/reminder/gem_version_reminder.rb, line 19
def conditions_met?
  target_version = hash_version
  # if no version is specified, look for any version
  if target_version.nil? || target_version.empty?
    gem_installed?(hash_gem)
  else
    return false unless INSTALLED_GEMS[hash_gem]

    condition = hash_condition
    target_gem_version = Gem::Version.new(target_version)
    installed_gem_version = INSTALLED_GEMS[hash_gem]
    compare_version_numbers(target_gem_version, installed_gem_version, condition.to_sym)
  end
end
validation_errors() click to toggle source
# File lib/remind_me/reminder/gem_version_reminder.rb, line 34
def validation_errors
  errors = super
  errors << gem_missing_message unless gem_installed?(hash_gem)
  errors << invalid_condition_message(source_location, hash_condition) unless valid_condition?(hash_condition)
  errors << malformed_version_string_message unless valid_version_string?(hash_version)
  errors
end

Private Instance Methods

gem_missing_message() click to toggle source
# File lib/remind_me/reminder/gem_version_reminder.rb, line 44
def gem_missing_message
  "REMIND_ME comment in #{source_location} mentions '#{hash_gem}' gem, but that gem is not installed"
end
malformed_version_string_message() click to toggle source
# File lib/remind_me/reminder/gem_version_reminder.rb, line 48
def malformed_version_string_message
  "REMIND_ME comment in #{source_location} mentions '#{hash_gem}' gem, but version specified: '#{hash_version}'"\
  ' is not proper version string'
end