class GemMonitor::GemObject

Constants

LATEST_VERSION_ERRORS

Attributes

latest_version[RW]
name[RW]
project_version[RW]

Public Class Methods

new(args = {}) click to toggle source
# File lib/gem_monitor/gem_object.rb, line 12
def initialize(args = {})
  self.name = args.fetch(:name, "")
  self.project_version = args.fetch(:project_version, "")
end

Public Instance Methods

output_html_class() click to toggle source

TODO: maybe move this to a decorator but debating into

adding another run dependency.
# File lib/gem_monitor/gem_object.rb, line 19
def output_html_class
  return "red" if latest_version_error?
  project_version < latest_version ? "red" : "green"
end
output_latest_version() click to toggle source
# File lib/gem_monitor/gem_object.rb, line 28
def output_latest_version
  latest_version_error? ? latest_version_error_message : latest_version
end
output_project_version() click to toggle source
# File lib/gem_monitor/gem_object.rb, line 24
def output_project_version
  project_version.empty? ? project_version_error_message : project_version
end

Private Instance Methods

get_gem_latest_version() click to toggle source
# File lib/gem_monitor/gem_object.rb, line 47
def get_gem_latest_version
  GemMonitor::Service.get_latest_version_for name
end
latest_version_error?() click to toggle source
# File lib/gem_monitor/gem_object.rb, line 34
def latest_version_error?
  return true if LATEST_VERSION_ERRORS.include? latest_version
  false
end
latest_version_error_message() click to toggle source
# File lib/gem_monitor/gem_object.rb, line 39
def latest_version_error_message
  "Something went wrong checking the latest version for #{name} gem"
end
project_version_error_message() click to toggle source
# File lib/gem_monitor/gem_object.rb, line 43
def project_version_error_message
  "Something went wrong finding the project version for #{name} gem"
end