class Hiptest::VersionChecker

Attributes

reporter[R]

Public Class Methods

check_version(reporter: nil) click to toggle source
# File lib/hiptest-publisher/version_checker.rb, line 8
def self.check_version(reporter: nil)
  reporter ||= Reporter.new

  VersionChecker.new(reporter).check_version
end
new(reporter) click to toggle source
# File lib/hiptest-publisher/version_checker.rb, line 14
def initialize(reporter)
  @reporter = reporter
end

Public Instance Methods

check_version() click to toggle source
# File lib/hiptest-publisher/version_checker.rb, line 18
def check_version
  latest = get_latest_version
  return if latest.nil?

  current = hiptest_publisher_version

  if latest == current
    puts I18n.t('check_version.up_to_date', current: current)
  else
    puts I18n.t('check_version.outdated', current: current, latest: latest)
  end
end
get_latest_version() click to toggle source
# File lib/hiptest-publisher/version_checker.rb, line 31
def get_latest_version
  reporter.with_status_message I18n.t('check_version.title') do
    latest_gem = Gem.latest_version_for('hiptest-publisher')

    raise RuntimeError, I18n.t('check_version.error') if latest_gem.nil?

    latest = latest_gem.version
  end
end